import { useIntl } from '@edx/frontend-platform/i18n'; import { Card, Collapsible, Container, Icon, IconButton, } from '@openedx/paragon'; import { Delete, Person } from '@openedx/paragon/icons'; import PermissionRow from './PermissionsRow'; import messages from './messages'; interface CardTitleProps { title: string; userCounter?: number | null; } interface RoleCardProps extends CardTitleProps { objectName?: string | null; description: string; handleDelete?: () => void; permissionsByResource: any[]; } const CardTitle = ({ title, userCounter = null }: CardTitleProps) => { const { formatMessage } = useIntl(); return (
{title} {userCounter !== null && ( {userCounter} )}
); }; const RoleCard = ({ title, objectName, description, handleDelete, permissionsByResource, userCounter, }: RoleCardProps) => { const intl = useIntl(); return ( } subtitle={(objectName && {objectName}) || ''} actions={ handleDelete && ( ) } /> {description} {permissionsByResource.map((resourceGroup) => ( ))} ); }; export default RoleCard;