{"version":3,"file":"static/js/f9644c5c9ecb7dc998e2.bundle.js","mappings":"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","sources":["webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/actions/get-date-refiner-options.ts?ceee","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/actions/get-order-history-with-search-and-filters.ts?d907","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/actions/get-order-status-refiner-options.ts?f617","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/actions/get-search-options.ts?f248","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/actions/get-sort-options.ts?7dea","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/common/refiner-option.ts?b3fd","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/common/search-option.ts?20d1","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/common/sort-option.ts?5e94","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/common/refiner-option-mappings.ts?5f11","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/common/sort-option-mappings.ts?635a","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/order-history-with-search-and-filters.tsx?e2e5","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/common/search-option-mappings.ts?a532","webpack://Dobbies.Commerce/./src/modules/order-history-with-search-and-filters/order-history-with-search-and-filters.view.tsx?0c93"],"sourcesContent":["/*!\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 ICreateActionContext,\n IGeneric\n} from '@msdyn365-commerce/core';\nimport { DateRefinerOptionItem } from '../common/refiner-option';\n\n/**\n * Gets the date refiner options.\n * @returns - List of refiner options.\n */\nconst getDateRefinerOptions = () => async (ctx: IActionContext): Promise => {\n return Promise.resolve([\n DateRefinerOptionItem.LastSevenDays,\n DateRefinerOptionItem.LastThirtyDays,\n DateRefinerOptionItem.LastThreeMonths,\n DateRefinerOptionItem.LastSixMonths,\n DateRefinerOptionItem.Customized\n ]);\n};\n\n/**\n * Action input.\n */\nexport class GetDateRefinerOptionsInput implements IActionInput {\n public getCacheKey = () => 'OrderHistoryWithSearchAndFiltersDateRefinerOptions';\n\n public getCacheObjectType = () => 'OrderHistoryWithSearchAndFiltersDateRefinerOptions';\n\n public dataCacheType = (): CacheType => 'instance';\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 createGetDateRefinerOptionsInput = (inputData: ICreateActionContext>): IActionInput => {\n return new GetDateRefinerOptionsInput();\n};\n\n/**\n * Get action.\n * @param input - Input data.\n * @param context - Action context.\n * @returns - List of refiner options.\n */\nexport async function getDateRefinerOptionsAction(\n input: GetDateRefinerOptionsInput,\n context: IActionContext\n): Promise {\n if (!context) {\n throw new Error('getDateRefinerOptionsAction - Action context cannot be null/undefined');\n }\n\n let refinerOptions: DateRefinerOptionItem[] = [];\n\n try {\n refinerOptions = await getDateRefinerOptions()(context);\n } catch (error) {\n throw error;\n }\n\n return refinerOptions;\n}\n\n/**\n * Get date refiner options action.\n * @param id - Unique Id for data action.\n * @param context - Action context.\n * @param input - Input for data action.\n * @returns Api response.\n */\nexport const getDateRefinerOptionsActionDataAction = createObservableDataAction({\n id: '@msdyn365-commerce-modules/order-history-with-search-and-filters/get-date-refiner-options',\n action: getDateRefinerOptionsAction as IAction,\n input: createGetDateRefinerOptionsInput\n});\n\nexport default getDateRefinerOptionsActionDataAction;\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 { SalesLine } from '@msdyn365-commerce/retail-proxy';\nimport { buildCacheKey, getSimpleProducts, ProductInput } from '@msdyn365-commerce-modules/retail-actions';\n\nimport {\n getSalesOrdersByLookupCriteriaAsync,\n searchOrdersAsync\n} from '@msdyn365-commerce/retail-proxy/dist/DataActions/SalesOrdersDataActions.g';\nimport { getCurrentAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/BusinessPartnersDataActions.g';\nimport {\n CustomerOrderType,\n OrderSearchCriteria,\n QueryResultSettings,\n SalesOrder,\n SalesOrderLookupBySalesId,\n SalesOrderLookupByTransactionId,\n SalesOrdersLookupCriteria,\n SimpleProduct,\n SortColumn\n} from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\n\nimport { isNullOrWhiteSpace } from '@msdyn365-commerce-modules/utilities';\nimport { OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState } from '../components';\n\n/**\n * IGetOrderHistoryWithSearchAndFiltersPaging interface.\n */\nexport interface IGetOrderHistoryWithSearchAndFiltersPaging {\n top: number;\n nextPageToken: string;\n}\n\n/**\n * IGetOrderHistoryWithSearchAndFiltersSorting interface.\n */\nexport interface IGetOrderHistoryWithSearchAndFiltersSorting {\n columnName: string;\n isDescending: boolean;\n}\n\nexport interface IOrderHistoryWithSearchAndFilterError {\n statusCode?: number;\n errorMessageResource?: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n error?: any;\n}\n/**\n * IOrderHistoryWithSearchAndFiltersResult interface.\n */\nexport interface IOrderHistoryWithSearchAndFiltersResult {\n salesOrders: SalesOrder[];\n products: SimpleProduct[];\n paging: IGetOrderHistoryWithSearchAndFiltersPaging;\n error?: IOrderHistoryWithSearchAndFilterError;\n}\n\n/**\n * IGetOrdersResult interface.\n */\ninterface IGetOrdersResult {\n salesOrders: SalesOrder[];\n paging: IGetOrderHistoryWithSearchAndFiltersPaging;\n error?: IOrderHistoryWithSearchAndFilterError;\n}\n\n/**\n * Calls the Retail API and returns the orders.\n * @param paging - The paging information to use in SearchOrders API.\n * @param sorting - The sorting information to use in SearchOrders API.\n * @param organizationWideSelectorState - The organization wide selector state.\n * @param orderSearchCriteria - The search criteria.\n * @returns Collection of SalesOrder.\n */\nconst getOrders = (\n paging: IGetOrderHistoryWithSearchAndFiltersPaging,\n sorting: IGetOrderHistoryWithSearchAndFiltersSorting | undefined,\n organizationWideSelectorState: OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState,\n orderSearchCriteria: OrderSearchCriteria\n) => async (ctx: IActionContext): Promise => {\n let searchCriteria: OrderSearchCriteria;\n switch (organizationWideSelectorState) {\n case OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState.CurrentUser:\n searchCriteria = {\n ...orderSearchCriteria,\n CustomerAccountNumber: ctx.requestContext.user.customerAccountNumber,\n OrderType: CustomerOrderType.SalesOrder\n };\n break;\n case OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState.OrganizationWide:\n const businessPartner = await getCurrentAsync({ callerContext: ctx });\n if (!businessPartner) {\n throw new Error('Unable to get order history. Failed to retrieve business partner id.');\n }\n searchCriteria = {\n ...orderSearchCriteria,\n BusinessPartnerId: businessPartner.BusinessPartnerId,\n OrderType: CustomerOrderType.SalesOrder\n };\n break;\n default:\n throw new Error('getSalesOrderWithHydrationsAction - Invalid OrganizationOrderHistorySelectorState passed');\n }\n\n const queryResultSettings: QueryResultSettings = {\n Paging: {\n Top: paging.top,\n NextPageToken: paging.nextPageToken // this value will be overwritten in server side.\n }\n };\n\n if (sorting) {\n queryResultSettings.Sorting = {\n Columns: [\n {\n ColumnName: sorting.columnName,\n IsDescending: sorting.isDescending\n } as SortColumn\n ]\n };\n }\n\n const searchOrdersResults = searchOrdersAsync(\n {\n callerContext: ctx,\n bypassCache: 'get',\n queryResultSettings: queryResultSettings\n },\n searchCriteria,\n paging.nextPageToken\n );\n\n const errorDetails: IOrderHistoryWithSearchAndFilterError = {};\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const searchOrdersResponse: SalesOrder[] = await searchOrdersResults.catch((error: any) => {\n errorDetails.statusCode = error?.statusCode;\n errorDetails.errorMessageResource = error?.message;\n errorDetails.error = error;\n return [];\n });\n\n const nextLinkUrl = searchOrdersResults.metadata?.others?.nextLink;\n const nextPageLink = nextLinkUrl !== undefined ? new URL(nextLinkUrl).searchParams.get('nextPageToken') : undefined;\n const newNextPageToken = nextPageLink !== null ? nextPageLink : undefined;\n\n const salesOrdersLookupCriteria: SalesOrdersLookupCriteria = {};\n salesOrdersLookupCriteria.SalesOrderLookups = searchOrdersResponse?.map((order: SalesOrder) => {\n if (order.SalesId && !isNullOrWhiteSpace(order.SalesId)) {\n const salesOrderLookupBySalesId = {\n SalesId: order.SalesId,\n '@odata.type': '#Microsoft.Dynamics.Commerce.Runtime.DataModel.SalesOrderLookupBySalesId'\n } as SalesOrderLookupBySalesId;\n return salesOrderLookupBySalesId;\n } else if (order.Id && !isNullOrWhiteSpace(order.Id)) {\n const salesOrderLookupByTransactionId = {\n TransactionId: order.Id,\n ChannelId: order.ChannelId,\n StoreId: order.StoreId,\n TerminalId: order.TerminalId,\n '@odata.type': '#Microsoft.Dynamics.Commerce.Runtime.DataModel.SalesOrderLookupByTransactionId'\n } as SalesOrderLookupByTransactionId;\n return salesOrderLookupByTransactionId;\n } else {\n throw new Error('Invalid input - There are no orders to view.');\n }\n });\n\n const orderHistoryResults = getSalesOrdersByLookupCriteriaAsync(\n {\n callerContext: ctx,\n bypassCache: 'get'\n },\n salesOrdersLookupCriteria\n );\n\n const orderHistoryResponse = await orderHistoryResults;\n\n // organize the order history by the order of the search results\n const orderHistoryResponseMap = new Map();\n orderHistoryResponse.forEach(order => {\n if (order.SalesId && !isNullOrWhiteSpace(order.SalesId)) {\n orderHistoryResponseMap.set(order.SalesId, order);\n }\n\n if (order.Id && !isNullOrWhiteSpace(order.Id)) {\n const key = `${order.Id}_${order.ChannelId}_${order.StoreId}_${order.TerminalId}`;\n orderHistoryResponseMap.set(key, order);\n }\n });\n\n const orderedOrderHistoryResponse = searchOrdersResponse\n ?.map((order: SalesOrder) => {\n let key: string;\n if (order.SalesId && !isNullOrWhiteSpace(order.SalesId)) {\n key = order.SalesId;\n } else if (order.Id && !isNullOrWhiteSpace(order.Id)) {\n key = `${order.Id}_${order.ChannelId}_${order.StoreId}_${order.TerminalId}`;\n } else {\n throw new Error('Invalid order - Missing key (SalesId / Id).');\n }\n return orderHistoryResponseMap.get(key);\n })\n .filter(order => order !== undefined);\n\n return {\n salesOrders: orderedOrderHistoryResponse,\n error: errorDetails,\n paging: {\n top: paging.top,\n nextPageToken: newNextPageToken || ''\n }\n } as IGetOrdersResult;\n};\n\n/**\n * Calls the Retail API and returns the products.\n * @param productIds - Collection of products identifiers.\n * @param channelId - Channel identifier.\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 GetOrderHistoryWithSearchAndFiltersInput implements IActionInput {\n public paging: IGetOrderHistoryWithSearchAndFiltersPaging;\n\n public sorting?: IGetOrderHistoryWithSearchAndFiltersSorting;\n\n public organizationWideSelectorState: OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState;\n\n public orderSearchCriteria: OrderSearchCriteria;\n\n private readonly apiSettings: ICommerceApiSettings;\n\n constructor(\n paging: IGetOrderHistoryWithSearchAndFiltersPaging,\n apiSettings: ICommerceApiSettings,\n organizationWideSelectorState?: OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState,\n orderSearchCriteria?: OrderSearchCriteria,\n sorting?: IGetOrderHistoryWithSearchAndFiltersSorting\n ) {\n this.apiSettings = apiSettings;\n this.paging = paging;\n this.sorting = sorting;\n this.organizationWideSelectorState =\n organizationWideSelectorState || OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState.CurrentUser;\n this.orderSearchCriteria = orderSearchCriteria || ({} as OrderSearchCriteria);\n }\n\n public getCacheKey = () => buildCacheKey('OrderHistoryWithSearchAndFilters', this.apiSettings);\n\n /**\n * GetCacheObjectType.\n * @returns String.\n */\n public getCacheObjectType = () => 'OrderHistoryWithSearchAndFilters';\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 {SalesOrder[]} 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: SalesOrder[], 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 orders given search and filters options.\n * @param input - GetOrderHistoryWithSearchAndFiltersInput.\n * @param context - Channel context.\n * @returns - Order History props.\n */\nexport async function getGetOrderHistoryWithSearchAndFiltersAction(\n input: GetOrderHistoryWithSearchAndFiltersInput,\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 const response: IGetOrdersResult = await getOrders(\n input.paging,\n input.sorting,\n input.organizationWideSelectorState,\n input.orderSearchCriteria\n )(context);\n const salesOrders: SalesOrder[] = response.salesOrders;\n const paging: IGetOrderHistoryWithSearchAndFiltersPaging = response.paging;\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 paging: paging,\n error: response.error\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): IOrderHistoryWithSearchAndFiltersResult => {\n const products = productList.reduce((memo, list) => {\n return [...memo, ...list];\n }, []);\n return {\n salesOrders,\n products,\n paging: paging,\n error: response.error\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 getGetOrderHistoryWithSearchAndFiltersActionDataAction = createObservableDataAction({\n id: '@msdyn365-commerce-modules/order-history-with-search-and-filters/get-order-history-with-search-and-filters',\n action: getGetOrderHistoryWithSearchAndFiltersAction as IAction\n});\n\nexport default getGetOrderHistoryWithSearchAndFiltersActionDataAction;\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 ICreateActionContext,\n IGeneric\n} from '@msdyn365-commerce/core';\nimport { OrderStatusRefinerOptionItem } from '../common/refiner-option';\n\n/**\n * Gets the order status refiner options.\n * @returns - List of refiner options.\n */\nconst getOrderStatusRefinerOptions = () => async (ctx: IActionContext): Promise => {\n return Promise.resolve([\n OrderStatusRefinerOptionItem.Created,\n OrderStatusRefinerOptionItem.Invoiced,\n OrderStatusRefinerOptionItem.Canceled\n ]);\n};\n\n/**\n * Action input.\n */\nexport class GetOrderStatusRefinerOptionsInput implements IActionInput {\n public getCacheKey = () => 'OrderHistoryWithSearchAndFiltersOrderStatusRefinerOptions';\n\n public getCacheObjectType = () => 'OrderHistoryWithSearchAndFiltersOrderStatusRefinerOptions';\n\n public dataCacheType = (): CacheType => 'instance';\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 createGetOrderStatusRefinerOptionsInput = (inputData: ICreateActionContext>): IActionInput => {\n return new GetOrderStatusRefinerOptionsInput();\n};\n\n/**\n * Get action.\n * @param input - Input data.\n * @param context - Action context.\n * @returns - List of refiner options.\n */\nexport async function getOrderStatusRefinerOptionsAction(\n input: GetOrderStatusRefinerOptionsInput,\n context: IActionContext\n): Promise {\n if (!context) {\n throw new Error('getOrderStatusRefinerOptionsAction - Action context cannot be null/undefined');\n }\n\n let refinerOptions: OrderStatusRefinerOptionItem[] = [];\n\n try {\n refinerOptions = await getOrderStatusRefinerOptions()(context);\n } catch (error) {\n throw error;\n }\n\n return refinerOptions;\n}\n\n/**\n * Get order status refiner options action.\n * @param id - Unique Id for data action.\n * @param context - Action context.\n * @param input - Input for data action.\n * @returns Api response.\n */\nexport const getOrderStatusRefinerOptionsActionDataAction = createObservableDataAction({\n id: '@msdyn365-commerce-modules/order-history-with-search-and-filters/get-order-status-refiner-options',\n action: getOrderStatusRefinerOptionsAction as IAction,\n input: createGetOrderStatusRefinerOptionsInput\n});\n\nexport default getOrderStatusRefinerOptionsActionDataAction;\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 ICreateActionContext,\n IGeneric\n} from '@msdyn365-commerce/core';\nimport { SearchOption } from '../common/search-option';\n\n/**\n * Gets the search options.\n * @returns - List of search options.\n */\nconst getSearchOptions = () => async (ctx: IActionContext): Promise => {\n return Promise.resolve([\n SearchOption.OrderNumber,\n SearchOption.ConfirmationId,\n SearchOption.ChannelName,\n SearchOption.CustomerRequisition\n ]);\n};\n\n/**\n * Action input.\n */\nexport class GetSearchOptionsInput implements IActionInput {\n public getCacheKey = () => 'OrderHistoryWithSearchAndFiltersSearchOptions';\n\n public getCacheObjectType = () => 'OrderHistoryWithSearchAndFiltersSearchOptions';\n\n public dataCacheType = (): CacheType => 'instance';\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 createGetSearchOptionsInput = (inputData: ICreateActionContext>): IActionInput => {\n return new GetSearchOptionsInput();\n};\n\n/**\n * Get action.\n * @param input - Input data.\n * @param context - Action context.\n * @returns - List of search options.\n */\nexport async function getSearchOptionsAction(input: GetSearchOptionsInput, context: IActionContext): Promise {\n if (!context) {\n throw new Error('getSearchOptionsAction - Action context cannot be null/undefined');\n }\n\n let searchOptions: SearchOption[] = [];\n\n try {\n searchOptions = await getSearchOptions()(context);\n } catch (error) {\n throw error;\n }\n\n return searchOptions;\n}\n\n/**\n * Get search options action.\n * @param id - Unique Id for data action.\n * @param context - Action context.\n * @param input - Input for data action.\n * @returns Api response.\n */\nexport const getSearchOptionsActionDataAction = createObservableDataAction({\n id: '@msdyn365-commerce-modules/order-history-with-search-and-filters/get-search-options',\n action: getSearchOptionsAction as IAction,\n input: createGetSearchOptionsInput\n});\n\nexport default getSearchOptionsActionDataAction;\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 ICreateActionContext,\n IGeneric\n} from '@msdyn365-commerce/core';\nimport { SortOption } from '../common/sort-option';\n\n/**\n * Gets the sort options.\n * @returns - List of sort options.\n */\nconst getAllSortOptions = () => async (ctx: IActionContext): Promise => {\n return Promise.resolve([\n SortOption.CreatedDateTimeDescending,\n SortOption.CreatedDateTimeAscending,\n SortOption.ConfirmedShipDateDescending,\n SortOption.ConfirmedShipDateAscending\n ]);\n};\n\n/**\n * Gets the sort options without confirmed ship date options.\n * @returns - List of sort options.\n */\nconst getSortOptionsWithoutConfirmedShipDate = () => async (ctx: IActionContext): Promise => {\n return Promise.resolve([SortOption.CreatedDateTimeDescending, SortOption.CreatedDateTimeAscending]);\n};\n\n/**\n * Action input.\n */\nexport class GetSortOptionsInput implements IActionInput {\n public allowSortingByConfirmedShipDate: boolean;\n\n constructor(allowSortingByConfirmedShipDate: boolean) {\n this.allowSortingByConfirmedShipDate = allowSortingByConfirmedShipDate;\n }\n\n public getCacheKey = () => 'OrderHistoryWithSearchAndFiltersSortOptions';\n\n public getCacheObjectType = () => 'OrderHistoryWithSearchAndFiltersSortOptions';\n\n public dataCacheType = (): CacheType => 'instance';\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 createGetSortOptionsInput = (inputData: ICreateActionContext>): IActionInput => {\n return new GetSortOptionsInput(inputData.config?.showConfirmedShipDateSortingOptions || false);\n};\n\n/**\n * Get action.\n * @param input - Input data.\n * @param context - Action context.\n * @returns - List of sort options.\n */\nexport async function getSortOptionsAction(input: GetSortOptionsInput, context: IActionContext): Promise {\n if (!context) {\n throw new Error('getSortOptionsAction - Action context cannot be null/undefined');\n }\n\n let sortOptions: SortOption[] = [];\n\n try {\n sortOptions = input.allowSortingByConfirmedShipDate\n ? await getAllSortOptions()(context)\n : await getSortOptionsWithoutConfirmedShipDate()(context);\n } catch (error) {\n throw error;\n }\n\n return sortOptions;\n}\n\n/**\n * Get sort options action.\n * @param id - Unique Id for data action.\n * @param context - Action context.\n * @param input - Input for data action.\n * @returns Api response.\n */\nexport const getSortOptionsActionDataAction = createObservableDataAction({\n id: '@msdyn365-commerce-modules/order-history-with-search-and-filters/get-sort-options',\n action: getSortOptionsAction as IAction,\n input: createGetSortOptionsInput\n});\n\nexport default getSortOptionsActionDataAction;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { SalesStatus } from '@msdyn365-commerce/retail-proxy';\n\nexport enum RefinerSourceType {\n Origin = 1,\n CreatedDate = 2,\n OrderStatus = 3\n}\n\nexport enum DateRefinerOptionItem {\n LastSevenDays = 0,\n LastThirtyDays = 1,\n LastThreeMonths = 2,\n LastSixMonths = 3,\n Customized = 999\n}\n\nexport enum OrderStatusRefinerOptionItem {\n Created = SalesStatus.Created,\n Delivered = SalesStatus.Delivered,\n Invoiced = SalesStatus.Invoiced,\n Canceled = SalesStatus.Canceled\n}\n\nexport interface IDateRange {\n startDate?: Date;\n endDate?: Date;\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nexport enum SearchOption {\n OrderNumber = 0,\n ConfirmationId = 1,\n ChannelName = 2,\n CustomerRequisition = 3\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nexport enum SortOption {\n CreatedDateTimeAscending = 'CreatedDateTimeAscending',\n CreatedDateTimeDescending = 'CreatedDateTimeDescending',\n ConfirmedShipDateAscending = 'ConfirmedShipDateAscending',\n ConfirmedShipDateDescending = 'ConfirmedShipDateDescending'\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IRefinerItemData, RefinerItemType } from '@msdyn365-commerce/components';\nimport { ChannelIdentity, SalesStatus } from '@msdyn365-commerce/retail-proxy';\nimport { IOrderHistoryWithSearchAndFiltersResources } from '../order-history-with-search-and-filters.props.autogenerated';\nimport { getOrderStatusLabel } from './get-sales-order';\nimport { DateRefinerOptionItem, IDateRange, OrderStatusRefinerOptionItem, RefinerSourceType } from './refiner-option';\n\nexport function mapChannelIdentityIntoIRefinerItemData(channelIdentity: ChannelIdentity): IRefinerItemData {\n return {\n sourceTypeValue: RefinerSourceType.Origin,\n label: channelIdentity.Name ?? channelIdentity.RecordId.toString(),\n value: channelIdentity.RecordId.toString(),\n refinerItemId: channelIdentity.RecordId,\n isChecked: false,\n itemType: RefinerItemType.Check\n };\n}\n\nexport function mapDateRefinerOptionIntoIRefinerItemData(\n dateRefinerOptionItem: DateRefinerOptionItem,\n resources: IOrderHistoryWithSearchAndFiltersResources\n): IRefinerItemData {\n let itemData: IRefinerItemData;\n switch (dateRefinerOptionItem) {\n case DateRefinerOptionItem.LastSevenDays:\n itemData = {\n label: resources.lastSevenDaysCreatedDateRefinerItemLabel,\n itemType: RefinerItemType.Check\n } as IRefinerItemData;\n break;\n case DateRefinerOptionItem.LastThirtyDays:\n itemData = {\n label: resources.lastThirtyDaysCreatedDateRefinerItemLabel,\n itemType: RefinerItemType.Check\n } as IRefinerItemData;\n break;\n case DateRefinerOptionItem.LastThreeMonths:\n itemData = {\n label: resources.lastThreeMonthsCreatedDateRefinerItemLabel,\n itemType: RefinerItemType.Check\n } as IRefinerItemData;\n break;\n case DateRefinerOptionItem.LastSixMonths:\n itemData = {\n label: resources.lastSixMonthsCreatedDateRefinerItemLabel,\n itemType: RefinerItemType.Check\n } as IRefinerItemData;\n break;\n case DateRefinerOptionItem.Customized:\n itemData = {\n label: resources.customizedCreatedDateRefinerItemLabel,\n minLabel: resources.customizedStartDateRefinerItemLabel,\n maxLabel: resources.customizedEndDateRefinerItemLabel,\n itemType: RefinerItemType.DateRange\n } as IRefinerItemData;\n break;\n default:\n throw new Error(`Invalid date refiner option: ${dateRefinerOptionItem}`);\n }\n\n return {\n ...itemData,\n sourceTypeValue: RefinerSourceType.CreatedDate,\n value: dateRefinerOptionItem.toString(),\n refinerItemId: dateRefinerOptionItem,\n isChecked: false\n } as IRefinerItemData;\n}\n\nexport function mapIRefinerItemDataIntoDateRefinerOptionItem(refinerItemData?: IRefinerItemData): DateRefinerOptionItem | undefined {\n if (!refinerItemData) {\n return;\n }\n\n const value = Number(refinerItemData.value);\n if (isNaN(value)) {\n return;\n }\n\n switch (value) {\n case DateRefinerOptionItem.LastSevenDays:\n case DateRefinerOptionItem.LastThirtyDays:\n case DateRefinerOptionItem.LastThreeMonths:\n case DateRefinerOptionItem.LastSixMonths:\n case DateRefinerOptionItem.Customized:\n return value;\n default:\n return;\n }\n}\n\nexport function getDateRange(dateRefinerOptionItem: DateRefinerOptionItem): IDateRange {\n switch (dateRefinerOptionItem) {\n case DateRefinerOptionItem.LastSevenDays:\n return {\n startDate: new Date(Date.now() - 7 * 24 * 60 * 60 * 1000),\n endDate: new Date()\n } as IDateRange;\n case DateRefinerOptionItem.LastThirtyDays:\n return {\n startDate: new Date(Date.now() - 30 * 24 * 60 * 60 * 1000),\n endDate: new Date()\n } as IDateRange;\n case DateRefinerOptionItem.LastThreeMonths:\n return {\n startDate: new Date(Date.now() - 3 * 30 * 24 * 60 * 60 * 1000),\n endDate: new Date()\n } as IDateRange;\n case DateRefinerOptionItem.LastSixMonths:\n return {\n startDate: new Date(Date.now() - 6 * 30 * 24 * 60 * 60 * 1000),\n endDate: new Date()\n } as IDateRange;\n default:\n return {} as IDateRange;\n }\n}\n\nexport function getDateFromString(dateString?: string): Date | undefined {\n if (!dateString) {\n return undefined;\n }\n\n const parts: string[] = dateString.split('-');\n if (parts.length !== 3) {\n return undefined;\n }\n\n const now = new Date();\n return new Date(Number(parts[0]), Number(parts[1]) - 1, Number(parts[2]), now.getHours(), now.getMinutes(), now.getSeconds());\n}\n\nexport function mapOrderStatusRefinerOptionIntoIRefinerItemData(\n orderStatusRefinerOptionItem: OrderStatusRefinerOptionItem,\n resources: IOrderHistoryWithSearchAndFiltersResources\n): IRefinerItemData {\n let itemData: IRefinerItemData;\n switch (orderStatusRefinerOptionItem) {\n case OrderStatusRefinerOptionItem.Created:\n case OrderStatusRefinerOptionItem.Delivered:\n case OrderStatusRefinerOptionItem.Invoiced:\n case OrderStatusRefinerOptionItem.Canceled:\n itemData = {\n label: getOrderStatusRefinerOptionItemLabel(orderStatusRefinerOptionItem, resources)\n } as IRefinerItemData;\n break;\n default:\n throw new Error(`Invalid order status refiner option: ${orderStatusRefinerOptionItem}`);\n }\n\n return {\n ...itemData,\n sourceTypeValue: RefinerSourceType.OrderStatus,\n value: orderStatusRefinerOptionItem.toString(),\n refinerItemId: orderStatusRefinerOptionItem,\n isChecked: false,\n itemType: RefinerItemType.Check\n } as IRefinerItemData;\n}\n\nfunction getOrderStatusRefinerOptionItemLabel(\n orderStatusRefinerOptionItem: OrderStatusRefinerOptionItem,\n resources: IOrderHistoryWithSearchAndFiltersResources\n): string {\n return getOrderStatusLabel(mapOrderStatusRefinerOptionItemIntoSalesStatus(orderStatusRefinerOptionItem), resources);\n}\n\nexport function mapIRefinerItemDataIntoOrderStatusRefinerOptionItem(\n refinerItemData?: IRefinerItemData\n): OrderStatusRefinerOptionItem | undefined {\n if (!refinerItemData) {\n return;\n }\n\n const value = Number(refinerItemData.value);\n if (isNaN(value)) {\n return;\n }\n\n switch (value) {\n case OrderStatusRefinerOptionItem.Created:\n case OrderStatusRefinerOptionItem.Delivered:\n case OrderStatusRefinerOptionItem.Invoiced:\n case OrderStatusRefinerOptionItem.Canceled:\n return value as OrderStatusRefinerOptionItem;\n default:\n return;\n }\n}\n\nexport function mapOrderStatusRefinerOptionItemIntoSalesStatus(\n orderStatusRefinerOptionItem?: OrderStatusRefinerOptionItem\n): SalesStatus | undefined {\n switch (orderStatusRefinerOptionItem) {\n case OrderStatusRefinerOptionItem.Created:\n return SalesStatus.Created;\n case OrderStatusRefinerOptionItem.Delivered:\n return SalesStatus.Delivered;\n case OrderStatusRefinerOptionItem.Invoiced:\n return SalesStatus.Invoiced;\n case OrderStatusRefinerOptionItem.Canceled:\n return SalesStatus.Canceled;\n default:\n return;\n }\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IRefinerSortOption } from '@msdyn365-commerce/components';\nimport { IOrderHistoryWithSearchAndFiltersResources } from '../order-history-with-search-and-filters.props.autogenerated';\nimport { SortOption } from './sort-option';\n\nexport function mapSortOptionIntoIRefinerSortOption(\n sortOption: SortOption,\n resources: IOrderHistoryWithSearchAndFiltersResources\n): IRefinerSortOption {\n switch (sortOption) {\n case SortOption.CreatedDateTimeAscending:\n return {\n label: resources.createdDateTimeAscendingSortOptionLabel,\n value: SortOption.CreatedDateTimeAscending\n } as IRefinerSortOption;\n case SortOption.CreatedDateTimeDescending:\n return {\n label: resources.createdDateTimeDescendingSortOptionLabel,\n value: SortOption.CreatedDateTimeDescending\n } as IRefinerSortOption;\n case SortOption.ConfirmedShipDateAscending:\n return {\n label: resources.confirmedShipDateAscendingSortOptionLabel,\n value: SortOption.ConfirmedShipDateAscending\n } as IRefinerSortOption;\n case SortOption.ConfirmedShipDateDescending:\n return {\n label: resources.confirmedShipDateDescendingSortOptionLabel,\n value: SortOption.ConfirmedShipDateDescending\n } as IRefinerSortOption;\n default:\n throw new Error(`Invalid sort option: ${sortOption}`);\n }\n}\n\nexport function mapIRefinerSortOptionIntoSortOption(refinerSortOption?: IRefinerSortOption): SortOption | undefined {\n if (!refinerSortOption) {\n return;\n }\n\n if (refinerSortOption.value === SortOption.CreatedDateTimeAscending.toString()) {\n return SortOption.CreatedDateTimeAscending;\n }\n\n if (refinerSortOption.value === SortOption.CreatedDateTimeDescending.toString()) {\n return SortOption.CreatedDateTimeDescending;\n }\n\n if (refinerSortOption.value === SortOption.ConfirmedShipDateAscending.toString()) {\n return SortOption.ConfirmedShipDateAscending;\n }\n\n if (refinerSortOption.value === SortOption.ConfirmedShipDateDescending.toString()) {\n return SortOption.ConfirmedShipDateDescending;\n }\n\n return;\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 IPayLoad,\n isMobile,\n ITelemetryContent,\n TelemetryConstant,\n VariantType\n} from '@msdyn365-commerce-modules/utilities';\n\nimport {\n getUpdatedRefinementCriteria,\n IRefinerApplyProps,\n IRefinerChoiceSummaryClickNotification,\n IRefinerChoiceSummaryProps,\n IRefinerFooterProps,\n IRefinerHeaderProps,\n IRefinerItemData,\n IRefinerItemToggleNotification,\n IRefinerModalProps,\n IRefinerModalToggleProps,\n IRefinerProps,\n IRefinerSortOption,\n IRefinerSortProps,\n IRefinerToggleProps,\n ISearchBarOption,\n ISearchBarProps,\n isMatchingRefinementCriterion,\n RefinerOptionsComponent,\n RefinerOptionsType\n} from '@msdyn365-commerce/components';\n\nimport classname from 'classnames';\nimport { computed, observable, transaction } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { OrderOriginator, OrderSearchCriteria, SalesOrder, SalesStatus } from '@msdyn365-commerce/retail-proxy';\nimport { Label } from '../../common/label';\nimport {\n getGetOrderHistoryWithSearchAndFiltersAction,\n GetOrderHistoryWithSearchAndFiltersInput,\n IGetOrderHistoryWithSearchAndFiltersSorting,\n IOrderHistoryWithSearchAndFiltersResult\n} from './actions/get-order-history-with-search-and-filters';\nimport { getOriginatorsAction, GetOrderOriginatorsInput } from '../../actions/get-sales-order-originators';\nimport {\n IOrderHistoryWithSearchAndFiltersHeaderProps,\n IOrderHistoryWithSearchAndFiltersOrganizationWideSelectorProps,\n OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState,\n OrderHistoryWithSearchAndFiltersViewModeState,\n IOrderHistoryWithSearchAndFiltersViewModeProps,\n OrderHistoryWithSearchAndFiltersViewModeComponent,\n OrderHistoryWithSearchAndFiltersOrderTableComponent\n} from './components';\nimport { IOrderHistoryWithSearchAndFiltersData } from './order-history-with-search-and-filters.data';\nimport { IOrderHistoryWithSearchAndFiltersProps } from './order-history-with-search-and-filters.props.autogenerated';\nimport { SearchOption } from './common/search-option';\nimport { mapISearchBarOptionIntoSearchOption, mapSearchOptionIntoISearchBarOption } from './common/search-option-mappings';\nimport { DateRefinerOptionItem, RefinerSourceType } from './common/refiner-option';\nimport {\n getDateFromString,\n getDateRange,\n mapChannelIdentityIntoIRefinerItemData,\n mapDateRefinerOptionIntoIRefinerItemData,\n mapIRefinerItemDataIntoDateRefinerOptionItem,\n mapIRefinerItemDataIntoOrderStatusRefinerOptionItem,\n mapOrderStatusRefinerOptionIntoIRefinerItemData,\n mapOrderStatusRefinerOptionItemIntoSalesStatus\n} from './common/refiner-option-mappings';\nimport { OrderHistoryWithSearchAndFiltersOrderListComponent } from './components/order-history-with-search-and-filters-order-list.component';\nimport { mapIRefinerSortOptionIntoSortOption, mapSortOptionIntoIRefinerSortOption } from './common/sort-option-mappings';\nimport { SortOption } from './common/sort-option';\n\ninterface IOrderHistoryWithSearchAndFiltersViewRefinerState {\n isModalOpen: boolean;\n isExpanded: boolean;\n currentSortOption?: IRefinerSortOption;\n}\n\ninterface IOrderHistoryWithSearchAndFiltersViewSearchBarState {\n currentSearchOption?: ISearchBarOption;\n currentSearchText?: string;\n}\n\nexport interface IOrderHistoryWithSearchAndFiltersViewState {\n isDataReady: boolean;\n hasError: boolean;\n isLoading: boolean;\n isShowMoreButton: boolean;\n errorCode?: string;\n errorMessage?: string;\n}\n\nexport interface IOrderHistoryWithSearchAndFiltersViewProps\n extends IOrderHistoryWithSearchAndFiltersProps {\n orderHistoryWithSearchAndFiltersProps: IModuleProps;\n headerProps: IOrderHistoryWithSearchAndFiltersHeaderProps;\n organizationWideSelectorProps?: IOrderHistoryWithSearchAndFiltersOrganizationWideSelectorProps;\n viewState: IOrderHistoryWithSearchAndFiltersViewState;\n searchBarProps?: ISearchBarProps;\n refinerProps: IRefinerProps;\n orderHistorywithSearchAndFiltersResult: IOrderHistoryWithSearchAndFiltersResult;\n alert?: React.ReactNode;\n loading?: React.ReactNode;\n emptyMessage?: React.ReactNode;\n backToShoppingLink?: React.ReactNode;\n list?: React.ReactNode;\n table?: React.ReactNode;\n moreButton?: React.ReactNode;\n}\n\n/**\n * Grid size enum.\n */\nexport type GridSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\n/**\n *\n * OrderHistoryWithSearchAndFilters component.\n * @extends {React.Component>}\n */\n@observer\nclass OrderHistoryWithSearchAndFilters extends React.Component<\n IOrderHistoryWithSearchAndFiltersProps\n> {\n @observable private orderHistoryWithSearchAndFilters!: IOrderHistoryWithSearchAndFiltersResult;\n\n @observable private viewState!: IOrderHistoryWithSearchAndFiltersViewState;\n\n @observable private _refinerState!: IOrderHistoryWithSearchAndFiltersViewRefinerState;\n\n @observable private _activeRefinementCriteria: IRefinerItemData[];\n\n private originatorList!: OrderOriginator[];\n\n @observable private _ordersViewModeState: OrderHistoryWithSearchAndFiltersViewModeState;\n\n @observable private _viewport: GridSize;\n\n private _organizationWideSelectorState: OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState;\n\n private pageSize!: number;\n\n private readonly telemetryContent?: ITelemetryContent;\n\n private readonly payLoad: IPayLoad;\n\n private readonly _refinerModalToggleRef: React.RefObject;\n\n private _searchBarState: IOrderHistoryWithSearchAndFiltersViewSearchBarState;\n\n private readonly orderHistoryClassName = 'ms-order-history-with-search-and-filters';\n\n @computed get isMobile(): boolean {\n return this._viewport === 'xs' || this._viewport === 'sm';\n }\n\n constructor(props: IOrderHistoryWithSearchAndFiltersProps) {\n super(props);\n this.initState();\n this._organizationWideSelectorState = OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState.CurrentUser;\n this._ordersViewModeState = OrderHistoryWithSearchAndFiltersViewModeState.DetailedView;\n this._searchBarState = {\n currentSearchOption: undefined,\n currentSearchText: ''\n };\n this._activeRefinementCriteria = [];\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 this._refinerModalToggleRef = React.createRef();\n this._viewport =\n props.context.request && props.context.request.device && props.context.request.device.Type === 'Mobile' ? 'xs' : 'lg';\n this._updateViewport = this._updateViewport.bind(this);\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 if (Msdyn365.msdyn365Commerce.isBrowser && window.addEventListener) {\n window.addEventListener('resize', this._updateViewport);\n this._updateViewport();\n }\n\n this._activeRefinementCriteria = [];\n }\n\n public componentWillUnmount(): void {\n if (Msdyn365.msdyn365Commerce.isBrowser && window.removeEventListener) {\n window.removeEventListener('resize', this._updateViewport);\n }\n }\n\n public shouldComponentUpdate(\n nextProps: IOrderHistoryWithSearchAndFiltersProps,\n nextState: IOrderHistoryWithSearchAndFiltersViewState\n ): boolean {\n if (this.state === nextState && this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element {\n const {\n config: { className, shouldShowCount },\n resources: { genericErrorMessage, noOrderHistoryLable, moreButtonText, backToShopping, loadingLabel }\n } = this.props;\n const { salesOrders, products } = this.orderHistoryWithSearchAndFilters;\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: IOrderHistoryWithSearchAndFiltersViewProps = {\n ...this.props,\n orderHistorywithSearchAndFiltersResult: this.orderHistoryWithSearchAndFilters,\n viewState: this.viewState,\n orderHistoryWithSearchAndFiltersProps: {\n moduleProps: this.props,\n className: classname(this.orderHistoryClassName, className)\n },\n headerProps: this._getHeaderProps(),\n searchBarProps: this._getSearchBarProps(),\n refinerProps: this._getRefinerProps(),\n organizationWideSelectorProps: this._getOrganizationWideSelectorProps(),\n backToShoppingLink: backToShoppingUrl && (\n \n )\n };\n\n if (hasError) {\n viewProps = {\n ...viewProps,\n alert: