feat: Context menu on data-table.

This commit is contained in:
Ahmed Bouhuolia
2020-06-21 19:23:12 +02:00
parent 15bcd55979
commit 53cc8ba057
9 changed files with 337 additions and 223 deletions

View File

@@ -102,28 +102,32 @@ function ManualJournalsDataTable({
const actionMenuList = useCallback(
(journal) => (
<Menu>
<MenuItem text={<T id={'view_details'} />} />
<MenuItem text={formatMessage({ id: 'view_details' })} />
<MenuDivider />
{!journal.status && (
<MenuItem
text={<T id={'publish_journal'} />}
text={formatMessage({ id: 'publish_journal' })}
onClick={handlePublishJournal(journal)}
/>
)}
<MenuItem
text={<T id={'edit_journal'} />}
text={formatMessage({ id: 'edit_journal' })}
onClick={handleEditJournal(journal)}
/>
<MenuItem
text={<T id={'delete_journal'} />}
text={formatMessage({ id: 'delete_journal' })}
intent={Intent.DANGER}
onClick={handleDeleteJournal(journal)}
/>
</Menu>
),
[handleEditJournal, handleDeleteJournal, handlePublishJournal],
[handleEditJournal, handleDeleteJournal, handlePublishJournal, formatMessage],
);
const onRowContextMenu = useCallback((cell) => {
return actionMenuList(cell.row.original);
}, [actionMenuList]);
const columns = useMemo(
() => [
{
@@ -245,6 +249,8 @@ function ManualJournalsDataTable({
onSelectedRowsChange={handleSelectedRowsChange}
pagination={true}
rowContextMenu={onRowContextMenu}
pagesCount={manualJournalsPagination.pagesCount}
initialPageSize={manualJournalsTableQuery.page_size}
initialPageIndex={manualJournalsTableQuery.page - 1}