Skip to content

feat(FR-2183): add set as main and deactivate actions for active tab#6103

Open
agatha197 wants to merge 2 commits into03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modalfrom
03-23-feat_fr-2183_add_set_as_main_and_deactivate_actions_for_active_tab
Open

feat(FR-2183): add set as main and deactivate actions for active tab#6103
agatha197 wants to merge 2 commits into03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modalfrom
03-23-feat_fr-2183_add_set_as_main_and_deactivate_actions_for_active_tab

Conversation

@agatha197
Copy link
Copy Markdown
Contributor

@agatha197 agatha197 commented Mar 23, 2026

Resolves #6095(FR-2183)

Summary

  • Add action column to the Active tab table with "Set as Main" and "Deactivate" actions
  • "Set as Main" uses switchMyMainAccessKey mutation with Popconfirm confirmation (hidden for current main keypair)
  • "Deactivate" uses updateMyKeypair mutation with Popconfirm confirmation (disabled with tooltip for main keypair)
  • Use useTransition for flicker-free refetch after mutations, with subtle opacity reduction during pending state
  • Add 7 new i18n keys for action labels, confirmations, and success messages

Copy link
Copy Markdown
Contributor Author

agatha197 commented Mar 23, 2026

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.
Learn more


How to use the Graphite Merge Queue

Add either label to this PR to merge it via the merge queue:

  • flow:merge-queue - adds this PR to the back of the merge queue
  • flow:hotfix - for urgent changes, fast-track this PR to the front of 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.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 23, 2026

Coverage report for ./react

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

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

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 useTransition with 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).

@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modal branch from c256e7b to e725c6e Compare March 25, 2026 11:37
@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_set_as_main_and_deactivate_actions_for_active_tab branch from c168ca9 to e423cd9 Compare March 25, 2026 11:37
@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modal branch from e725c6e to b96da0e Compare March 25, 2026 11:51
@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_set_as_main_and_deactivate_actions_for_active_tab branch 3 times, most recently from ed6e79c to d58bac4 Compare March 26, 2026 06:29
@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modal branch from b96da0e to acd8284 Compare March 26, 2026 06:29
@agatha197 agatha197 requested review from ironAiken2, nowgnuesLee and yomybaby and removed request for ironAiken2, nowgnuesLee and yomybaby March 26, 2026 06:41
@agatha197 agatha197 changed the base branch from 03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modal to graphite-base/6103 March 26, 2026 06:55
@agatha197 agatha197 requested a review from ironAiken2 March 27, 2026 04:56
@agatha197 agatha197 changed the base branch from main to graphite-base/6103 March 27, 2026 05:12
@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_set_as_main_and_deactivate_actions_for_active_tab branch from 2d25dae to 83486f0 Compare March 27, 2026 05:12
@github-actions github-actions bot added size:L 100~500 LoC and removed size:XL 500~ LoC labels Mar 27, 2026
@agatha197 agatha197 changed the base branch from graphite-base/6103 to 03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modal March 27, 2026 05:13
@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modal branch from 8db180e to 327914c Compare March 27, 2026 05:44
@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_set_as_main_and_deactivate_actions_for_active_tab branch from 83486f0 to 1701cad Compare March 27, 2026 05:44
Copy link
Copy Markdown
Contributor

@ironAiken2 ironAiken2 left a comment

Choose a reason for hiding this comment

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

How about displaying the "default access key" for table columns differently? Instead of text, it might be better to show the main access key icon for the control button.

The button in the "control" column should not be hidden based on conditions; instead, it should remain visible but be disabled.

image.png

@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modal branch from 327914c to dd04d77 Compare March 27, 2026 07:42
@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_set_as_main_and_deactivate_actions_for_active_tab branch from 1701cad to f802946 Compare March 27, 2026 07:42
@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modal branch from dd04d77 to 72839c8 Compare March 27, 2026 07:52
@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_set_as_main_and_deactivate_actions_for_active_tab branch 2 times, most recently from d7ee733 to f5d8655 Compare March 27, 2026 07:54
@agatha197 agatha197 requested a review from ironAiken2 March 27, 2026 07:54
@agatha197 agatha197 marked this pull request as draft March 27, 2026 09:01
@agatha197 agatha197 changed the base branch from 03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modal to graphite-base/6103 March 27, 2026 09:55
@agatha197 agatha197 force-pushed the graphite-base/6103 branch from 72839c8 to 8f6003a Compare March 27, 2026 14:35
@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_set_as_main_and_deactivate_actions_for_active_tab branch from f5d8655 to 111adf0 Compare March 27, 2026 14:35
@agatha197 agatha197 changed the base branch from graphite-base/6103 to 03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modal March 27, 2026 14:35
@github-actions github-actions bot added area:lib Library and SDK related issue. size:XL 500~ LoC and removed size:L 100~500 LoC labels Mar 27, 2026
@agatha197 agatha197 marked this pull request as ready for review March 27, 2026 14:35
@agatha197 agatha197 requested a review from Copilot March 27, 2026 14:36
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

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 uses useDeferredValue and calls updateFetchKey() 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';

@agatha197 agatha197 force-pushed the 03-23-feat_fr-2183_add_issue_new_keypair_mutation_and_credential_result_modal branch from 8f6003a to 66319c8 Compare March 27, 2026 14:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:i18n Localization area:lib Library and SDK related issue. area:ux UI / UX issue. size:XL 500~ LoC status:review Under review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(FR-2183): add Set as Main and Deactivate actions for Active tab

3 participants