// @ts-nocheck import React from 'react'; import intl from 'react-intl-universal'; import { Checkbox, Intent, PopoverInteractionKind, Position, Tag, Tooltip, } from '@blueprintjs/core'; import { useAddTransactionsToCategorizeSelected, useRemoveTransactionsToCategorizeSelected, } from '@/hooks/state/banking'; import { Box, Icon } from '@/components'; import styles from './AccountTransactionsUncategorizedTable.module.scss'; function statusAccessor(transaction) { return transaction.is_recognized ? ( {transaction.assigned_category_formatted} {transaction.assigned_account_name} } > Recognized ) : null; } /** * Retrieve account uncategorized transctions table columns. */ export function useAccountUncategorizedTransactionsColumns() { const addTransactionsToCategorizeSelected = useAddTransactionsToCategorizeSelected(); const removeTransactionsToCategorizeSelected = useRemoveTransactionsToCategorizeSelected(); const handleChange = (value) => (event) => { if (event.currentTarget.checked) { addTransactionsToCategorizeSelected(value.id); } else { removeTransactionsToCategorizeSelected(value.id); } }; return React.useMemo( () => [ { id: 'date', Header: intl.get('date'), accessor: 'formatted_date', width: 40, clickable: true, textOverview: true, }, { id: 'description', Header: 'Description', accessor: 'description', width: 160, textOverview: true, clickable: true, }, { id: 'payee', Header: 'Payee', accessor: 'payee', width: 60, clickable: true, textOverview: true, }, { id: 'reference_number', Header: 'Ref.#', accessor: 'reference_no', width: 50, clickable: true, textOverview: true, }, { id: 'status', Header: 'Status', accessor: statusAccessor, }, { id: 'deposit', Header: intl.get('cash_flow.label.deposit'), accessor: 'formatted_deposit_amount', width: 40, className: 'deposit', textOverview: true, align: 'right', clickable: true, }, { id: 'withdrawal', Header: intl.get('cash_flow.label.withdrawal'), accessor: 'formatted_withdrawal_amount', className: 'withdrawal', width: 40, textOverview: true, align: 'right', clickable: true, }, { id: 'categorize_include', Header: '', accessor: (value) => ( ), width: 10, minWidth: 10, maxWidth: 10, align: 'right', className: 'categorize_include', }, ], [], ); }