Skip to content

fix: quickfixes only shown when needed and bulk updates are possible … - #868

Open
juliankepka wants to merge 1 commit into
mainfrom
fix/quickfix-bulk-update
Open

fix: quickfixes only shown when needed and bulk updates are possible …#868
juliankepka wants to merge 1 commit into
mainfrom
fix/quickfix-bulk-update

Conversation

@juliankepka

Copy link
Copy Markdown
Collaborator

…in dep risk table
Bildschirmfoto 2026-08-04 um 15 14 10

Copilot AI lite review requested due to automatic review settings August 4, 2026 13:14
@juliankepka juliankepka linked an issue Aug 4, 2026 that may be closed by this pull request

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR refines the dependency risk table UX by (1) only rendering “Quick Fix” UI when a fix is actually available and (2) adding selection controls to enable bulk actions on vulnerabilities/paths.

Changes:

  • Add reusable SelectionCheckbox and introduce “select all vulnerabilities of this package” behavior (excluding fixed vulns).
  • Switch Quickfix rendering guard to isQuickfixAvailable(...) and simplify the Quickfix content now that it only renders when actionable.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
src/components/risk-handling/RiskHandlingRow.tsx Adds selection checkboxes (including package-level select-all) and reuses the new checkbox component across rows.
src/components/Quickfix.tsx Ensures Quickfix is only shown when a real upgrade is available and streamlines the displayed messaging/command.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +65 to +89
<div
className={classNames(
"relative flex size-4 shrink-0 items-center justify-center",
className,
)}
>
<Checkbox
checked={checked}
onCheckedChange={onToggle}
disabled={disabled}
aria-label={ariaLabel}
/>
<span
aria-hidden
className={classNames(
"absolute -inset-2",
disabled ? "cursor-not-allowed" : "cursor-pointer",
)}
onClick={(e) => {
e.stopPropagation();
if (disabled) return;
onToggle();
}}
/>
</div>
Comment on lines +328 to +333
<TooltipContent>
Select {packageSelectableIds.length === 1 ? "" : "all"}{" "}
{packageSelectableIds.length} vulnerabilit
{packageSelectableIds.length === 1 ? "y" : "ies"} of this
package
</TooltipContent>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Hide quickfixes if none is available

2 participants