Skip to content

Commit a5009a6

Browse files
committed
Make the paths /kudos/received and /kudos/sent go to the kudos page selecting the correct tab.
1 parent 8aa3f26 commit a5009a6

File tree

2 files changed

+12
-10
lines changed

2 files changed

+12
-10
lines changed

web-ui/src/components/routes/Routes.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ export default function Routes() {
106106
<Route path="/feedback/self-reviews">
107107
<SelfReviewsPage />
108108
</Route>
109-
<Route exact path="/kudos">
109+
<Route exact path="/kudos/:initialTab?">
110110
<Header title="Kudos" />
111111
<KudosPage />
112112
</Route>

web-ui/src/pages/KudosPage.jsx

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import React, { useCallback, useContext, useEffect, useState } from "react";
2+
import { useParams } from 'react-router-dom';
23
import { styled } from "@mui/material/styles";
34
import { Button, Tab, Typography } from "@mui/material";
45
import { TabContext, TabList, TabPanel } from "@mui/lab";
@@ -41,13 +42,14 @@ const Root = styled("div")({
4142
});
4243

4344
const KudosPage = () => {
45+
const { initialTab } = useParams();
4446
const { state, dispatch } = useContext(AppContext);
4547
const csrf = selectCsrfToken(state);
4648

4749
const currentUser = selectCurrentUser(state);
4850

4951
const [kudosDialogOpen, setKudosDialogOpen] = useState(false);
50-
const [kudosTab, setKudosTab] = useState("RECEIVED");
52+
const [kudosTab, setKudosTab] = useState(initialTab ?? "received");
5153
const [receivedKudos, setReceivedKudos] = useState([]);
5254
const [receivedKudosLoading, setReceivedKudosLoading] = useState(true);
5355
const [sentKudos, setSentKudos] = useState([]);
@@ -101,11 +103,11 @@ const KudosPage = () => {
101103
const handleTabChange = useCallback(
102104
(event, newTab) => {
103105
switch (newTab) {
104-
case "RECEIVED":
105-
setKudosTab("RECEIVED");
106+
case "received":
107+
setKudosTab("received");
106108
break;
107-
case "SENT":
108-
setKudosTab("SENT");
109+
case "sent":
110+
setKudosTab("sent");
109111
break;
110112
default:
111113
console.warn(`Invalid tab: ${newTab}`);
@@ -138,19 +140,19 @@ const KudosPage = () => {
138140
<TabList onChange={handleTabChange}>
139141
<Tab
140142
label="Received"
141-
value="RECEIVED"
143+
value="received"
142144
icon={<ArchiveIcon />}
143145
iconPosition="start"
144146
/>
145147
<Tab
146148
label="Sent"
147-
value="SENT"
149+
value="sent"
148150
icon={<UnarchiveIcon />}
149151
iconPosition="start"
150152
/>
151153
</TabList>
152154
</div>
153-
<TabPanel value="RECEIVED" style={{ padding: "1rem 0" }}>
155+
<TabPanel value="received" style={{ padding: "1rem 0" }}>
154156
{receivedKudosLoading ? (
155157
Array.from({ length: 5 }).map((_, index) => (
156158
<SkeletonLoader key={index} type="kudos" />
@@ -177,7 +179,7 @@ const KudosPage = () => {
177179
</div>
178180
)}
179181
</TabPanel>
180-
<TabPanel value="SENT" style={{ padding: "1rem 0" }}>
182+
<TabPanel value="sent" style={{ padding: "1rem 0" }}>
181183
{sentKudosLoading ? (
182184
Array.from({ length: 5 }).map((_, index) => (
183185
<SkeletonLoader key={index} type="kudos" />

0 commit comments

Comments
 (0)