diff --git a/client/src/components/DialogsContainer.js b/client/src/components/DialogsContainer.js index ededd0cd0..1259ebf89 100644 --- a/client/src/components/DialogsContainer.js +++ b/client/src/components/DialogsContainer.js @@ -1,14 +1,14 @@ import React from 'react'; import AccountFormDialog from 'containers/Dashboard/Dialogs/AccountFormDialog'; import UserFormDialog from 'containers/Dashboard/Dialogs/UserFormDialog'; -import ItemFromDialog from 'containers/Dashboard/Dialogs/ItemFromDialog'; +import ItemFCategoryDialog from 'containers/Dashboard/Dialogs/ItemCategoryDialog'; export default function DialogsContainer() { return ( + - ); } diff --git a/client/src/components/Items/ItemsCategoryList.js b/client/src/components/Items/ItemsCategoryList.js new file mode 100644 index 000000000..33f1ba7b6 --- /dev/null +++ b/client/src/components/Items/ItemsCategoryList.js @@ -0,0 +1,85 @@ +import React, { useEffect, useCallback, useState, useMemo } from 'react'; +import Icon from 'components/Icon'; +import ItemsCategoryConnect from 'connectors/ItemsCategory.connect'; +import DialogConnect from 'connectors/Dialog.connector'; +import LoadingIndicator from 'components/LoadingIndicator'; +import { compose } from 'utils'; +import DataTable from 'components/DataTable'; +import { Button, Popover, Menu, MenuItem, Position } from '@blueprintjs/core'; + +const ItemsCategoryList = ({ + categories, + onFetchData, + onDeleteCategory, + onEditCategory, + openDialog +}) => { + const handelEditCategory = category => () => { + openDialog('item-form', { action: 'edit', id: category.id }); + onEditCategory(category.id); + }; + + const handleDeleteCategory = category => () => { + onDeleteCategory(category); + }; + + const actionMenuList = category => ( + + + + + ); + + const columns = useMemo( + () => [ + { + id: 'name', + Header: 'Category Name', + accessor: 'name' + }, + { + id: 'description', + Header: 'Description', + accessor: 'description' + }, + + { + id: 'actions', + Header: '', + Cell: ({ cell }) => ( + +