{"version":3,"file":"static/js/454e20a6273dd0219e61.bundle.js","mappings":"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","sources":["webpack://Msdyn365.Commerce.Online/./src/actions/eve-quick-order-items.action.ts?f266","webpack://Msdyn365.Commerce.Online/./src/actions/eve-quick-order-tab.action.ts?2820","webpack://Msdyn365.Commerce.Online/./src/modules/eve-quick-order/components/eve-quick-order-controls.tsx?8138","webpack://Msdyn365.Commerce.Online/./src/modules/eve-quick-order/components/eve-quick-order-row.tsx?074a","webpack://Msdyn365.Commerce.Online/./src/modules/eve-quick-order/eve-quick-order.tsx?26f8","webpack://Msdyn365.Commerce.Online/./src/modules/eve-quick-order/eve-quick-order.view.tsx?4d7f","webpack://Msdyn365.Commerce.Online/./lib/eve-quick-order/module-registration.js?f355","webpack://Msdyn365.Commerce.Online/external var \"React\"?0d3b","webpack://Msdyn365.Commerce.Online/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 * as Msdyn365 from '@msdyn365-commerce/core';\r\nimport { ProductVariant } from '@msdyn365-commerce/retail-proxy';\r\n\r\n/**\r\n * This data action is for storing and syncing data between desktop and mobile view for quick order items set by user\r\n * EveQuickOrderItems Input Action\r\n */\r\nexport class EveQuickOrderItemsInput implements Msdyn365.IActionInput {\r\n constructor() {}\r\n public getCacheKey = () => `EVE-QUICK-ORDER-ITEMS`;\r\n public getCacheObjectType = () => 'EVE-QUICK-ORDER-ITEMS';\r\n public dataCacheType = (): Msdyn365.CacheType => 'none';\r\n}\r\n\r\nexport interface IEveQuickOrderItemsData {\r\n isInit?: boolean;\r\n items: {\r\n itemNumber: string;\r\n quantity: number;\r\n selectedVariantID?: string;\r\n selectedVariant?: ProductVariant;\r\n discount?: { [key in 'minQuantity' | 'discountValue']: string }[];\r\n variants?: ProductVariant[];\r\n description?: { [key in 'name' | 'text']?: string };\r\n }[];\r\n}\r\n\r\nconst createInput = (args: Msdyn365.ICreateActionContext): Msdyn365.IActionInput => {\r\n return new EveQuickOrderItemsInput();\r\n};\r\n\r\nasync function action(input: EveQuickOrderItemsInput, ctx: Msdyn365.IActionContext): Promise {\r\n return { items: new Array(9).fill({ itemNumber: '', quantity: 0 }), isInit: true };\r\n}\r\n\r\nexport default Msdyn365.createObservableDataAction({\r\n action: >action,\r\n id: 'EveQuickOrderItems',\r\n input: createInput\r\n});\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\n\r\n/**\r\n * EveQuickOrderTab Input Action\r\n */\r\nexport class EveQuickOrderTabInput implements Msdyn365.IActionInput {\r\n constructor() {}\r\n\r\n public getCacheKey = () => `EVE-QUICK-ORDER-TAB`;\r\n public getCacheObjectType = () => 'EVE-QUICK-ORDER-TAB';\r\n public dataCacheType = (): Msdyn365.CacheType => 'none';\r\n}\r\n\r\nexport interface IEveQuickOrderTabData {\r\n currentTab: 'manual' | 'rfq' | 'import';\r\n}\r\n\r\nconst createInput = (args: Msdyn365.ICreateActionContext): Msdyn365.IActionInput => {\r\n return new EveQuickOrderTabInput();\r\n};\r\n\r\nasync function action(input: EveQuickOrderTabInput, ctx: Msdyn365.IActionContext): Promise {\r\n return { currentTab: 'manual' };\r\n}\r\n\r\nexport default Msdyn365.createObservableDataAction({\r\n action: >action,\r\n id: 'EveQuickOrderTab',\r\n input: createInput\r\n});\r\n","import React from 'react';\r\nimport { IEveQuickOrderResources } from '../eve-quick-order.props.autogenerated';\r\n\r\ninterface IEveQuickOrderControls {\r\n canAddToCart: number;\r\n resources: IEveQuickOrderResources;\r\n isLavidgeMobile?: boolean;\r\n handleAddRow: () => void;\r\n handleAddToCart: () => void;\r\n}\r\n\r\nexport const EveQuickOrderControls: React.FC = props => {\r\n const baseProps = { 'data-ignore-parent-css': true };\r\n const { handleAddRow, resources, handleAddToCart, isLavidgeMobile } = props;\r\n const { addToCart, addRow } = resources;\r\n const _controlsClassname = `cps-quick-order__controls`;\r\n\r\n if (isLavidgeMobile) {\r\n return (\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n","import React from 'react';\r\nimport { EveQuickOrderItemsInput, IEveQuickOrderItemsData } from '../../../actions/eve-quick-order-items.action';\r\nimport { IEveQuickOrderData } from '../eve-quick-order.data';\r\nimport { IEveQuickOrderProps } from '../eve-quick-order.props.autogenerated';\r\nimport { searchByTextAsync, searchAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/ProductsDataActions.g';\r\nimport { AsyncResult, ProductVariant } from '@msdyn365-commerce/retail-proxy';\r\nimport { debounce } from 'lodash';\r\n\r\ndeclare global {\r\n interface Window {\r\n debouncer: NodeJS.Timeout;\r\n tempItemNumber: string;\r\n }\r\n}\r\n\r\ninterface IEveQuickOrderRowProps {\r\n context: IEveQuickOrderProps['context'];\r\n allRows: IEveQuickOrderItemsData['items'];\r\n initialValues: IEveQuickOrderItemsData['items'][0];\r\n resources: IEveQuickOrderProps['resources'];\r\n rowIndex: number;\r\n isLavidgeMobile?: boolean;\r\n removeRow: () => void;\r\n}\r\n\r\ninterface IEveQuickOrderCell {\r\n id: string;\r\n label: string;\r\n type: 'text' | 'number';\r\n value: string | number;\r\n onChange: (event: React.ChangeEvent) => void;\r\n}\r\n\r\nexport const EveQuickOrderRow: React.FC> = props => {\r\n const baseProps = { 'data-ignore-parent-css': true };\r\n const idPrefixes = { itemNumber: 'item-number--', configuration: 'configuration--', quantity: 'quantity--' };\r\n const { context, rowIndex, removeRow, initialValues, resources, allRows, config, isLavidgeMobile } = props;\r\n const { minQueryLength = 1, maxQuantity = 0 } = config;\r\n const { actionContext, request } = context;\r\n const { channelId, catalogId } = request.apiSettings;\r\n const { discount, variants, selectedVariant, description } = initialValues;\r\n\r\n const [showSearchedItems, setShowSearchedItems] = React.useState(false);\r\n const [itemNumber, setItemNumber] = React.useState(initialValues.itemNumber);\r\n const [configuration] = React.useState(getConfigurationString(selectedVariant));\r\n const [quantity, setQuantity] = React.useState(initialValues.quantity);\r\n const [showDiscountTooltip, setShowDiscountTooltip] = React.useState(false);\r\n const [showDescriptionTooltip, setShowDescriptionTooltip] = React.useState(false);\r\n const [searchItems, setSearchItems] = React.useState<({ [key in 'itemNumber' | 'productName']: string } & { recordID: number })[]>([]);\r\n const [shouldHandleItemNumberChange, setShouldHandleItemNumberChange] = React.useState(true);\r\n const [isLoadingConfigurations, setIsLoadingConfiguration] = React.useState(false);\r\n const [isTextSearching, setIsTextSearching] = React.useState(false);\r\n\r\n const itemNumberInputRef = React.useRef(null);\r\n\r\n const cn = (suffix: string) => `cps-quick-order__table-body${suffix}`;\r\n\r\n const handleChange = (\r\n event: React.ChangeEvent,\r\n type: 'item-number' | 'configuration' | 'quantity',\r\n elementID: string,\r\n timeout?: number\r\n ) => {\r\n const { value } = event.currentTarget;\r\n const items = allRows.slice();\r\n const variant = variants?.filter(({ VariantId }) => VariantId === value)[0];\r\n if (type === 'configuration') {\r\n items[`${rowIndex}`].selectedVariantID = variant?.VariantId;\r\n items[`${rowIndex}`].selectedVariant = variant;\r\n actionContext.update(new EveQuickOrderItemsInput(), { items });\r\n }\r\n if (type === 'quantity') {\r\n const qty = parseInt(value, 10);\r\n items[`${rowIndex}`].quantity = maxQuantity > 0 && qty > maxQuantity ? maxQuantity : qty;\r\n actionContext.update(new EveQuickOrderItemsInput(), { items });\r\n setQuantity(qty);\r\n }\r\n if (type === 'item-number') {\r\n setItemNumber(value);\r\n window.tempItemNumber = event.target.value;\r\n debounce(() => {\r\n handleItemNumberChange(window.tempItemNumber);\r\n document.querySelector(`#${elementID}`)?.focus();\r\n }, timeout ?? 0)();\r\n setShouldHandleItemNumberChange(true);\r\n if (items[`${rowIndex}`].selectedVariantID?.length) {\r\n delete items[`${rowIndex}`].description;\r\n delete items[`${rowIndex}`].discount;\r\n delete items[`${rowIndex}`].selectedVariant;\r\n delete items[`${rowIndex}`].selectedVariantID;\r\n delete items[`${rowIndex}`].variants;\r\n items[`${rowIndex}`].quantity = 0;\r\n actionContext.update(new EveQuickOrderItemsInput(), { items });\r\n }\r\n }\r\n };\r\n\r\n const handleFocusItemNumberInput = () => {\r\n itemNumberInputRef.current?.classList.remove(cn('--cell-input-muted'));\r\n setShowSearchedItems(true);\r\n };\r\n\r\n const handleBlurItemNumberInput = () => {\r\n const { value } = itemNumberInputRef.current ?? {};\r\n if ((value?.length ?? 0) > 0) {\r\n itemNumberInputRef.current?.classList.add(cn('--cell-input-muted'));\r\n }\r\n setTimeout(() => {\r\n setShowSearchedItems(false);\r\n }, 200);\r\n };\r\n\r\n const handleItemNumberChange = (itemNumber: string) => {\r\n if (shouldHandleItemNumberChange && itemNumber.length >= minQueryLength) {\r\n setIsTextSearching(true);\r\n const callerContext = { callerContext: actionContext, queryResultSettings: { Paging: { Top: 5 } } };\r\n setSearchItems([]);\r\n searchByTextAsync(callerContext, channelId, catalogId, itemNumber)\r\n .then(results => {\r\n results.forEach(r => console.log(r));\r\n setSearchItems(\r\n results.map(({ ProductNumber, Name, RecordId }) => ({\r\n recordID: RecordId,\r\n itemNumber: ProductNumber ?? '',\r\n productName: Name ?? ''\r\n }))\r\n );\r\n setShowSearchedItems(true);\r\n setIsTextSearching(false);\r\n })\r\n .catch(() => {});\r\n }\r\n };\r\n\r\n const handleSelectSearchItem = (itemNumber: string, recordID: number) => {\r\n setIsLoadingConfiguration(true);\r\n setItemNumber(itemNumber);\r\n setSearchItems([]);\r\n setShouldHandleItemNumberChange(false);\r\n\r\n const orderItems = actionContext.get('EVE-QUICK-ORDER-ITEMS', 'EVE-QUICK-ORDER-ITEMS') as AsyncResult;\r\n const items = (orderItems.result ?? { items: [] }).items.slice();\r\n items[`${rowIndex}`].itemNumber = itemNumber;\r\n\r\n searchAsync(\r\n { callerContext: actionContext, queryResultSettings: { Paging: { Top: 1 } } },\r\n {\r\n Ids: [recordID],\r\n Context: { CatalogId: catalogId, ChannelId: channelId }\r\n }\r\n )\r\n .then(result => {\r\n result.forEach(r => console.log(r));\r\n const [{ CompositionInformation, ProductName, Description }] = result;\r\n const { VariantInformation } = CompositionInformation ?? {};\r\n const { Variants = [] } = VariantInformation ?? {};\r\n items[`${rowIndex}`].variants = Variants;\r\n items[`${rowIndex}`].selectedVariantID = Variants[0].VariantId;\r\n items[`${rowIndex}`].selectedVariant = Variants[0];\r\n items[`${rowIndex}`].description = { name: ProductName, text: Description };\r\n actionContext.update(new EveQuickOrderItemsInput(), { items });\r\n })\r\n .catch(() => {});\r\n };\r\n\r\n function getConfigurationString(variant?: ProductVariant) {\r\n return variant\r\n ? `${variant.ConfigId?.length && variant.ConfigId !== '.' ? variant.ConfigId : ''}(Qty)${\r\n variant.ColorId?.length && variant.ColorId !== '.' ? `/${variant.ColorId}` : ''\r\n } - $Price ($${variant.Price})`\r\n : '';\r\n }\r\n\r\n function isDescription(data: typeof description | typeof discount): data is typeof description {\r\n return data?.['name'] || data?.['text'];\r\n }\r\n\r\n const cells: IEveQuickOrderCell[] = [\r\n {\r\n id: `${idPrefixes.itemNumber}${rowIndex}`,\r\n label: resources.tableHeaderItemNumber,\r\n type: 'text',\r\n value: itemNumber,\r\n onChange: event => handleChange(event, 'item-number', `${idPrefixes.itemNumber}${rowIndex}`, 300)\r\n },\r\n {\r\n id: `${idPrefixes.configuration}${rowIndex}`,\r\n label: resources.tableHeaderConfiguration,\r\n type: 'text',\r\n value: configuration,\r\n onChange: event => handleChange(event, 'configuration', `${idPrefixes.configuration}${rowIndex}`)\r\n },\r\n {\r\n id: `${idPrefixes.quantity}${rowIndex}`,\r\n label: resources.tableHeaderQuantity,\r\n type: 'number',\r\n value: quantity,\r\n onChange: event => handleChange(event, 'quantity', `${idPrefixes.quantity}${rowIndex}`, 300)\r\n }\r\n ];\r\n\r\n const baseTooltipHandler = (setter: (value: React.SetStateAction) => void, show: boolean) => () => {\r\n clearTimeout(window.debouncer);\r\n if (innerWidth > 992) {\r\n window.debouncer = setTimeout(() => setter(show), show ? 200 : 0);\r\n }\r\n };\r\n\r\n const discountTooltipHandlers = {\r\n onMouseEnter: baseTooltipHandler(setShowDiscountTooltip, true),\r\n onMouseMove: baseTooltipHandler(setShowDiscountTooltip, true),\r\n onMouseLeave: baseTooltipHandler(setShowDiscountTooltip, false)\r\n };\r\n\r\n const descriptionTooltipHandlers = {\r\n onMouseEnter: baseTooltipHandler(setShowDescriptionTooltip, true),\r\n onMouseMove: baseTooltipHandler(setShowDescriptionTooltip, true),\r\n onMouseLeave: baseTooltipHandler(setShowDescriptionTooltip, false)\r\n };\r\n\r\n const tooltips = [\r\n {\r\n index: 0,\r\n show: showDescriptionTooltip,\r\n content: description,\r\n setter: setShowDescriptionTooltip,\r\n handlers: descriptionTooltipHandlers,\r\n svg: (\r\n \r\n \r\n \r\n )\r\n },\r\n {\r\n index: 2,\r\n show: showDiscountTooltip,\r\n content: discount,\r\n setter: setShowDiscountTooltip,\r\n handlers: discountTooltipHandlers,\r\n svg: (\r\n \r\n \r\n \r\n )\r\n }\r\n ];\r\n\r\n if (isLavidgeMobile) {\r\n return (\r\n \r\n \r\n
\r\n 0 ? ` ${cn('--cell-input-muted')}` : ''}`}\r\n ref={itemNumberInputRef}\r\n id={cells[0].id}\r\n placeholder={minQueryLength > 0 ? `Enter ${minQueryLength} characters...` : ''}\r\n onChange={cells[0].onChange}\r\n onFocus={handleFocusItemNumberInput}\r\n onBlur={handleBlurItemNumberInput}\r\n type={cells[0].type}\r\n value={cells[0].value}\r\n min={0}\r\n {...baseProps}\r\n />\r\n {isLoadingConfigurations ?
: null}\r\n {(variants?.length ?? 0) > 1 && !isLoadingConfigurations ? (\r\n \r\n ) : null}\r\n {variants?.length === 1 && !isLoadingConfigurations ? (\r\n
\r\n {getConfigurationString(variants[0])}\r\n
\r\n ) : null}\r\n
\r\n \r\n \r\n {variants?.length ? (\r\n
\r\n \r\n
\r\n ) : null}\r\n \r\n \r\n \r\n \r\n {searchItems.length ? (\r\n
\r\n {searchItems.map(({ recordID, itemNumber, productName }, i) => (\r\n handleSelectSearchItem(itemNumber, recordID)}\r\n {...baseProps}\r\n >\r\n \r\n {itemNumber} - {productName}\r\n \r\n \r\n ))}\r\n
\r\n ) : null}\r\n \r\n );\r\n }\r\n\r\n return (\r\n
\r\n {cells.map(({ type, onChange, id, value, label }, i) => (\r\n
\r\n \r\n {i === 1 && (variants?.length ?? 0) > 1 && !isLoadingConfigurations ? (\r\n \r\n ) : null}\r\n {i === 1 && variants?.length === 1 && !isLoadingConfigurations ? (\r\n
\r\n {getConfigurationString(variants[0])}\r\n
\r\n ) : null}\r\n {i === 1 && isLoadingConfigurations ?
: null}\r\n {i === 0 || (i === 2 && (variants?.length || (!variants?.length && isLoadingConfigurations))) ? (\r\n
\r\n 0 ? ` ${cn('--cell-input-muted')}` : ''}`}\r\n ref={i === 0 ? itemNumberInputRef : undefined}\r\n id={id}\r\n placeholder={minQueryLength > 0 ? `Enter ${minQueryLength} characters...` : ''}\r\n onChange={onChange}\r\n onFocus={i === 0 ? handleFocusItemNumberInput : undefined}\r\n onBlur={i === 0 ? handleBlurItemNumberInput : undefined}\r\n type={type}\r\n value={value}\r\n min={0}\r\n {...baseProps}\r\n />\r\n {tooltips.map(({ content, show, setter, handlers, index, svg }) =>\r\n i === index && content ? (\r\n <>\r\n (innerWidth <= 992 ? setter(state => !state) : null)}\r\n onBlur={() => (innerWidth <= 992 ? setter(false) : null)}\r\n {...baseProps}\r\n >\r\n {svg}\r\n \r\n 992\r\n ? ' show-from-right'\r\n : show && ((i === 0 && innerWidth <= 992) || i === 2)\r\n ? ' show-from-left'\r\n : ''\r\n }`}\r\n {...baseProps}\r\n >\r\n {!isDescription(content) ? content.map(() => '') : null}\r\n {isDescription(content) ? <>{content.name} : null}\r\n
\r\n \r\n ) : null\r\n )}\r\n
\r\n ) : null}\r\n {i === 0 &&\r\n !searchItems.length &&\r\n !variants?.length &&\r\n !isTextSearching &&\r\n (document.querySelector(`#${idPrefixes.itemNumber}${rowIndex}`)?.value.length ?? 0) >=\r\n minQueryLength ? (\r\n
\r\n
\r\n No products found\r\n
\r\n
\r\n ) : null}\r\n {i === 0 && searchItems.length ? (\r\n
\r\n {searchItems.map(({ recordID, itemNumber, productName }, i) => (\r\n handleSelectSearchItem(itemNumber, recordID)}\r\n {...baseProps}\r\n >\r\n {itemNumber} - {productName}\r\n \r\n ))}\r\n
\r\n ) : null}\r\n
\r\n ))}\r\n
\r\n \r\n
\r\n
\r\n );\r\n};\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport * as React from 'react';\r\nimport classnames from 'classnames';\r\nimport { groupBy } from 'lodash';\r\n\r\nimport { ICartState } from '@msdyn365-commerce/global-state';\r\nimport { msdyn365Commerce, getUrlSync } from '@msdyn365-commerce/core-internal';\r\nimport { urlCheck, IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\r\n\r\nimport { EveQuickOrderItemsInput, IEveQuickOrderItemsData } from '../../actions/eve-quick-order-items.action';\r\nimport { IEveQuickOrderData } from './eve-quick-order.data';\r\n\r\nimport { EveQuickOrderControls } from './components/eve-quick-order-controls';\r\nimport { EveQuickOrderRow } from './components/eve-quick-order-row';\r\nimport { IEveQuickOrderProps as _IEveQuickOrderProps } from './eve-quick-order.props.autogenerated';\r\n\r\n/**\r\n * Quick Order View Props Interface properties.\r\n */\r\nexport interface IEveQuickOrderViewProps extends _IEveQuickOrderProps {\r\n isB2B?: boolean;\r\n contentProps: INodeProps;\r\n quickOrderProps: IModuleProps;\r\n quickOrderList: React.ReactNode;\r\n orderUpload: React.ReactNode;\r\n rfq: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Quick Order Interface properties.\r\n */\r\nexport interface IEveQuickOrderState {\r\n rows: IEveQuickOrderItemsData['items'];\r\n useLadvigeMobile: boolean;\r\n}\r\n\r\nexport interface IEveQuickOrderProps extends _IEveQuickOrderProps {}\r\n\r\n/**\r\n * QuickOrder component.\r\n * @extends {React.PureComponent, IEveQuickOrderState>}\r\n */\r\nclass EveQuickOrder extends React.PureComponent {\r\n private readonly baseProps = { 'data-ignore-parent-css': true };\r\n\r\n constructor(props: IEveQuickOrderProps) {\r\n super(props);\r\n\r\n const { items } = props.data.quickOrderItems.result ?? {};\r\n const rows = items ?? [];\r\n\r\n this.state = { rows, useLadvigeMobile: innerWidth >= 480 && innerWidth <= 992 };\r\n this._removeRow = this._removeRow.bind(this);\r\n }\r\n\r\n public readonly componentDidMount = () => {\r\n window.onresize = () => this.setState({ useLadvigeMobile: innerWidth >= 480 && innerWidth <= 992 });\r\n };\r\n\r\n public readonly componentDidUpdate = () => {\r\n const { items } = this.props.data.quickOrderItems.result ?? {};\r\n const rows = items ?? [];\r\n this.setState(state => ({ ...state, rows }));\r\n };\r\n\r\n // @ts-ignore\r\n private readonly _getCheckoutURL = (isAuthenticated: boolean, guestCheckoutUrl: string, signInUrl: string) => {\r\n if (isAuthenticated) {\r\n return guestCheckoutUrl;\r\n }\r\n\r\n const isAbsoluteUrl = urlCheck(guestCheckoutUrl);\r\n let returnURL = guestCheckoutUrl;\r\n if (msdyn365Commerce.isBrowser && !isAbsoluteUrl) {\r\n returnURL = `${location.origin}${guestCheckoutUrl}`;\r\n }\r\n\r\n return `${signInUrl}${!signInUrl.includes('?') ? '?' : '&'}ru=${returnURL}`;\r\n };\r\n\r\n private readonly _removeRow = (index: number) => {\r\n if (this.state.rows.length > 1) {\r\n const rows = this.state.rows.slice(0, index).concat(this.state.rows.slice(index + 1));\r\n this.setState(state => ({ ...state, rows }));\r\n this.props.context.actionContext.update(new EveQuickOrderItemsInput(), { items: rows });\r\n }\r\n };\r\n\r\n private readonly _addRow = () => {\r\n const rows = this.state.rows.concat(this._createEmptyRows(1));\r\n this.setState(state => ({ ...state, rows }));\r\n this.props.context.actionContext.update(new EveQuickOrderItemsInput(), { items: rows });\r\n };\r\n\r\n private readonly _createEmptyRows = (amount = 1) => {\r\n return new Array(amount).fill({ itemNumber: '', quantity: 0 });\r\n };\r\n\r\n /**\r\n * Method to add product in cart.\r\n */\r\n private readonly _addItemToCart = async () => {\r\n const { context, data } = this.props;\r\n const { catalogId } = context.request.apiSettings;\r\n const { actionContext } = context;\r\n const { cart } = data;\r\n\r\n const productsToAdd: Parameters[0] = this.state.rows\r\n .filter(\r\n ({ itemNumber, quantity, selectedVariant }) =>\r\n itemNumber.length && quantity > 0 && selectedVariant?.DistinctProductVariantId\r\n )\r\n .map(({ selectedVariant, quantity }) => ({\r\n product: {\r\n ...selectedVariant!,\r\n ProductTypeValue: 0,\r\n RecordId: selectedVariant!.DistinctProductVariantId!\r\n },\r\n count: quantity,\r\n catalogId\r\n }));\r\n\r\n const dedupedProducsToAdd = this._dedupeCartProducts(productsToAdd);\r\n\r\n if (cart.result && dedupedProducsToAdd.length) {\r\n const groupedDeduped = Object.values(groupBy(dedupedProducsToAdd, 'product.RecordId'));\r\n const finalProducts = groupedDeduped.map(group =>\r\n group.reduce((prev, cur) => ({ ...prev, count: (prev.count ?? 0) + (cur.count ?? 0) }))\r\n );\r\n cart.result.addProductsToCart(finalProducts).catch(() => {});\r\n }\r\n if (productsToAdd.length) {\r\n const guestCheckoutUrl = getUrlSync('checkout', this.props.context.actionContext) || '';\r\n location.href = guestCheckoutUrl;\r\n }\r\n actionContext.update(new EveQuickOrderItemsInput(), {\r\n items:\r\n this.props.data.quickOrderItems.result?.items.map(() => ({ itemNumber: '', quantity: 0 })) ??\r\n new Array(9).fill({ itemNumber: '', quantity: 0 })\r\n });\r\n };\r\n\r\n private readonly _dedupeCartProducts = (productsToAdd: Parameters[0]) => {\r\n const { cart } = this.props.data.cart.result ?? {};\r\n const productsInCart = cart?.CartLines?.map(({ ProductId }) => ProductId);\r\n const productsToUpdate = productsToAdd\r\n .filter(({ product }) => productsInCart?.includes(product.RecordId))\r\n .map(product => {\r\n const cartLine = cart?.CartLines?.filter(({ ProductId }) => ProductId === product.product.RecordId)[0] ?? {};\r\n return { ...product, cartLineId: cartLine.LineId, quantityInCart: cartLine.Quantity };\r\n });\r\n const filteredProductsToAdd = productsToAdd.filter(({ product }) => !productsInCart?.includes(product.RecordId));\r\n for (const { count, cartLineId, quantityInCart } of productsToUpdate) {\r\n if (cartLineId && quantityInCart && count) {\r\n console.log(cartLineId);\r\n this.props.data.cart.result\r\n ?.updateCartLineQuantity?.({ cartLineId, newQuantity: quantityInCart + count })\r\n .then(result => console.log(result))\r\n .catch(() => {});\r\n }\r\n }\r\n return filteredProductsToAdd;\r\n };\r\n\r\n private readonly _renderRFQ = () => {\r\n const cn = (suffix: string) => `cps-rfq${suffix}`;\r\n return (\r\n
\r\n
\r\n RFQ\r\n
\r\n
\r\n );\r\n };\r\n\r\n /**\r\n * Render Quick Order Table.\r\n * @param className - Class name.\r\n * @returns JSX element.\r\n */\r\n private readonly _renderOrderUpload = () => {\r\n return this.props.slots.orderUpload[0];\r\n };\r\n\r\n /**\r\n * Render Quick Order Table.\r\n * @param className - Class name.\r\n * @returns JSX element.\r\n */\r\n private readonly _renderQuickOrderTable = () => {\r\n const { resources, context } = this.props;\r\n const headerColumns = [resources.tableHeaderItemNumber, resources.tableHeaderConfiguration, resources.tableHeaderQuantity];\r\n const lavidgeHeaderColumns = [\r\n `${resources.tableHeaderItemNumber}/${resources.tableHeaderConfiguration}`,\r\n resources.tableHeaderQuantity,\r\n `
`\r\n ];\r\n\r\n const cn = (suffix: string) => `cps-quick-order__table${suffix}`;\r\n\r\n if (this.state.useLadvigeMobile) {\r\n return (\r\n \r\n \r\n \r\n {lavidgeHeaderColumns.map(label => (\r\n \r\n ))}\r\n \r\n \r\n \r\n {this.state.rows.map((initialValues, rowIndex) => (\r\n this._removeRow(rowIndex)}\r\n resources={resources}\r\n rowIndex={rowIndex}\r\n />\r\n ))}\r\n \r\n \r\n
\r\n );\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n {headerColumns.map((title, i) => (\r\n
\r\n {title.toUpperCase()}\r\n
\r\n ))}\r\n
\r\n
\r\n {this.state.rows.map((initialValues, rowIndex) => (\r\n this._removeRow(rowIndex)}\r\n resources={resources}\r\n rowIndex={rowIndex}\r\n />\r\n ))}\r\n
\r\n \r\n
\r\n
\r\n );\r\n };\r\n\r\n public readonly render = () => {\r\n const { className = '' } = this.props.config;\r\n const customerInfo = this.props.data.customerInformation.result;\r\n\r\n const viewProps: IEveQuickOrderViewProps = {\r\n ...(this.props as IEveQuickOrderProps),\r\n contentProps: { className: 'ms-quick-order__content' },\r\n isB2B: customerInfo?.IsB2b,\r\n orderUpload: this._renderOrderUpload(),\r\n quickOrderList: this._renderQuickOrderTable(),\r\n quickOrderProps: { className: classnames('ms-quick-order', className), moduleProps: this.props },\r\n rfq: this._renderRFQ()\r\n };\r\n\r\n return this.props.renderView(viewProps);\r\n };\r\n}\r\n\r\nexport default EveQuickOrder;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport * as React from 'react';\r\nimport { CSSTransition } from 'react-transition-group';\r\n\r\nimport { EveQuickOrderTabInput, IEveQuickOrderTabData } from '../../actions/eve-quick-order-tab.action';\r\nimport { IEveQuickOrderViewProps } from './eve-quick-order';\r\n\r\ntype Tab = IEveQuickOrderTabData['currentTab'];\r\n\r\nconst usePrev = (state: T) => {\r\n const prevState = React.useRef();\r\n React.useEffect(() => void (prevState.current = state), [state]);\r\n return prevState.current;\r\n};\r\n\r\nconst quickOrderView: React.FC = props => {\r\n const baseProps = { 'data-ignore-parent-css': true };\r\n const { context, quickOrderList, orderUpload, data, rfq, config } = props;\r\n const { actionContext } = context;\r\n const { transitionDisabled } = config;\r\n const { quickOrderTab } = data;\r\n const { currentTab } = quickOrderTab.result ?? {};\r\n const tabLabels: Tab[] = ['manual', 'import', 'rfq'];\r\n const cn = (suffix: string) => `cps-quick-order${suffix}`;\r\n\r\n const prevTab = usePrev(currentTab);\r\n\r\n return (\r\n <>\r\n
\r\n {tabLabels.map(label => (\r\n actionContext.update(new EveQuickOrderTabInput(), { currentTab: label })}\r\n >\r\n {label}\r\n \r\n ))}\r\n
\r\n
\r\n \r\n <>{quickOrderList}\r\n \r\n \r\n <>{orderUpload}\r\n \r\n \r\n <>{rfq}\r\n \r\n
\r\n \r\n );\r\n};\r\n\r\nexport default quickOrderView;\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['eve-quick-order'] = {\n c: () => require('partner/modules/eve-quick-order/eve-quick-order.tsx'),\n $type: 'containerModule',\n da: [{name:'cart', path:'@msdyn365-commerce/global-state/dist/lib/data-actions/cart-state-data-action', runOn: 1},{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:'orderTemplates', path:'@msdyn365-commerce-modules/retail-actions/dist/lib/order-templates/get-order-templates-preview', runOn: 1},{name:'quickOrderItems', path:'actions/eve-quick-order-items.action', runOn: 0},{name:'quickOrderTab', path:'actions/eve-quick-order-tab.action', runOn: 0}],\n \n iNM: false,\n ns: '__local__',\n n: 'eve-quick-order',\n p: '__local__',\n \n pdp: '',\n \n \n md: 'src/modules/eve-quick-order'\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 const sanitizedActionPath = '@msdyn365-commerce-modules/retail-actions/dist/lib/order-templates/get-order-templates-preview';\n let dataAction = require('@msdyn365-commerce-modules/retail-actions/dist/lib/order-templates/get-order-templates-preview');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\n }\n \n\n {\n const sanitizedActionPath = '@msdyn365-commerce/global-state/dist/lib/data-actions/cart-state-data-action';\n let dataAction = require('@msdyn365-commerce/global-state/dist/lib/data-actions/cart-state-data-action');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\n }\n \n\n {\n const sanitizedActionPath = 'actions/eve-quick-order-items.action';\n let dataAction = require('partner/actions/eve-quick-order-items.action');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\n }\n \n\n {\n const sanitizedActionPath = 'actions/eve-quick-order-tab.action';\n let dataAction = require('partner/actions/eve-quick-order-tab.action');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\n }\n \n\n \n window.__bindings__ = window.__bindings__ || {};\n window.__bindings__.modules = {\n ...window.__bindings__.modules || {},\n ...binding.modules\n };\n \n window.__bindings__.dataActions = {\n ...window.__bindings__.dataActions || {},\n ...binding.dataActions\n };\n export const viewDictionary = {};\n viewDictionary['__local__|__local__|modules|eve-quick-order|eve-quick-order'] = {\n c: () => require('partner/modules/eve-quick-order/eve-quick-order.view.tsx'),\n cn: '__local__-__local__-eve-quick-order'\n };\nwindow.__bindings__ = window.__bindings__ || {};\nwindow.__bindings__.viewDictionary = {\n ...window.__bindings__.viewDictionary || {},\n ...viewDictionary\n };","module.exports = React;","module.exports = ReactDOM;"],"names":["EveQuickOrderItemsInput","constructor","getCacheKey","getCacheObjectType","dataCacheType","Msdyn365","action","async","input","ctx","items","Array","fill","itemNumber","quantity","isInit","id","args","EveQuickOrderTabInput","currentTab","EveQuickOrderControls","props","baseProps","handleAddRow","resources","handleAddToCart","isLavidgeMobile","addToCart","addRow","_controlsClassname","React","Object","assign","className","colSpan","onClick","EveQuickOrderRow","idPrefixes","context","rowIndex","removeRow","initialValues","allRows","config","minQueryLength","maxQuantity","actionContext","request","channelId","catalogId","apiSettings","discount","variants","selectedVariant","description","showSearchedItems","setShowSearchedItems","setItemNumber","configuration","getConfigurationString","setQuantity","showDiscountTooltip","setShowDiscountTooltip","showDescriptionTooltip","setShowDescriptionTooltip","searchItems","setSearchItems","shouldHandleItemNumberChange","setShouldHandleItemNumberChange","isLoadingConfigurations","setIsLoadingConfiguration","isTextSearching","setIsTextSearching","itemNumberInputRef","cn","suffix","handleChange","event","type","elementID","timeout","value","currentTarget","slice","variant","filter","_ref","VariantId","selectedVariantID","update","qty","parseInt","_items$selectedVarian","window","tempItemNumber","target","_debounce","_document$querySelect","handleItemNumberChange","document","querySelector","focus","length","handleFocusItemNumberInput","_itemNumberInputRef$c","current","classList","remove","handleBlurItemNumberInput","_itemNumberInputRef$c2","_value$length","_itemNumberInputRef$c3","add","setTimeout","callerContext","queryResultSettings","Paging","Top","searchByTextAsync","then","results","forEach","r","console","log","map","_ref2","ProductNumber","Name","RecordId","recordID","productName","catch","handleSelectSearchItem","_orderItems$result","get","result","searchAsync","Ids","Context","CatalogId","ChannelId","CompositionInformation","ProductName","Description","VariantInformation","Variants","name","text","_variant$ConfigId","_variant$ColorId","ConfigId","ColorId","Price","isDescription","data","cells","label","tableHeaderItemNumber","onChange","tableHeaderConfiguration","tableHeaderQuantity","baseTooltipHandler","setter","show","clearTimeout","debouncer","innerWidth","discountTooltipHandlers","onMouseEnter","onMouseMove","onMouseLeave","descriptionTooltipHandlers","tooltips","index","content","handlers","svg","viewBox","d","style","height","transform","_variants$length","toString","ref","placeholder","onFocus","onBlur","min","key","_ref3","i","width","_ref4","_variants$length2","_document$querySelect2","_document$querySelect3","htmlFor","toUpperCase","undefined","_ref5","tabIndex","state","_ref6","EveQuickOrder","_props$data$quickOrde","super","componentDidMount","onresize","this","setState","useLadvigeMobile","componentDidUpdate","_this$props$data$quic","quickOrderItems","rows","_objectSpread","_getCheckoutURL","isAuthenticated","guestCheckoutUrl","signInUrl","isAbsoluteUrl","urlCheck","returnURL","msdyn365Commerce","isBrowser","location","origin","includes","_removeRow","concat","_addRow","_createEmptyRows","amount","arguments","_addItemToCart","_this$props$data$quic2","_this$props$data$quic3","cart","productsToAdd","DistinctProductVariantId","product","ProductTypeValue","count","dedupedProducsToAdd","_dedupeCartProducts","finalProducts","values","_groupBy","group","reduce","prev","cur","_prev$count","_cur$count","addProductsToCart","getUrlSync","href","_this$props$data$cart","_cart$CartLines","productsInCart","CartLines","ProductId","productsToUpdate","_cart$CartLines$filte","_cart$CartLines2","cartLine","cartLineId","LineId","quantityInCart","Quantity","filteredProductsToAdd","_this$props$data$cart2","_this$props$data$cart3","_this$props$data$cart4","updateCartLineQuantity","call","newQuantity","_renderRFQ","_renderOrderUpload","slots","orderUpload","_renderQuickOrderTable","headerColumns","lavidgeHeaderColumns","cellSpacing","dangerouslySetInnerHTML","__html","canAddToCart","title","render","customerInfo","customerInformation","viewProps","contentProps","isB2B","IsB2b","quickOrderList","quickOrderProps","classnames","moduleProps","rfq","renderView","bind","_quickOrderTab$result","transitionDisabled","quickOrderTab","prevTab","prevState","usePrev","_quickOrderTab$result2","CSSTransition","in","unmountOnExit","classNames","enterActive","exitActive","binding","modules","dataActions","registerSanitizedActionPath","sanitizedActionPath","dataAction","default","Error","prototype","RegistrationId","c","require","$type","da","path","runOn","iNM","ns","n","p","pdp","md","__bindings__","viewDictionary","module","exports","ReactDOM"],"sourceRoot":""}