{"version":3,"file":"static/js/b5cdc4ef7c33d2480e89.bundle.js","mappings":"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","sources":["webpack://henrys-ecommerce/./src/themes/henrys/views/order-history.view.tsx?81c0","webpack://henrys-ecommerce/./lib/order-history/module-registration.js?e35f","webpack://henrys-ecommerce/./src/modules/fabrikam/views/order-history.view.tsx?a21d","webpack://henrys-ecommerce/./src/actions/get-channels.ts?fd22","webpack://henrys-ecommerce/./src/actions/get-org-unit-locations.ts?0b40","webpack://henrys-ecommerce/./src/actions/get-sales-order-originators.ts?f89a","webpack://henrys-ecommerce/./src/common/expand-button-state.ts?0e6f","webpack://henrys-ecommerce/./src/common/sales-line-state.ts?3828","webpack://henrys-ecommerce/./src/modules/order-history/actions/get-order-shipment-history.ts?b936","webpack://henrys-ecommerce/./src/modules/order-history/components/get-sales-order.tsx?f5c0","webpack://henrys-ecommerce/./src/modules/order-history/components/order-history-filter.tsx?87d0","webpack://henrys-ecommerce/./src/modules/order-history/components/table-view/components/order-history-table-header-component.tsx?48e0","webpack://henrys-ecommerce/./src/modules/order-history/components/table-view/components/order-history-table-row-component.tsx?a93c","webpack://henrys-ecommerce/./src/modules/order-history/components/table-view/order-history-table.tsx?5dd4","webpack://henrys-ecommerce/./src/modules/order-history/order-history.tsx?fd71","webpack://henrys-ecommerce/./src/modules/order-history/order-history.view.tsx?2545","webpack://henrys-ecommerce/./src/modules/adventureworks/views/order-history.view.tsx?692d","webpack://henrys-ecommerce/external var \"React\"?0d3b","webpack://henrys-ecommerce/external var \"ReactDOM\"?853b"],"sourcesContent":["/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHeader,\r\n IList,\r\n IOrderHistoryViewProps,\r\n IOrderInformation,\r\n ISalesOrder\r\n} from '@msdyn365-commerce-modules/order-management';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderHistoryOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n receiptId,\r\n channelName,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId\r\n}) => (\r\n \r\n {channelName}\r\n {salesId}\r\n {receiptId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n {channelReferenceId}\r\n \r\n);\r\n\r\nexport const OrderHistoryGroupDelivery: React.FC = ({\r\n deliveryProps,\r\n heading,\r\n count,\r\n processing,\r\n address,\r\n trackingInfo\r\n}) => (\r\n \r\n {heading}\r\n {count}\r\n {processing}\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderHistoryGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n {salesLine.salesLine}\r\n ))}\r\n \r\n )}\r\n \r\n);\r\n\r\nexport const OrderHistoryGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderHistoryHeader: React.FC = ({ headerProps, heading, orderCountLabel, extraActions }) => (\r\n \r\n {heading}\r\n {orderCountLabel}\r\n {extraActions}\r\n \r\n);\r\n\r\nexport const OrderHistorySalesOder: React.FC = ({\r\n salesOrderProps,\r\n orderInfomation,\r\n groups,\r\n orderDetailsLink,\r\n expandProductsButton\r\n}) => (\r\n \r\n {orderInfomation && }\r\n {groups && }\r\n {expandProductsButton}\r\n {orderDetailsLink}\r\n \r\n);\r\n\r\nexport const OrderHistoryList: React.FC = ({ listProps, salesOrders }) => (\r\n \r\n {salesOrders && salesOrders.map((salesOrder, index) => )}\r\n \r\n);\r\n\r\nconst OrderHistoryView: React.FC = ({\r\n orderHistoryProps,\r\n header,\r\n alert,\r\n loading,\r\n emptyMessage,\r\n backToShoppingLink,\r\n list,\r\n table,\r\n moreButton\r\n}) => (\r\n \r\n {header && }\r\n {loading}\r\n {alert && (\r\n <>\r\n {alert}\r\n {backToShoppingLink}\r\n \r\n )}\r\n {emptyMessage && (\r\n \r\n {emptyMessage}\r\n {backToShoppingLink}\r\n \r\n )}\r\n {list && }\r\n {table}\r\n {moreButton && moreButton}\r\n \r\n);\r\n\r\nexport default OrderHistoryView;\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['order-history'] = {\n c: () => require('@msdyn365-commerce-modules/order-management/dist/lib/modules/order-history/order-history'),\n $type: 'contentModule',\n da: [{name:'channelDeliveryOptionConfig', path:'@msdyn365-commerce-modules/retail-actions/dist/lib/get-channel-delivery-option-configuration', runOn: 0},{name:'channels', path:'@msdyn365-commerce-modules/order-management/dist/lib/actions/get-channels', runOn: 0},{name:'customerInformation', path:'@msdyn365-commerce-modules/retail-actions/dist/lib/get-customer', runOn: 0},{name:'featureState', path:'@msdyn365-commerce-modules/retail-actions/dist/lib/get-feature-state', runOn: 0},{name:'orgUnitLocations', path:'@msdyn365-commerce-modules/order-management/dist/lib/actions/get-org-unit-locations', runOn: 0}],\n \n iNM: true,\n ns: '@msdyn365-commerce-modules',\n n: 'order-history',\n p: 'order-management',\n \n pdp: '',\n \n \n md: 'node_modules/@msdyn365-commerce-modules/order-management/dist/lib/modules/order-history'\n });\n \n\n {\n const sanitizedActionPath = '@msdyn365-commerce-modules/order-management/dist/lib/actions/get-channels';\n let dataAction = require('@msdyn365-commerce-modules/order-management/dist/lib/actions/get-channels');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\n }\n \n\n {\n const sanitizedActionPath = '@msdyn365-commerce-modules/order-management/dist/lib/actions/get-org-unit-locations';\n let dataAction = require('@msdyn365-commerce-modules/order-management/dist/lib/actions/get-org-unit-locations');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\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-customer';\n let dataAction = require('@msdyn365-commerce-modules/retail-actions/dist/lib/get-customer');\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 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|henrys|views|order-history'] = {\n c: () => require('partner/themes/henrys/views/order-history.view.tsx'),\n cn: '__local__-__local__-order-history'\n };\nviewDictionary['@msdyn365-commerce-modules|fabrikam-design-kit|modules|fabrikam|views|order-history'] = {\n c: () => require('@msdyn365-commerce-modules/fabrikam-design-kit/dist/lib/modules/fabrikam/views/order-history.view.js'),\n cn: '@msdyn365-commerce-modules-fabrikam-design-kit-order-history'\n };\nviewDictionary['@msdyn365-commerce-modules|order-management|modules|order-history|order-history'] = {\n c: () => require('@msdyn365-commerce-modules/order-management/dist/lib/modules/order-history/order-history.view.js'),\n cn: '@msdyn365-commerce-modules-order-management-order-history'\n };\nviewDictionary['@msdyn365-commerce-theme|adventureworks-theme-kit|modules|adventureworks|views|order-history'] = {\n c: () => require('@msdyn365-commerce-theme/adventureworks-theme-kit/dist/lib/modules/adventureworks/views/order-history.view.js'),\n cn: '@msdyn365-commerce-theme-adventureworks-theme-kit-order-history'\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 {\n IGroup,\n IGroupDelivery,\n IGroups,\n IHeader,\n IList,\n IOrderHistoryViewProps,\n IOrderInformation,\n ISalesOrder\n} from '@msdyn365-commerce-modules/order-management';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport const OrderHistoryOrderInfomation: React.FC = ({\n orderInformationProps,\n salesId,\n receiptId,\n channelName,\n createdDate,\n count,\n amount,\n channelReferenceId\n}) => (\n \n {channelName}\n {salesId}\n {receiptId}\n {createdDate}\n {count}\n {amount}\n {channelReferenceId}\n \n);\n\nexport const OrderHistoryGroupDelivery: React.FC = ({\n deliveryProps,\n heading,\n count,\n processing,\n address,\n trackingInfo\n}) => (\n \n {heading}\n {count}\n {processing}\n {address}\n {trackingInfo}\n \n);\n\nexport const OrderHistoryGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\n \n {salesLines && (\n \n {salesLines.map(salesLine => (\n {salesLine.salesLine}\n ))}\n \n )}\n \n);\n\nexport const OrderHistoryGroups: React.FC = ({ groupsProps, groups }) => (\n \n {groups.map((group, index) => (\n \n ))}\n \n);\n\nexport const OrderHistoryHeader: React.FC = ({ headerProps, heading, orderCountLabel, extraActions }) => (\n \n {heading}\n {orderCountLabel}\n {extraActions}\n \n);\n\nexport const OrderHistorySalesOder: React.FC = ({\n salesOrderProps,\n orderInfomation,\n groups,\n orderDetailsLink,\n expandProductsButton\n}) => (\n \n {orderInfomation && }\n {groups && }\n {expandProductsButton}\n {orderDetailsLink}\n \n);\n\nexport const OrderHistoryList: React.FC = ({ listProps, salesOrders }) => (\n \n {salesOrders && salesOrders.map((salesOrder, index) => )}\n \n);\n\nconst OrderHistoryView: React.FC = ({\n orderHistoryProps,\n header,\n alert,\n loading,\n emptyMessage,\n backToShoppingLink,\n list,\n table,\n moreButton\n}) => (\n \n {header && }\n {loading}\n {alert && (\n <>\n {alert}\n {backToShoppingLink}\n \n )}\n {emptyMessage && (\n \n {emptyMessage}\n {backToShoppingLink}\n \n )}\n {list && }\n {table}\n {moreButton && moreButton}\n \n);\n\nexport default OrderHistoryView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n CacheType,\n createObservableDataAction,\n IAction,\n IActionContext,\n IActionInput,\n IAny,\n ICommerceApiSettings,\n ICreateActionContext,\n IGeneric\n} from '@msdyn365-commerce/core';\nimport { ChannelIdentity } from '@msdyn365-commerce/retail-proxy';\nimport { getChannelsAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/StoreOperationsDataActions.g';\nimport { buildCacheKey, QueryResultSettingsProxy } from '@msdyn365-commerce-modules/retail-actions';\n\n/**\n * Interface of Channel Identity..\n */\ninterface IChannelIdentity {\n channelIdentities: ChannelIdentity[];\n}\n\n/**\n * Calls the Retail API and returns the channels.\n * @returns - List of channel identity.\n */\nconst getChannels = () => async (ctx: IActionContext): Promise => {\n return getChannelsAsync({\n callerContext: ctx,\n queryResultSettings: QueryResultSettingsProxy.getPagingFromInputDataOrDefaultValue(ctx)\n });\n};\n\n/**\n * Action input.\n */\nexport class GetChannelIdentitiesInput implements IActionInput {\n private readonly apiSettings: ICommerceApiSettings;\n\n constructor(apiSettings: ICommerceApiSettings) {\n this.apiSettings = apiSettings;\n }\n\n public getCacheKey = () => buildCacheKey('ChannelIdentities', this.apiSettings);\n\n public getCacheObjectType = () => 'ChannelIdentities';\n\n public dataCacheType = (): CacheType => 'request';\n}\n\n/**\n * Creates the input required to make the retail api call.\n * @param inputData - Action Data Input.\n * @returns - Input object.\n */\nconst createChannelIdentitiesInput = (inputData: ICreateActionContext>) => {\n return new GetChannelIdentitiesInput(inputData.requestContext.apiSettings);\n};\n\n/**\n * Get channels action.\n * @param input - Input data.\n * @param context - Action context.\n * @returns - Channel Identity.\n */\nexport async function getChannelsAction(input: GetChannelIdentitiesInput, context: IActionContext): Promise {\n if (!context) {\n throw new Error('getChannelsAction - Action context cannot be null/undefined');\n }\n\n let channels: ChannelIdentity[] = [];\n\n try {\n channels = await getChannels()(context);\n } catch (error) {\n throw error;\n }\n\n return { channelIdentities: channels };\n}\n\n/**\n * Get sales order with hydrations action.\n * @param id - Unique Id for data action.\n * @param context - Action context.\n * @param input - Input for data action.\n * @returns Channel api response.\n */\nexport const getChannelsActionDataAction = createObservableDataAction({\n id: '@msdyn365-commerce-modules/order-management/get-channels',\n action: >getChannelsAction,\n input: createChannelIdentitiesInput\n});\n\nexport default getChannelsActionDataAction;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n CacheType,\n createObservableDataAction,\n IAction,\n IActionContext,\n IActionInput,\n IAny,\n ICommerceApiSettings,\n ICreateActionContext,\n IGeneric\n} from '@msdyn365-commerce/core';\nimport { OrgUnitLocation, SearchArea } from '@msdyn365-commerce/retail-proxy';\nimport { getOrgUnitLocationsByAreaAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/OrgUnitsDataActions.g';\nimport { buildCacheKey, QueryResultSettingsProxy } from '@msdyn365-commerce-modules/retail-actions';\n\n/**\n * Interface of Org Unit Locations.\n */\ninterface IOrgUnitLocations {\n orgUnitLocations: OrgUnitLocation[];\n}\n\nconst searchArea: SearchArea = {\n Radius: Math.max(),\n DistanceUnitValue: 0 // 0 is miles\n};\n\n/**\n * Calls the Retail API and returns the orgUnitLocations.\n * @returns - List Org Unit Locations.\n */\nconst getOrgUnitLocations = () => async (ctx: IActionContext): Promise => {\n return getOrgUnitLocationsByAreaAsync(\n {\n callerContext: ctx,\n queryResultSettings: QueryResultSettingsProxy.getPagingFromInputDataOrDefaultValue(ctx)\n },\n searchArea\n );\n};\n\n/**\n * Action input.\n */\nexport class GetOrgUnitLocationsInput implements IActionInput {\n private readonly apiSettings: ICommerceApiSettings;\n\n constructor(apiSettings: ICommerceApiSettings) {\n this.apiSettings = apiSettings;\n }\n\n public getCacheKey = () => buildCacheKey('OrgUnitLocations', this.apiSettings);\n\n public getCacheObjectType = () => 'OrgUnitLocations';\n\n public dataCacheType = (): CacheType => 'request';\n}\n\n/**\n * Creates the input required to make the retail api call.\n * @param inputData - Action Context.\n * @returns - Org Unit Location input.\n */\nconst createOrgUnitLocationsInput = (inputData: ICreateActionContext>) => {\n return new GetOrgUnitLocationsInput(inputData.requestContext.apiSettings);\n};\n\n/**\n * Get orgUnitLocations action.\n * @param input - Org UNit Locations Input.\n * @param context - Action Context.\n */\nexport async function getOrgUnitLocationsAction(input: GetOrgUnitLocationsInput, context: IActionContext): Promise {\n if (!context) {\n throw new Error('getOrgUnitLocationsAction - Action context cannot be null/undefined');\n }\n\n let orgUnitLocations: OrgUnitLocation[] = [];\n\n try {\n orgUnitLocations = await getOrgUnitLocations()(context);\n } catch (error) {\n throw error;\n }\n\n return { orgUnitLocations };\n}\n\nexport const getOrgUnitLocationsActionDataAction = createObservableDataAction({\n id: '@msdyn365-commerce-modules/order-management/get-org-unit-locations',\n action: >getOrgUnitLocationsAction,\n input: createOrgUnitLocationsInput\n});\n\nexport default getOrgUnitLocationsActionDataAction;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n CacheType,\n createObservableDataAction,\n IAction,\n IActionContext,\n IActionInput,\n ICommerceApiSettings,\n ICreateActionContext\n} from '@msdyn365-commerce/core';\nimport { OrderOriginator, SalesOrdersDataActions, OrderOriginatorSearchCriteria } from '@msdyn365-commerce/retail-proxy';\nimport { buildCacheKey } from '@msdyn365-commerce-modules/retail-actions';\n\n/**\n * Action input.\n */\nexport class GetOrderOriginatorsInput implements IActionInput {\n public searchCriteria: OrderOriginatorSearchCriteria = {};\n\n private readonly apiSettings: ICommerceApiSettings;\n\n public constructor(transactionIds: string[] | undefined, salesIds: string[] | undefined, apiSettings: ICommerceApiSettings) {\n this.searchCriteria = {\n TransactionIds: transactionIds,\n SalesIds: salesIds\n };\n this.apiSettings = apiSettings;\n }\n\n /**\n * GetCacheKey.\n * @returns - String.\n */\n public getCacheKey = (): string =>\n buildCacheKey(`OrderOriginators-${this.searchCriteria.TransactionIds}-${this.searchCriteria.SalesIds}`, this.apiSettings);\n\n /**\n * GetCacheObjectType.\n * @returns - String.\n */\n public getCacheObjectType = (): string => 'OrderOriginators';\n\n /**\n * DataCacheType.\n * @returns - String.\n */\n public dataCacheType = (): CacheType => 'request';\n}\n\n/**\n * Get order originators by transaction ids or sales ids action.\n * @param input - GetOrderOriginators input.\n * @param context - Channel context.\n * @returns - Originators array.\n */\nexport async function getOriginatorsAction(input: GetOrderOriginatorsInput, context: IActionContext): Promise {\n return SalesOrdersDataActions.getOrderOriginatorsAsync({ callerContext: context }, input.searchCriteria);\n}\n\n/**\n * Creates the input required to make the retail api call.\n * @param inputData -- InputData as ICreateActionContext.\n * @returns Action Input.\n */\nexport const createSalesOrderOriginatorsInput = (inputData: ICreateActionContext) => {\n const { salesId, transactionId } = inputData.requestContext.query ?? {};\n\n if (salesId) {\n return new GetOrderOriginatorsInput(undefined, [salesId], inputData.requestContext.apiSettings);\n } else if (transactionId) {\n return new GetOrderOriginatorsInput([transactionId], undefined, inputData.requestContext.apiSettings);\n }\n\n throw new Error('createSalesOrderOriginatorsInput - No salesId or transactionId provided.');\n};\n\n/**\n * GetSalesOrderOriginatorsActionDataAction.\n * @returns -- IObservableAction.\n */\nexport const getSalesOrderOriginatorsActionDataAction = createObservableDataAction({\n id: '@msdyn365-commerce-modules/order-management/get-sales-order-originators',\n action: getOriginatorsAction as IAction,\n input: createSalesOrderOriginatorsInput\n});\n\nexport default getSalesOrderOriginatorsActionDataAction;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { observable } from 'mobx';\n\n/**\n * Represents state of the expand button.\n */\nexport class ExpandButtonState {\n @observable public extraProductsCount: number;\n\n public constructor(extraProductsCount: number) {\n this.extraProductsCount = extraProductsCount;\n }\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { observable } from 'mobx';\n\n/**\n * Represents state of the sales line product.\n */\nexport class SalesLineState {\n @observable public isHidden?: boolean;\n\n public stateId: string;\n\n public constructor(stateId: string, isHidden?: boolean) {\n this.stateId = stateId;\n this.isHidden = isHidden;\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 CacheType,\n createObservableDataAction,\n IAction,\n IActionContext,\n IActionInput,\n ICommerceApiSettings\n} from '@msdyn365-commerce/core';\nimport { IQueryResultSettings, SalesLine } from '@msdyn365-commerce/retail-proxy';\nimport { getOrderShipmentsHistoryAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/CustomersDataActions.g';\nimport { OrderShipments, SimpleProduct } from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\nimport {\n buildCacheKey,\n getOrganizationWideOrderHistory,\n GetOrganizationWideOrderHistoryInput,\n getSimpleProducts,\n ProductInput\n} from '@msdyn365-commerce-modules/retail-actions';\n\nimport { OrderHistoryFilterState } from '../components/order-history-filter';\n\n/**\n * IPaging Interface.\n */\nexport interface IPaging {\n top: number;\n skip: number;\n}\n\n/**\n * IOrderHistory Interface.\n */\nexport interface IOrderHistory {\n salesOrders: OrderShipments[];\n products: SimpleProduct[];\n nextPageToken?: string;\n}\n\n/**\n * IOrderHistoryResult Interface.\n */\nexport interface IOrderHistoryResult {\n salesOrders: OrderShipments[];\n nextPageToken?: string;\n}\n\n/**\n * Calls the Retail API and returns the products.\n * @param paging - Paging interface.\n * @param nextPageToken - Next Page Link.\n * @returns Collection of OrderShipments.\n */\nconst getOrderShipmentHistory = (paging: IPaging, nextPageToken?: string) => async (ctx: IActionContext): Promise => {\n const orderHistoryResults = getOrderShipmentsHistoryAsync(\n {\n callerContext: ctx,\n bypassCache: 'get',\n queryResultSettings: {\n Paging: {\n Top: paging.top,\n NextPageToken: nextPageToken\n }\n }\n },\n '',\n nextPageToken\n );\n\n const orderHistoryResponse = await orderHistoryResults;\n const nextLinkUrl = orderHistoryResults.metadata?.others?.nextLink;\n const nextPageLink = nextLinkUrl !== undefined ? new URL(nextLinkUrl).searchParams.get('nextPageToken') : undefined;\n const nextPage = nextPageLink !== null ? nextPageLink : undefined;\n return {\n salesOrders: orderHistoryResponse,\n nextPageToken: nextPage\n };\n};\n\n/**\n * Calls the Retail API and returns the products.\n * @param paging - Paging props.\n * @param nextPageToken - Next Page Link.\n * @returns Collections of order shipments.\n */\nconst getOrganizationWideOrderShipmentHistory = (paging: IPaging, nextPageToken?: string) => async (\n context: IActionContext\n): Promise => {\n const queryResultSetting: IQueryResultSettings = {\n Paging: {\n Top: paging.top,\n Skip: paging.skip,\n NextPageToken: nextPageToken\n }\n };\n\n const orgOrderHistoryResults = getOrganizationWideOrderHistory(new GetOrganizationWideOrderHistoryInput(queryResultSetting), context);\n\n const orgOrderHistoryResponse = await orgOrderHistoryResults;\n const nextLinkUrl = orgOrderHistoryResults.metadata?.others?.nextLink;\n const nextPageLink = nextLinkUrl !== undefined ? new URL(nextLinkUrl).searchParams.get('nextPageToken') : undefined;\n const nextPage = nextPageLink !== null ? nextPageLink : undefined;\n return {\n salesOrders: orgOrderHistoryResponse,\n nextPageToken: nextPage\n };\n};\n\n/**\n * Calls the Retail API and returns the products.\n * @param productIds - Collection of products id.\n * @param channelId - ChannelId number.\n * @returns Collections of simple products.\n */\nconst getProducts = (productIds: number[] = [], channelId?: number) => (ctx: IActionContext): Promise => {\n const productInputs = productIds.map(\n productId => new ProductInput(productId, ctx.requestContext.apiSettings, channelId, undefined, ctx.requestContext)\n );\n return getSimpleProducts(productInputs, ctx);\n};\n\n/**\n * Action input.\n */\nexport class GetSalesOrderHistoryWithHydrationsInput implements IActionInput {\n public paging: IPaging;\n\n public filterState: OrderHistoryFilterState;\n\n public nextPageToken?: string;\n\n private readonly apiSettings: ICommerceApiSettings;\n\n constructor(paging: IPaging, apiSettings: ICommerceApiSettings, filterState?: OrderHistoryFilterState, nextPageLink?: string) {\n this.apiSettings = apiSettings;\n this.paging = paging;\n this.filterState = filterState || OrderHistoryFilterState.CurrentUser;\n this.nextPageToken = nextPageLink;\n }\n\n public getCacheKey = () => buildCacheKey('OrderHistory', this.apiSettings);\n\n /**\n * GetCacheObjectType.\n * @returns String.\n */\n public getCacheObjectType = () => 'OrderHistory';\n\n public dataCacheType = (): CacheType => 'none';\n}\n\n/**\n * Splits product ids from the given orders into lists by their channel id.\n * @param {OrderShipments[]} salesOrders Orders with the products.\n * @param {number} currentChannelId Channel id to use by default if no channel id is provided for a product.\n * @returns {{ [x: number]: number[] }} A dictionary where the key is a channel id,\n * and the value is a list of product ids in which all items correspond to the key channel id.\n * @remark The list of product ids is always non-empty.\n */\nconst splitProductsByChannelId = (salesOrders: OrderShipments[], currentChannelId: number): { [x: number]: number[] } => {\n const productIdsByChannel: { [x: number]: number[] } = {};\n\n salesOrders.forEach(salesOrder =>\n salesOrder?.SalesLines?.forEach(line => {\n const orderProductId = line.ProductId || 0;\n const orderChannelId = salesOrder.ChannelId || currentChannelId;\n if (!productIdsByChannel[orderChannelId]) {\n productIdsByChannel[orderChannelId] = [];\n }\n productIdsByChannel[orderChannelId].push(orderProductId);\n })\n );\n\n return productIdsByChannel;\n};\n\n/**\n * Get sales order with hydrations action.\n * @param input - GetOrderHistory hydration input.\n * @param context - Channel context.\n * @returns - Order History props.\n */\nexport async function getSalesOrderHistoryWithHydrationsAction(\n input: GetSalesOrderHistoryWithHydrationsInput,\n context: IActionContext\n): Promise {\n if (!context) {\n throw new Error('getSalesOrderWithHydrationsAction - Action context cannot be null/undefined');\n }\n const channelId = context.requestContext.apiSettings.channelId;\n let salesOrders: OrderShipments[] = [];\n let nextPage: string | undefined = '';\n let orderHistoryResponse: IOrderHistoryResult;\n\n switch (input.filterState) {\n case OrderHistoryFilterState.CurrentUser:\n orderHistoryResponse = await getOrderShipmentHistory(input.paging, input.nextPageToken)(context);\n salesOrders = orderHistoryResponse.salesOrders;\n nextPage = orderHistoryResponse.nextPageToken;\n break;\n case OrderHistoryFilterState.OrganizationWide:\n orderHistoryResponse = await getOrganizationWideOrderShipmentHistory(input.paging, input.nextPageToken)(context);\n salesOrders = orderHistoryResponse.salesOrders;\n nextPage = orderHistoryResponse.nextPageToken;\n break;\n default:\n throw new Error('getSalesOrderWithHydrationsAction - Invalid OrderHistoryFilterState passed');\n }\n\n salesOrders.map(salesOrder => {\n return (salesOrder.SalesLines = salesOrder.SalesLines?.filter((saleline: SalesLine) => !saleline.IsVoided));\n });\n\n if (!salesOrders || salesOrders.length === 0) {\n return {\n salesOrders: [],\n products: [],\n nextPageToken: nextPage\n };\n }\n\n // Splits the data by channel ids so that the products from different channels can be processed separately.\n const productIdsByChannelId = splitProductsByChannelId(salesOrders, channelId);\n\n // Promise that retrieves information about the products for each channel id.\n // Note, the list of product ids should not be empty\n // as it will generate an empty request which will force the promise to fail.\n const getProductsPromise = Object.entries(productIdsByChannelId).map(([entryChannelId, entryProductIdsList]) => {\n const getProductsCall = getProducts(entryProductIdsList, Number(entryChannelId));\n return getProductsCall(context);\n });\n\n return Promise.all(getProductsPromise)\n .then(\n (productList): IOrderHistory => {\n const products = productList.reduce((memo, list) => {\n return [...memo, ...list];\n }, []);\n return {\n salesOrders,\n products,\n nextPageToken: nextPage\n };\n }\n )\n .catch(error => {\n context.telemetry.exception(error);\n context.telemetry.debug('Failed to get products');\n throw error;\n });\n}\n\nexport const getSalesOrderHistoryWithHydrationsActionDataAction = createObservableDataAction({\n id: '@msdyn365-commerce-modules/order-management/order-history/get-order-shipment-history',\n action: >getSalesOrderHistoryWithHydrationsAction\n});\n\nexport default getSalesOrderHistoryWithHydrationsActionDataAction;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { getUrlSync, IActionContext } from '@msdyn365-commerce/core';\nimport {\n ChannelDeliveryOptionConfiguration,\n ChannelIdentity,\n Customer,\n format,\n OrderOriginator,\n OrderShipments,\n OrgUnitLocation,\n SimpleProduct\n} from '@msdyn365-commerce/retail-proxy';\nimport { ObjectExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport {\n Button,\n getPayloadObject,\n getTelemetryAttributes,\n INodeProps,\n ITelemetryContent,\n TelemetryConstant\n} from '@msdyn365-commerce-modules/utilities';\nimport { Observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { ExpandButtonState, SalesLineState } from '../../../common';\nimport { getGroups, IGroups } from '../../../common/get-groups';\nimport { getOrderInformation, getOrderInformationInput, IOrderInformation } from '../../../common/get-order-information';\nimport { ISalesLine } from '../../../common/get-sales-line';\nimport { getSalesLines, getSalesLinesInput, IGetSalesLinesInput } from '../../../common/get-sales-lines';\nimport { IOrderHistoryData } from '../order-history.data';\nimport { IOrderHistoryProps } from '../order-history.props.autogenerated';\n\nexport interface ISalesOrderProps extends IOrderHistoryProps {\n salesOrder: OrderShipments;\n products: SimpleProduct[];\n channelIdentities?: ChannelIdentity[];\n orgUnitLocations?: OrgUnitLocation[];\n customer?: Customer;\n originator?: OrderOriginator;\n showChannelInfo?: boolean;\n telemetryContent?: ITelemetryContent;\n retailMultiplePickUpOptionEnabled?: boolean;\n channelDeliveryOptionConfig?: ChannelDeliveryOptionConfiguration;\n salesLinesLimit?: number;\n}\n\nexport interface ISalesOrder {\n salesOrderProps: INodeProps;\n orderInfomation: IOrderInformation;\n groups?: IGroups;\n orderDetailsLink: React.ReactNode;\n expandProductsButton?: React.ReactNode;\n}\n\n/**\n * Retrieves the url for order details page.\n * @param actionContext - Core action context.\n * @param salesOrder - Order information.\n * @returns Url to order details.\n */\nexport const getOrderDetailsPageUrl = (actionContext: IActionContext, salesOrder: OrderShipments): string => {\n const orderDetailsUrl = getUrlSync('orderDetails', actionContext) || '';\n const separator = orderDetailsUrl.includes('?') ? '&' : '?';\n if (salesOrder.SalesId) {\n // Redirect with sales order sales id\n return `${orderDetailsUrl}${separator}salesId=${salesOrder.SalesId}`;\n }\n\n // Redirect with sales order transaction id\n return `${orderDetailsUrl}${separator}transactionId=${salesOrder.TransactionId!}`;\n};\n\n/**\n * Updates product states to show all products.\n * @param expandButtonState - Expand button state.\n * @param productStates - Product states.\n * @returns Callback method.\n */\nconst onExpandProductsCallback = (expandButtonState: ExpandButtonState, productStates: SalesLineState[]) => () => {\n for (const productState of productStates) {\n productState.isHidden = false;\n }\n expandButtonState.extraProductsCount = 0;\n};\n\nexport const getSalesOrder = (input: ISalesOrderProps): ISalesOrder => {\n const {\n id,\n typeName,\n context,\n telemetry,\n products,\n salesOrder,\n showChannelInfo,\n channelIdentities,\n orgUnitLocations,\n customer,\n originator,\n telemetryContent,\n resources: { freePriceText, detailsAriaLabel, detailsLabel, orderItemLabel, orderItemsLabel },\n context: { actionContext },\n retailMultiplePickUpOptionEnabled,\n channelDeliveryOptionConfig\n } = input;\n\n const moduleName = 'ms-order-history';\n\n const priceContext = {\n id,\n typeName,\n context,\n telemetry,\n freePriceText\n };\n\n const salesOrderProps = { className: 'ms-order-history__sales-order', key: salesOrder.SalesId || salesOrder.TransactionId };\n\n const orderInfomationInput = getOrderInformationInput(\n input,\n moduleName,\n salesOrder,\n priceContext,\n channelIdentities,\n orgUnitLocations,\n customer,\n originator,\n showChannelInfo\n );\n\n const orderInfomation = getOrderInformation(orderInfomationInput);\n\n const salesLinesInput =\n products &&\n getSalesLinesInput(\n input,\n moduleName,\n salesOrder,\n products,\n priceContext,\n undefined,\n undefined,\n undefined,\n retailMultiplePickUpOptionEnabled,\n channelDeliveryOptionConfig\n );\n\n let salesLines: ISalesLine[] | undefined;\n let expandProductsButton: React.ReactNode;\n if (salesLinesInput) {\n const getSalesLinesInputProps: IGetSalesLinesInput = { ...salesLinesInput, imageOnly: true };\n if (!ObjectExtensions.isNullOrUndefined(input.salesLinesLimit)) {\n const extraProductsCount = getSalesLinesInputProps.salesLines.length - input.salesLinesLimit;\n getSalesLinesInputProps.salesLineStates = getSalesLinesInputProps.salesLines.map(\n (salesLine, index) => new SalesLineState(`${salesLine.LineId ?? ''}-${index}`, index >= input.salesLinesLimit!)\n );\n if (extraProductsCount > 0) {\n const expandButtonState = new ExpandButtonState(extraProductsCount);\n expandProductsButton = (\n <>\n \n {() => {\n const text = format(\n input.resources.orderHistoryExpandProductsButtonText,\n expandButtonState.extraProductsCount\n );\n return (\n expandButtonState.extraProductsCount > 0 && (\n \n {text}\n \n )\n );\n }}\n \n \n );\n }\n }\n salesLines = getSalesLines(getSalesLinesInputProps);\n }\n\n expandProductsButton = (\n <>\n {expandProductsButton}\n
\n \n );\n\n const payLoad = getPayloadObject('click', telemetryContent!, TelemetryConstant.OrderDetails);\n const orderDetailsAttributes = getTelemetryAttributes(telemetryContent!, payLoad);\n\n const groups =\n salesLines &&\n getGroups({\n moduleName,\n salesLines,\n resources: { orderItemLabel, orderItemsLabel },\n retailMultiplePickUpOptionEnabled\n });\n\n const orderDetailsLink = (\n \n {detailsLabel}\n \n );\n\n return {\n salesOrderProps,\n orderInfomation,\n groups,\n orderDetailsLink,\n expandProductsButton\n };\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IComponentProps, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { Customer } from '@msdyn365-commerce/retail-proxy';\nimport { EnumExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, Popover } from '@msdyn365-commerce-modules/utilities';\nimport React from 'react';\n\nexport interface IOrderHistoryFilterResources {\n orderHistoryFilterYourOrderHistory: string;\n orderHistoryFilterOrganizationWide: string;\n}\n\nexport interface IOrderHistoryFilterData {\n customerInformation: Customer;\n}\n\nexport interface IOrderHistoryFilterProps extends IComponentProps {\n className: string;\n\n resources: IOrderHistoryFilterResources;\n\n currentState: OrderHistoryFilterState;\n onFilterStateChanged(state: OrderHistoryFilterState): void;\n}\n\nexport enum OrderHistoryFilterState {\n CurrentUser,\n OrganizationWide\n}\n\nconst getOrderHistoryFilterStateResources = (filterState: OrderHistoryFilterState, resources: IOrderHistoryFilterResources): string => {\n switch (filterState) {\n case OrderHistoryFilterState.CurrentUser:\n return resources.orderHistoryFilterYourOrderHistory;\n case OrderHistoryFilterState.OrganizationWide:\n return resources.orderHistoryFilterOrganizationWide;\n default:\n throw new Error('Failed to retrieve resource description for unknown order history filter state.');\n }\n};\n\n/**\n * On Click functionality.\n * @param onStateClick -Filter state function.\n * @param filterState -Order history filter state.\n * @returns On state click functionality.\n */\nconst onClickHandler = (onStateClick: (filterState: OrderHistoryFilterState) => void, filterState: OrderHistoryFilterState) => () => {\n onStateClick(filterState);\n};\n\nconst renderFilterStateItem = (\n filterState: OrderHistoryFilterState,\n resources: IOrderHistoryFilterResources,\n className: string,\n onStateClick: (filterState: OrderHistoryFilterState) => void\n): React.ReactNode => {\n const stateStringRepresentation = OrderHistoryFilterState[filterState];\n\n return (\n \n );\n};\n\n/**\n * On Toggle Popover functionality.\n * @param setPopoverState -Set popover state function.\n * @param isPopoverState -Boolean value.\n * @returns Set toggle popover state functionality.\n */\nconst togglePopoverHandler = (setPopoverState: React.Dispatch>, isPopoverState: boolean) => () => {\n setPopoverState(!isPopoverState);\n};\n\nconst OrderHistoryFilter: React.FC = (props: IOrderHistoryFilterProps) => {\n // Current version of filter doesn't include functionality for non b2b users or non-admin b2b users.\n if (!props.data.customerInformation.IsB2bAdmin) {\n return
;\n }\n\n const popoverRef = React.createRef();\n const [popoverState, setPopoverState] = React.useState(false);\n\n const [filterState, setFilterState] = React.useState(props.currentState);\n\n const onFilterStateClick = (clickedState: OrderHistoryFilterState) => {\n setFilterState(clickedState);\n setPopoverState(false);\n props.onFilterStateChanged(clickedState);\n };\n\n return (\n
\n \n {getOrderHistoryFilterStateResources(filterState, props.resources)}\n \n \n {EnumExtensions.getEnumValues(OrderHistoryFilterState).map(state => {\n return renderFilterStateItem(state, props.resources, props.className, onFilterStateClick);\n })}\n \n
\n );\n};\n\nexport const OrderHistoryFilterComponent: React.FunctionComponent = msdyn365Commerce.createComponent<\n // @ts-expect-error\n IOrderHistoryFilterProps\n>('OrderHistoryFilterComponent', { component: OrderHistoryFilter });\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IComponentProps, ICoreContext } from '@msdyn365-commerce/core';\nimport { isMobile, VariantType } from '@msdyn365-commerce-modules/utilities';\nimport React from 'react';\n\n/**\n * Resources which are used in order history header.\n */\nexport interface IOrderHistoryTableHeaderResources {\n orderHistoryOrderNumberText: string;\n orderHistoryCreatedDateText: string;\n orderHistoryItemsText: string;\n orderHistoryTotalText: string;\n orderHistoryOriginText: string;\n orderPlacedByFullText?: string;\n}\n\n/**\n * Configuration of the component.\n */\nexport interface IOrderHistoryTableHeaderProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n\n resources: IOrderHistoryTableHeaderResources;\n\n shouldShowChannelInfo: boolean;\n shouldShowOrderPlacedBy?: boolean;\n}\n\n/**\n * Renders desktop view cells.\n * @param props - Configuration of the module.\n * @returns List of cells for the header.\n */\nconst getDesktopHeaderCells = (props: IOrderHistoryTableHeaderProps) => {\n const { resources } = props;\n\n const columnWithNumberClassName = `${props.className}__row__column-with-number`;\n\n return (\n <>\n {props.shouldShowOrderPlacedBy && {resources.orderPlacedByFullText}}\n {resources.orderHistoryOrderNumberText}\n {resources.orderHistoryCreatedDateText}\n {resources.orderHistoryItemsText}\n {resources.orderHistoryTotalText}\n {props.shouldShowChannelInfo && {resources.orderHistoryOriginText}}\n \n \n );\n};\n\n/**\n * Renders mobile view cells.\n * @param props - Configuration of the module.\n * @returns List of cells for the header.\n */\nconst getMobileHeaderCells = (props: IOrderHistoryTableHeaderProps) => {\n const { resources } = props;\n return (\n <>\n {resources.orderHistoryOrderNumberText}\n \n \n );\n};\n\n/**\n * Order history table header component.\n * @param props - Configuration of the component.\n * @returns React node with the header.\n */\nexport const OrderHistoryTableHeaderComponent: React.FC = (props: IOrderHistoryTableHeaderProps) => {\n const rowClassName = `${props.className}__row`;\n\n let headerCells: JSX.Element;\n const isMobileView = isMobile({ variant: VariantType.Viewport, context: props.context.request }) === 'xs';\n if (isMobileView) {\n headerCells = getMobileHeaderCells(props);\n } else {\n headerCells = getDesktopHeaderCells(props);\n }\n\n return (\n \n {headerCells}\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 MsDyn365, { IComponentProps, ICoreContext, IDateFormatOptions, isOboRequest } from '@msdyn365-commerce/core';\nimport { ChannelIdentity, Customer, format, OrderOriginator, OrderShipments, OrgUnitLocation } from '@msdyn365-commerce/retail-proxy';\nimport { ArrayExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, isMobile, VariantType } from '@msdyn365-commerce-modules/utilities';\nimport React from 'react';\n\nimport {\n getOrderChannelAddress,\n getOrderChannelName,\n getOrderChannelTypeValue,\n isOnlineStoreChannel\n} from '../../../../../common/get-order-information';\nimport { countItems } from '../../../../../common/utilities';\nimport { getOrderDetailsPageUrl } from '../../get-sales-order';\n\n/**\n * Data required to render each order history row.\n */\nexport interface IOrderHistoryTableRowData {\n salesOrder: OrderShipments;\n channelIdentities?: ChannelIdentity[];\n orgUnitLocations?: OrgUnitLocation[];\n customer?: Customer;\n originator?: OrderOriginator;\n}\n\n/**\n * Resources for order history table rows.\n */\nexport interface IOrderHistoryTableRowResources {\n orderHistoryViewDetailsButtonText: string;\n orderHistoryViewDetailsButtonAriaLabel: string;\n orderHistoryCreatedDateMobileDescriptionText: string;\n orderHistoryOrderNumberIsNotAvailable: string;\n onlineStoreChannelNameText: string;\n posChannelNameText: string;\n orderPlacedByFullText?: string;\n orderPlacedByYouText?: string;\n orderOnBehalfOfText?: string;\n}\n\n/**\n * Configuration for the order history rows.\n */\nexport interface IOrderHistoryTableRowProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n\n resources: IOrderHistoryTableRowResources;\n\n shouldShowChannelInfo: boolean;\n shouldShowOrderPlacedBy?: boolean;\n}\n\n/**\n * Formats amount.\n * @param context - Core context.\n * @param amount - Amount to display.\n * @param currencyCode - Currency for the amount.\n * @returns String value.\n */\nconst formatAmount = (context: ICoreContext, amount: number | undefined, currencyCode: string | undefined) => {\n if (amount === undefined) {\n return '';\n }\n return context.cultureFormatter.formatCurrency(amount, currencyCode);\n};\n\n/**\n * Formats date.\n * @param context - Core context.\n * @param date - Date to display.\n * @returns String value.\n */\nconst formatDate = (context: ICoreContext, date: Date | undefined) => {\n if (date === undefined) {\n return '';\n }\n\n const dateOptions: IDateFormatOptions = { year: 'numeric', month: 'numeric', day: 'numeric' };\n return context.cultureFormatter.formatDate(date, dateOptions);\n};\n\nconst getShortEllipsisText = (originalText: string, maxTextLength: number) => {\n const isRtl = document.body.parentElement?.getAttribute('dir') === 'rtl';\n return originalText.length > maxTextLength\n ? isRtl\n ? `…${originalText.substring(0, maxTextLength - 1)}`\n : `${originalText.substring(0, maxTextLength - 1)}…`\n : originalText;\n};\n\n/**\n * Renders rows for desktop view.\n * @param props - Configuration for the rows.\n * @returns A react node with a list of order history rows for desktop view.\n */\nexport const OrderHistoryDesktopTableRowCellComponent: React.FC = (props: IOrderHistoryTableRowProps) => {\n const {\n data: { salesOrder, channelIdentities, orgUnitLocations, customer, originator },\n resources: { orderPlacedByFullText, orderPlacedByYouText, orderOnBehalfOfText }\n } = props;\n\n const linkToOrderHistoryDetails = getOrderDetailsPageUrl(props.context.actionContext, props.data.salesOrder);\n\n const defaultCount = 0;\n const itemsCount = ArrayExtensions.hasElements(salesOrder.SalesLines) ? countItems(salesOrder.SalesLines) : defaultCount;\n const channelName = getOrderChannelName(salesOrder, channelIdentities);\n const channelAddress = getOrderChannelAddress(salesOrder, orgUnitLocations);\n const channelTypeValue = getOrderChannelTypeValue(salesOrder, channelIdentities);\n const isOnlineStore = isOnlineStoreChannel(channelTypeValue, channelAddress);\n\n const columnWithNumberClassName = `${props.className}__column-with-number`;\n\n let orderNumberCellText = props.resources.orderHistoryOrderNumberIsNotAvailable;\n if (!StringExtensions.isNullOrWhitespace(salesOrder.SalesId)) {\n orderNumberCellText = salesOrder.SalesId!;\n }\n\n const isYou =\n !isOboRequest(props.context.request) &&\n originator?.CustomerId &&\n originator?.CustomerName &&\n !originator?.StaffId &&\n !originator?.StaffName &&\n customer?.AccountNumber === originator?.CustomerId\n ? true\n : false;\n const isYouObo = !isYou && !isOboRequest(props.context.request);\n let placedByName =\n originator?.StaffId && originator.StaffName\n ? originator.StaffName\n : originator?.CustomerId && originator.CustomerName\n ? originator.CustomerName\n : '-';\n placedByName = `${placedByName} ${isYou ? orderPlacedByYouText : ''}`;\n const isOnBehalfOfOrder = isOnlineStore && originator?.StaffName && customer?.Name;\n const maxOrderTextLength = window.innerWidth > 700 ? 20 : 12;\n const placedByText = `${orderPlacedByFullText} ${placedByName}`;\n const onBehalfOfText = `${orderOnBehalfOfText} ${customer?.Name} ${isYouObo ? orderPlacedByYouText : ''}`;\n\n return (\n <>\n {props.shouldShowOrderPlacedBy && (\n \n \n {placedByName}\n {isOnBehalfOfOrder && (\n <>\n
{getShortEllipsisText(onBehalfOfText, maxOrderTextLength)}\n \n )}\n \n \n )}\n \n {orderNumberCellText}\n {isOnBehalfOfOrder && !props.shouldShowOrderPlacedBy && (\n <>\n \n {getShortEllipsisText(placedByText, maxOrderTextLength)}\n \n \n )}\n \n {formatDate(props.context, salesOrder.CreatedDateTime)}\n {itemsCount}\n {formatAmount(props.context, salesOrder.TotalAmount, salesOrder.CurrencyCode)}\n {props.shouldShowChannelInfo && (\n \n {channelName &&\n (channelAddress\n ? `${props.resources.posChannelNameText} ${channelName}`\n : props.resources.onlineStoreChannelNameText)}\n \n )}\n \n \n {props.resources.orderHistoryViewDetailsButtonText}\n \n \n \n );\n};\n\n/**\n * Renders rows for mobile view.\n * @param props - Configuration for the rows.\n * @returns A react node with a list of order history rows for mobile view.\n */\nexport const OrderHistoryMobileTableRowCellComponent: React.FC = (props: IOrderHistoryTableRowProps) => {\n const {\n data: { salesOrder }\n } = props;\n\n const linkToOrderHistoryDetails = getOrderDetailsPageUrl(props.context.actionContext, props.data.salesOrder);\n\n const onClickViewDetails = React.useCallback(() => {\n if (MsDyn365.isBrowser) {\n window.location.href = linkToOrderHistoryDetails;\n }\n }, [linkToOrderHistoryDetails]);\n\n const orderNumber = StringExtensions.isNullOrWhitespace(salesOrder.SalesId)\n ? props.resources.orderHistoryOrderNumberIsNotAvailable\n : salesOrder.SalesId!;\n\n const dateText = format(\n props.resources.orderHistoryCreatedDateMobileDescriptionText,\n formatDate(props.context, salesOrder.CreatedDateTime)\n );\n\n const cellClassName = `${props.className}__mobile-cell`;\n\n return (\n <>\n \n \n {orderNumber}\n {dateText}\n
\n \n \n \n {props.resources.orderHistoryViewDetailsButtonText}\n \n \n \n );\n};\n\n/**\n * Renders order history rows.\n * @param props - Configuration for the rows.\n * @returns A react node with a list of order history rows.\n */\nexport const OrderHistoryTableRowComponent: React.FC = (props: IOrderHistoryTableRowProps) => {\n const isMobileView = isMobile({ variant: VariantType.Viewport, context: props.context.request }) === 'xs';\n\n return (\n \n {isMobileView ? (\n \n ) : (\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 { IComponentProps, ICoreContext } from '@msdyn365-commerce/core';\nimport { ChannelIdentity, Customer, OrderOriginator, OrgUnitLocation } from '@msdyn365-commerce/retail-proxy';\nimport React from 'react';\n\nimport { IOrderHistory } from '../../actions/get-order-shipment-history';\nimport { IOrderHistoryTableHeaderResources, OrderHistoryTableHeaderComponent } from './components/order-history-table-header-component';\nimport { IOrderHistoryTableRowResources, OrderHistoryTableRowComponent } from './components/order-history-table-row-component';\n\n/**\n * Interface with the data required for order history.\n */\nexport interface IOrderHistoryTableData {\n orderHistory: IOrderHistory;\n channelIdentities?: ChannelIdentity[];\n orgUnitLocations?: OrgUnitLocation[];\n customer?: Customer;\n originators?: OrderOriginator[];\n}\n\n/**\n * Resources needed to render order history table.\n */\nexport interface IOrderHistoryTableResources extends IOrderHistoryTableHeaderResources, IOrderHistoryTableRowResources {}\n\n/**\n * Configuration of order history table.\n */\nexport interface IOrderHistoryTableProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n\n resources: IOrderHistoryTableResources;\n\n shouldShowChannelInfo: boolean;\n shouldShowOrderPlacedBy?: boolean;\n}\n\n/**\n * Renders order history table.\n * @param props - Configuration for order history table.\n * @returns React node with the table.\n */\nexport const OrderHistoryTableComponent: React.FC = (props: IOrderHistoryTableProps) => {\n const rowClassName = `${props.className}__row`;\n const headerClassName = `${props.className}__header`;\n\n return (\n \n \n {props.data.orderHistory.salesOrders.map((salesOrder, index) => {\n return (\n \n (salesOrder.SalesId && o.SalesId === salesOrder.SalesId) ||\n (salesOrder.TransactionId && o.TransactionId === salesOrder.TransactionId)\n )\n }}\n shouldShowChannelInfo={props.shouldShowChannelInfo}\n shouldShowOrderPlacedBy={props.shouldShowOrderPlacedBy}\n />\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 Msdyn365 from '@msdyn365-commerce/core';\nimport {\n Button,\n getPayloadObject,\n getTelemetryAttributes,\n getTelemetryObject,\n IModuleProps,\n INodeProps,\n IPayLoad,\n ITelemetryContent,\n TelemetryConstant\n} from '@msdyn365-commerce-modules/utilities';\nimport classname from 'classnames';\nimport { observable } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { OrderOriginator, OrderShipments } from '@msdyn365-commerce/retail-proxy';\nimport { Label } from '../../common/label';\nimport {\n getSalesOrderHistoryWithHydrationsAction,\n GetSalesOrderHistoryWithHydrationsInput,\n IOrderHistory,\n IPaging\n} from './actions/get-order-shipment-history';\nimport { getOriginatorsAction, GetOrderOriginatorsInput } from '../../actions/get-sales-order-originators';\nimport { getSalesOrder, ISalesOrder } from './components/get-sales-order';\nimport { OrderHistoryFilterComponent, OrderHistoryFilterState } from './components/order-history-filter';\nimport { OrderHistoryTableComponent } from './components/table-view';\nimport { IOrderHistoryData } from './order-history.data';\nimport { IOrderHistoryProps } from './order-history.props.autogenerated';\n\n/**\n * Specifies different layouts for order history.\n */\nexport enum OrderHistoryViewMode {\n listView = 0,\n detailedView = 1\n}\n\nexport interface IHeader {\n headerProps: INodeProps;\n heading: React.ReactNode;\n orderCountLabel?: React.ReactNode;\n extraActions?: React.ReactNode;\n}\n\nexport interface IList {\n listProps: INodeProps;\n salesOrders: ISalesOrder[];\n}\n\nexport interface IOrderHistoryViewState {\n isDataReady: boolean;\n hasError: boolean;\n isLoading: boolean;\n isShowMoreButton: boolean;\n errorCode?: string;\n errorMessage?: string;\n}\n\nexport interface IOrderHistoryViewProps extends IOrderHistoryProps {\n orderHistory: IOrderHistory;\n orderHistoryProps: IModuleProps;\n alert?: React.ReactNode;\n loading?: React.ReactNode;\n emptyMessage?: React.ReactNode;\n header: IHeader;\n backToShoppingLink?: React.ReactNode;\n list?: IList;\n table?: React.ReactNode;\n moreButton?: React.ReactNode;\n viewState: IOrderHistoryViewState;\n}\n\n/**\n *\n * OrderHistory component.\n * @extends {React.Component>}\n */\n@observer\nclass OrderHistory extends React.Component> {\n @observable private orderHistory!: IOrderHistory;\n\n @observable private viewState!: IOrderHistoryViewState;\n\n @observable private _viewMode: OrderHistoryViewMode;\n\n private originatorList!: OrderOriginator[];\n\n private filterState: OrderHistoryFilterState;\n\n private pageSize!: number;\n\n private paging!: IPaging;\n\n private readonly telemetryContent?: ITelemetryContent;\n\n private readonly payLoad: IPayLoad;\n\n constructor(props: IOrderHistoryProps) {\n super(props);\n this.initState();\n this._viewMode = OrderHistoryViewMode.detailedView;\n this.filterState = OrderHistoryFilterState.CurrentUser;\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n this.payLoad = getPayloadObject('click', this.telemetryContent, '');\n }\n\n public componentDidMount(): void {\n if (this.props.context.actionContext.requestContext.user.isAuthenticated) {\n this._updateOrderHistory();\n } else {\n this.viewState.isDataReady = true;\n }\n }\n\n public shouldComponentUpdate(nextProps: IOrderHistoryProps, nextState: IOrderHistoryViewState): 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 {\n const {\n config: { heading, className, showChannelInfo, shouldShowCount },\n resources: {\n genericErrorMessage,\n noOrderHistoryLable,\n moreButtonText,\n backToShopping,\n orderCountLabel,\n ordersCountLabel,\n loadingLabel\n }\n } = this.props;\n const { salesOrders, products } = this.orderHistory;\n const { isDataReady, hasError, isShowMoreButton, isLoading } = this.viewState;\n const backToShoppingUrl = Msdyn365.getUrlSync('home', this.props.context.actionContext) || '';\n const channelIdentities = this.props.data.channels.result && this.props.data.channels.result.channelIdentities;\n const orgUnitLocations = this.props.data.orgUnitLocations.result && this.props.data.orgUnitLocations.result.orgUnitLocations;\n const customer = this.props.data.customerInformation && this.props.data.customerInformation.result;\n\n let viewProps: IOrderHistoryViewProps = {\n ...this.props,\n orderHistory: this.orderHistory,\n viewState: this.viewState,\n orderHistoryProps: {\n moduleProps: this.props,\n className: classname('ms-order-history', className)\n },\n header: {\n headerProps: { className: 'ms-order-history__header' },\n heading: heading && heading.text && (\n \n ),\n extraActions: this.renderExtraActions()\n },\n backToShoppingLink: backToShoppingUrl && (\n \n )\n };\n\n if (hasError) {\n viewProps = {\n ...viewProps,\n alert: