/** @jsx jsx */ import { FC, Fragment } from 'react' import { Box, jsx } from '@vtex/store-ui' import { useItemContext } from './ItemContext' import { opaque } from './utils/opaque' import { TextAlignProp } from './utils/textAlign' import { FormattedCurrency } from '../FormattedCurrency/FormattedCurrency' interface UnitPriceProps extends TextAlignProp { unitPriceDisplay?: UnitPriceDisplayType displayUnitListPrice?: DisplayUnitListPriceType } type UnitPriceDisplayType = 'always' | 'default' type DisplayUnitListPriceType = 'showWhenDifferent' | 'notShow' export const ProductItemUnitPrice: FC = ({ textAlign = 'left', unitPriceDisplay = 'default', displayUnitListPrice = 'notShow', }) => { const { item, loading } = useItemContext() if (loading) { return null } if ( (item.quantity === 0 && unitPriceDisplay !== 'always') || !item.price || item.price === 0 ) { return null } return ( {item.listPrice && item.price !== item.listPrice && displayUnitListPrice === 'showWhenDifferent' && (
)}
{' '}
per {item.measurementUnit}
) }