diff --git a/client/src/components/BoardActions/BoardActions.jsx b/client/src/components/BoardActions/BoardActions.jsx index 0f1d552..5aa1db7 100644 --- a/client/src/components/BoardActions/BoardActions.jsx +++ b/client/src/components/BoardActions/BoardActions.jsx @@ -1,6 +1,8 @@ import React from 'react'; import PropTypes from 'prop-types'; +import { useTranslation } from 'react-i18next'; +import classNames from 'classnames'; import Filters from './Filters'; import Memberships from '../Memberships'; import BoardMembershipPermissionsSelectStep from '../BoardMembershipPermissionsSelectStep'; @@ -9,6 +11,7 @@ import styles from './BoardActions.module.scss'; const BoardActions = React.memo( ({ + cardCount, memberships, labels, filterUsers, @@ -28,9 +31,14 @@ const BoardActions = React.memo( onLabelMove, onLabelDelete, }) => { + const [t] = useTranslation(); + return (
+
+ {cardCount} {[cardCount !== 1 ? t('common.cards') : t('common.card')]} +
{ + const listIds = selectors.selectListIdsForCurrentBoard(state); + const listCardsCount = listIds.map( + (list) => selectors.selectCardIdsByListId(state, list).cardIdsFull.length, + ); + const cardCount = listCardsCount.reduce((sum, count) => sum + count, 0); const allUsers = selectors.selectUsers(state); const isCurrentUserManager = selectors.selectIsCurrentUserManagerForCurrentProject(state); const memberships = selectors.selectMembershipsForCurrentBoard(state); @@ -19,6 +24,7 @@ const mapStateToProps = (state) => { !!currentUserMembership && currentUserMembership.role === BoardMembershipRoles.EDITOR; return { + cardCount, memberships, labels, filterUsers,