import React from 'react'; import { Menu, MenuProps } from 'semantic-ui-react'; import { useRelatableStateContext } from '../../states'; import { withFilters, withGrouping, withSelection, withSorting } from '../../add-ons'; import { isActionAvailable } from '../../utils/relatable-actions'; import SortableToolbar from './sortable.toolbar'; import FilterableToolbar from './filterable.toolbar'; import GroupableToolbar from './groupable.toolbar'; import SelectableToolbar from './selectable.toolbar'; export default function Toolbar(props: React.PropsWithChildren = {}): JSX.Element { const { className = '', children, ...rest } = props; const { availableGlobalActions } = useRelatableStateContext(); if (children) { return {children} ; } return {isActionAvailable(availableGlobalActions, withGrouping.name) && } {isActionAvailable(availableGlobalActions, withFilters.name) && } {isActionAvailable(availableGlobalActions, withSorting.name) && } {isActionAvailable(availableGlobalActions, withSelection.name) && } ; }