Feature: Show Task Details For Approved Tasks#1164
Merged
b1ink0 merged 4 commits intofeat/redesignfrom Apr 6, 2026
Merged
Conversation
Collaborator
Author
|
Depends on #1163. |
Contributor
There was a problem hiding this comment.
Pull request overview
This PR fixes missing inline time-entry popover details for approved (disabled) cells in the timesheet UI and refactors the inline popover to reuse already-fetched task/time-entry data instead of issuing an extra details API request.
Changes:
- Updated the design-system timesheet
TaskRowpopover trigger so hover can work even when the underlying cell button is disabled (approved entries). - Refactored the app’s
InlineTimeEntrypopover to accept precomputed time-entry data (tasks) and adisabledflag rather than fetching details on demand. - Extended the app
TaskRowrow-data computation to provide per-day task entries to the inline popover.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| frontend/packages/design-system/src/components/timesheet/rows/task/taskRow.tsx | Adjusts popover trigger rendering to enable hover behavior for disabled/approved cells. |
| frontend/packages/app/src/components/timesheet-row/components/row/taskRow.tsx | Computes and passes per-day task entries + disabled state into the inline popover. |
| frontend/packages/app/src/components/timesheet-row/components/inline-time-entry/types.ts | Updates inline popover prop types to include taskKey, tasks, and disabled. |
| frontend/packages/app/src/components/timesheet-row/components/inline-time-entry/index.tsx | Removes details fetching and renders inline popover from provided task entry data; gates editing UI via disabled. |
Comments suppressed due to low confidence (1)
frontend/packages/app/src/components/timesheet-row/components/row/taskRow.tsx:67
tasksForDateis filtered usingentry.from_time.includes(date), which is inconsistent with the rest of the timesheet calculations (e.g.,calculateTotalHoursusesgetDateFromDateAndTimeString(from_time) === date).includescan produce false matches and may incorrectly mark a day as approved/disabled. Use the same date-extraction helper for an exact match.
const currentTotal = calculateTotalHours(tasks, date);
// Check if the time entry for the day is approved or not.
const tasksForDate = tasks[taskKey].data.filter((entry) =>
entry.from_time.includes(date),
);
const isApproved = tasksForDate.some((entry) => entry.docstatus === 1);
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
frontend/packages/app/src/components/timesheet-row/components/row/taskRow.tsx
Outdated
Show resolved
Hide resolved
frontend/packages/app/src/components/timesheet-row/components/inline-time-entry/types.ts
Outdated
Show resolved
Hide resolved
frontend/packages/app/src/components/timesheet-row/components/inline-time-entry/index.tsx
Show resolved
Hide resolved
frontend/packages/design-system/src/components/timesheet/rows/task/taskRow.tsx
Show resolved
Hide resolved
ayushnirwal
approved these changes
Apr 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR fixes missing task details on hover for approved time entries and refactors the code to reuse existing task data instead of making a new API request.
Screenshot/Screencast
Screen.Recording.2026-04-01.at.11.35.28.PM.mov
Checklist