diff --git a/jsapp/js/projects/projectsTable/projectBulkActions.tsx b/jsapp/js/projects/projectsTable/projectBulkActions.tsx index e8db7a3091..74cf69ba61 100644 --- a/jsapp/js/projects/projectsTable/projectBulkActions.tsx +++ b/jsapp/js/projects/projectsTable/projectBulkActions.tsx @@ -3,14 +3,20 @@ import type {AssetResponse, ProjectViewAsset} from 'js/dataInterface'; import Button from 'js/components/common/button'; import actionsStyles from './projectActions.module.scss'; import BulkDeletePrompt from './bulkActions/bulkDeletePrompt'; +import {userCan} from 'js/components/permissions/utils'; interface ProjectBulkActionsProps { /** A list of selected assets for bulk operations. */ assets: Array; } +function userCanDeleteAssets(assets: Array) { + return assets.every((asset) => userCan('manage_asset', asset)); +} + export default function ProjectBulkActions(props: ProjectBulkActionsProps) { const [isDeletePromptOpen, setIsDeletePromptOpen] = useState(false); + const canBulkDelete = userCanDeleteAssets(props.assets); return (
@@ -37,18 +43,30 @@ export default function ProjectBulkActions(props: ProjectBulkActionsProps) { /> {/* Delete */} -