diff --git a/packages/manager/src/components/AccessPanel/UserSSHKeyPanel.tsx b/packages/manager/src/components/AccessPanel/UserSSHKeyPanel.tsx index 41f421abe54..667ad4897fe 100644 --- a/packages/manager/src/components/AccessPanel/UserSSHKeyPanel.tsx +++ b/packages/manager/src/components/AccessPanel/UserSSHKeyPanel.tsx @@ -101,10 +101,11 @@ const UserSSHKeyPanel: React.FC = (props) => { setSelectedSSHKey(key); }; /* -- Clanode Change End -- */ - const handleKeyAddSuccess = () => { + const handleKeyAddSuccess = (key: string) => { onKeyAddSuccess(); setSuccess(true); setDrawerOpen(false); + setSelectedSSHKey(key); }; const handleOpenDrawer = () => { @@ -116,6 +117,12 @@ const UserSSHKeyPanel: React.FC = (props) => { ? users.filter((thisUser) => thisUser.keys.length > 0) : []; + React.useEffect(() => { + usersWithKeys + .find((user) => user.keys[0] === selectedSSHKey) + ?.onSSHKeyChange({} as React.ChangeEvent, true); + }, [usersWithKeys]); + return ( diff --git a/packages/manager/src/features/Profile/SSHKeys/SSHKeyCreationDrawer.tsx b/packages/manager/src/features/Profile/SSHKeys/SSHKeyCreationDrawer.tsx index f8530403404..266e3c77fd9 100644 --- a/packages/manager/src/features/Profile/SSHKeys/SSHKeyCreationDrawer.tsx +++ b/packages/manager/src/features/Profile/SSHKeys/SSHKeyCreationDrawer.tsx @@ -11,7 +11,7 @@ import getAPIErrorFor from 'src/utilities/getAPIErrorFor'; interface Props { open: boolean; - onSuccess: () => void; + onSuccess: (key: string) => void; onCancel: () => void; } @@ -126,7 +126,7 @@ export class SSHKeyCreationDrawer extends React.PureComponent< createSSHKey({ label, ssh_key: sshKey }) .then((_) => { this.setState({ submitting: false }); - this.props.onSuccess(); + this.props.onSuccess(label); }) .catch((error) => { this.setState({