import React from 'react'; import { Menu, MenuDivider, MenuItem, Intent, Tag, Position, Button, Popover, } from '@blueprintjs/core'; import { useIntl, FormattedMessage as T } from 'react-intl'; import { formatMessage } from 'services/intl'; import { isNumber } from 'lodash'; import { Icon, Money, If } from 'components'; import { isBlank, safeCallback } from 'utils'; /** * Publish accessor */ export const PublishAccessor = (r) => { return r.is_published ? ( ) : ( ); }; export const TypeAccessor = (row) => { return row.type ? ( {formatMessage({ id: row.type })} ) : ( '' ); }; export const ItemCodeAccessor = (row) => row.type ? ( {formatMessage({ id: row.type })} ) : ( '' ); export const QuantityOnHandCell = ({ cell: { value } }) => { return isNumber(value) ? ( {value} ) : null; }; export const CostPriceCell = ({ cell: { value } }) => { return !isBlank(value) ? : null; }; export const SellPriceCell = ({ cell: { value } }) => { return !isBlank(value) ? : null; }; export const ItemTypeAccessor = (row) => { return row.type ? ( {formatMessage({ id: row.type })} ) : null; }; export function ItemsActionMenuList({ row: { original }, payload: { onEditItem, onInactivateItem, onActivateItem, onMakeAdjustment, onDeleteItem, onDuplicate, }, }) { const { formatMessage } = useIntl(); return ( } text={} /> } text={formatMessage({ id: 'edit_item' })} onClick={safeCallback(onEditItem, original)} /> } text={formatMessage({ id: 'duplicate' })} onClick={safeCallback(onDuplicate, original)} /> } onClick={safeCallback(onInactivateItem, original)} /> } onClick={safeCallback(onActivateItem, original)} /> } onClick={safeCallback(onMakeAdjustment, original)} /> } onClick={safeCallback(onDeleteItem, original)} intent={Intent.DANGER} /> ); } export const ItemsActionsTableCell = (props) => { return ( } >