diff --git a/src/views/User/UserActivities.jsx b/src/views/User/UserActivities.jsx
index 4a4d5f6..c1b2692 100644
--- a/src/views/User/UserActivities.jsx
+++ b/src/views/User/UserActivities.jsx
@@ -37,6 +37,7 @@ import { useFilter } from '../../hooks/useFilter'
import { useLocalization } from '../../contexts/LocalizationContext'
import { useChores, useChoresHistory } from '../../queries/ChoreQueries'
+import HistoryDetailModal from '../Modals/HistoryDetailModal'
import NoteViewerModal from '../Modals/Inputs/NoteViewerModal'
import { useCircleMembers, useUserProfile } from '../../queries/UserQueries.jsx'
import { useLabels } from '../Labels/LabelQueries'
@@ -69,11 +70,31 @@ const statusConfig = {
6: { color: 'warning', icon: },
}
-const ChoreHistoryItem = ({ time, name, points, status, performer, notes, onViewNote }) => {
+const ChoreHistoryItem = ({
+ time,
+ name,
+ points,
+ status,
+ notes,
+ onViewNote,
+ onViewDetails,
+}) => {
const cfg = statusConfig[status] ?? statusConfig[1]
return (
-
+
{time}
@@ -134,16 +155,16 @@ const ChoreHistoryItem = ({ time, name, points, status, performer, notes, onView
)
}
-
-const ChoreHistoryTimeline = ({ history, onViewNote }) => {
+const ChoreHistoryTimeline = ({
+ history,
+ performers,
+ onViewNote,
+ onViewDetails,
+}) => {
const { fmt } = useLocalization()
const groupedHistory = groupByDate(history)
- const sortedEntries = Object.entries(groupedHistory).sort(
- ([a], [b]) => new Date(b) - new Date(a),
- )
-
return (
@@ -164,20 +185,16 @@ const ChoreHistoryTimeline = ({ history, onViewNote }) => {
{items.map(record => (
- <>
-
- >
+ onViewDetails?.(record, performers)}
+ />
))}
@@ -396,6 +413,7 @@ const UserActivites = () => {
const [enrichedHistory, setEnrichedHistory] = React.useState([])
const [selectedChart, setSelectedChart] = React.useState('history')
const [noteViewerConfig, setNoteViewerConfig] = useState({ isOpen: false })
+ const [detailModalConfig, setDetailModalConfig] = useState({ isOpen: false })
const [historyPieChartData, setHistoryPieChartData] = React.useState([])
const [choreDuePieChartData, setChoreDuePieChartData] = React.useState([])
@@ -1038,6 +1056,7 @@ const UserActivites = () => {
{
setNoteViewerConfig({
isOpen: true,
@@ -1046,6 +1065,14 @@ const UserActivites = () => {
onClose: () => setNoteViewerConfig({ isOpen: false }),
})
}}
+ onViewDetails={(entry, performers) => {
+ setDetailModalConfig({
+ isOpen: true,
+ entry,
+ performers,
+ onClose: () => setDetailModalConfig({ isOpen: false }),
+ })
+ }}
/>
@@ -1197,6 +1224,7 @@ const UserActivites = () => {
>
)}
+
)
}