feat(FR-2183): add set as main and deactivate actions for active tab#6103
Conversation
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has required the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
Coverage report for
|
St.❔ |
Category | Percentage | Covered / Total |
|---|---|---|---|
| 🔴 | Statements | 8.75% (-0.02% 🔻) |
1543/17634 |
| 🔴 | Branches | 7.56% (-0.01% 🔻) |
930/12306 |
| 🔴 | Functions | 5.65% (-0.02% 🔻) |
278/4919 |
| 🔴 | Lines | 8.42% (-0.02% 🔻) |
1446/17165 |
Test suite run success
784 tests passing in 37 suites.
Report generated by 🧪jest coverage report action from 48bde00
There was a problem hiding this comment.
Pull request overview
Adds per-row actions to the My Keypair Management modal’s Active tab so users can switch their main access key or deactivate a keypair, with confirmation prompts and refetch UX smoothing.
Changes:
- Add “Set as Main” and “Deactivate” action buttons (with Popconfirm/Tooltip) to the Active tab table.
- Introduce Relay mutations for switching main key and deactivating keypairs, and refetch via
useTransitionwith a pending-state opacity change. - Add new i18n strings for action labels, confirmations, and success messages (English only in this PR).
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 7 comments.
| File | Description |
|---|---|
| react/src/components/MyKeypairManagementModal.tsx | Adds action column + mutations + transition-based refetch styling for main-switch/deactivate flows. |
| resources/i18n/en.json | Adds new English i18n keys used by the new action UI (labels/confirmations/toasts). |
c256e7b to
e725c6e
Compare
c168ca9 to
e423cd9
Compare
e725c6e to
b96da0e
Compare
ed6e79c to
d58bac4
Compare
b96da0e to
acd8284
Compare
2d25dae to
83486f0
Compare
8db180e to
327914c
Compare
83486f0 to
1701cad
Compare
327914c to
dd04d77
Compare
1701cad to
f802946
Compare
dd04d77 to
72839c8
Compare
d7ee733 to
f5d8655
Compare
72839c8 to
8f6003a
Compare
f5d8655 to
111adf0
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 23 out of 23 changed files in this pull request and generated 1 comment.
Comments suppressed due to low confidence (1)
react/src/components/MyKeypairManagementModal.tsx:51
- The PR description mentions using
useTransition(and a pending-state opacity treatment) for flicker-free refetching after mutations, but this component currently only usesuseDeferredValueand callsupdateFetchKey()directly. Either update the PR description to match the implementation, or wrap the refetch-triggering state updates in a transition (and apply the pending UI state) if that behavior is still intended.
import { useDeferredValue, useState } from 'react';
import { useTranslation } from 'react-i18next';
import { graphql, useLazyLoadQuery, useMutation } from 'react-relay';
8f6003a to
66319c8
Compare


Resolves #6095(FR-2183)
Summary
switchMyMainAccessKeymutation withPopconfirmconfirmation (hidden for current main keypair)updateMyKeypairmutation withPopconfirmconfirmation (disabled with tooltip for main keypair)useTransitionfor flicker-free refetch after mutations, with subtle opacity reduction during pending state