diff --git a/src/routes.tsx b/src/routes.tsx index 43a2ac41c..7a2db106e 100644 --- a/src/routes.tsx +++ b/src/routes.tsx @@ -28,7 +28,7 @@ import RepoList from './ui/views/RepoList/RepoList'; import SettingsView from './ui/views/Settings/Settings'; import { RepoIcon } from '@primer/octicons-react'; -import { Group, AccountCircle, Dashboard, Settings } from '@material-ui/icons'; +import { AccountCircle, Dashboard, Group, Settings } from '@material-ui/icons'; import { Route } from './types/models'; @@ -90,12 +90,10 @@ const dashboardRoutes: Route[] = [ visible: true, }, { - path: '/admin/user/:id', + path: '/user/:id', name: 'User', icon: Person, - component: (props) => ( - - ), + component: (props) => , layout: '/dashboard', visible: false, }, diff --git a/src/ui/components/UserLink/UserLink.tsx b/src/ui/components/UserLink/UserLink.tsx new file mode 100644 index 000000000..5a4a355f4 --- /dev/null +++ b/src/ui/components/UserLink/UserLink.tsx @@ -0,0 +1,13 @@ +import React from 'react'; +import { Link } from 'react-router-dom'; + +interface UserLinkProps { + username: string; + children?: React.ReactNode; +} + +const UserLink: React.FC = ({ username, children }) => { + return {children || username}; +}; + +export default UserLink; diff --git a/src/ui/views/PushDetails/PushDetails.tsx b/src/ui/views/PushDetails/PushDetails.tsx index 32fa31610..054d8d1f7 100644 --- a/src/ui/views/PushDetails/PushDetails.tsx +++ b/src/ui/views/PushDetails/PushDetails.tsx @@ -25,6 +25,7 @@ import Tooltip from '@material-ui/core/Tooltip'; import { PushData } from '../../../types/models'; import { trimPrefixRefsHeads, trimTrailingDotGit } from '../../../db/helper'; import { generateEmailLink, getGitProvider } from '../../utils'; +import UserLink from '../../components/UserLink/UserLink'; const Dashboard: React.FC = () => { const { id } = useParams<{ id: string }>(); @@ -198,25 +199,21 @@ const Dashboard: React.FC = () => { ) : ( <> {isGitHub && ( - + - + )}

{isGitHub && ( - + {data.attestation.reviewer.gitAccount} - + )} - {!isGitHub && ( - - {data.attestation.reviewer.username} - - )}{' '} + {!isGitHub && }{' '} approved this contribution

diff --git a/src/ui/views/PushDetails/components/AttestationView.tsx b/src/ui/views/PushDetails/components/AttestationView.tsx index 60f348a1c..f563209b1 100644 --- a/src/ui/views/PushDetails/components/AttestationView.tsx +++ b/src/ui/views/PushDetails/components/AttestationView.tsx @@ -12,6 +12,7 @@ import { withStyles } from '@material-ui/core/styles'; import { green } from '@material-ui/core/colors'; import { setURLShortenerData } from '../../../services/config'; import { AttestationViewProps } from '../attestation.types'; +import UserLink from '../../../components/UserLink/UserLink'; const StyledFormControlLabel = withStyles({ root: { @@ -70,17 +71,15 @@ const AttestationView: React.FC = ({ attestation, setAttes

Prior to making this code contribution publicly accessible via GitHub, this code contribution was reviewed and approved by{' '} - {data.reviewer.gitAccount} - . As a reviewer, it was their responsibility to confirm that open sourcing this - contribution followed the requirements of the company open source contribution policy. + {data.reviewer.gitAccount}. As a + reviewer, it was their responsibility to confirm that open sourcing this contribution + followed the requirements of the company open source contribution policy.

- - {data.reviewer.gitAccount} - {' '} + {data.reviewer.gitAccount}{' '} approved this contribution{' '} { {data.users.canAuthorise.map((row) => ( - {row} + {user.admin && ( @@ -245,7 +246,7 @@ const RepoDetails: React.FC = () => { {data.users.canPush.map((row) => ( - {row} + {user.admin && ( diff --git a/src/ui/views/UserList/Components/UserList.tsx b/src/ui/views/UserList/Components/UserList.tsx index 68a4e6a0f..ac98fe7a1 100644 --- a/src/ui/views/UserList/Components/UserList.tsx +++ b/src/ui/views/UserList/Components/UserList.tsx @@ -32,8 +32,7 @@ const UserList: React.FC = () => { const itemsPerPage = 5; const [searchQuery, setSearchQuery] = useState(''); - const openUser = (username: string) => - navigate(`/dashboard/admin/user/${username}`, { replace: true }); + const openUser = (username: string) => navigate(`/dashboard/user/${username}`, { replace: true }); useEffect(() => { getUsers(setIsLoading, setData, setAuth, setErrorMessage);