Repository navigation
Conversation
The rich-text styles had no rule for images, so a screenshot in a description rendered at its natural width, ran out of the column and under the panels beside it on the task page. Limit images to the column and let the height follow, including when the editor stored a fixed width and height.
Feat/task page add subtask
…olish Feat/timesheet approvals polish
…flow fix(record-view): keep rich-text images inside their column
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the
|
[Medium impact] The changes affect task and timesheet workflows across the web app. Fix the timesheet save after navigation before merging; it can make later actions target the wrong timesheet. Findings
SummaryThis PR updates timesheet review pages and adds subtask actions.
|
There was a problem hiding this comment.
🟡 Changes recommended
A delayed approval response can overwrite a different timesheet opened after navigation, causing subsequent review actions to target the wrong timesheet.
3 open issues
What changed in this PR
This PR brings staged timesheet, task-detail, and project-board improvements into develop, extending existing review and task-management workflows.
Changes:
- Rebuilds timesheet approvals and details with aligned grids, status filters, summaries, and direct review actions.
- Adds subtask creation, richer subtask rows, inline status changes, and parent navigation.
- Updates board drop targeting and scrolling markup, contains rich-text images, and adds translations and regression tests.
| File | Description |
|---|---|
packages/ui-core/shared/src/lib/timesheet/edit-time-log-modal/edit-time-log-modal.component.scss |
Scopes dialog sizing and styles the overlap callout. |
packages/ui-core/shared/src/lib/timesheet/edit-time-log-modal/edit-time-log-modal.component.html |
Replaces the nested overlap card with an accessible callout. |
packages/ui-core/shared/src/lib/tasks/add-task-dialog/add-task-dialog.component.ts |
Adds parent locking and context-sensitive headings. |
packages/ui-core/shared/src/lib/tasks/add-task-dialog/add-task-dialog.component.spec.ts |
Tests locked-parent behavior and headings. |
packages/ui-core/shared/src/lib/tasks/add-task-dialog/add-task-dialog.component.html |
Uses the computed dialog heading. |
packages/ui-core/shared/src/lib/record-view/record-view.component.scss |
Constrains description images to their column. |
packages/ui-core/shared/src/lib/record-view/record-view-page.component.ts |
Adds a configurable back-button label. |
packages/ui-core/shared/src/lib/record-view/record-view-page.component.html |
Applies the back label to accessibility text and tooltip. |
packages/ui-core/i18n/assets/i18n/zh.json |
Adds Chinese filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/ru.json |
Adds Russian filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/pt.json |
Adds Portuguese filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/pl.json |
Adds Polish filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/nl.json |
Adds Dutch filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/it.json |
Adds Italian filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/he.json |
Adds Hebrew filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/fr.json |
Adds French filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/es.json |
Adds Spanish filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/en.json |
Adds English filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/de.json |
Adds German filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/bg.json |
Adds Bulgarian filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/ar.json |
Adds Arabic filter and subtask labels. |
packages/ui-core/i18n/assets/i18n/ach.json |
Adds filter and subtask entries to the locale file. |
apps/gauzy/src/app/pages/tasks/components/task-view/task-view-page.utils.ts |
Selects an initial status for new subtasks. |
apps/gauzy/src/app/pages/tasks/components/task-view/task-view-page.utils.spec.ts |
Tests initial-status selection and fallbacks. |
apps/gauzy/src/app/pages/tasks/components/task-view/task-view-page.component.ts |
Implements subtask creation, status changes, and parent navigation. |
apps/gauzy/src/app/pages/tasks/components/task-view/task-view-page.component.spec.ts |
Tests subtask workflows, permissions, rows, and navigation. |
apps/gauzy/src/app/pages/tasks/components/task-view/task-view-page.component.scss |
Aligns subtask columns and styles row controls. |
apps/gauzy/src/app/pages/tasks/components/task-view/task-view-page.component.html |
Adds subtask actions, assignees, priorities, and status menus. |
apps/gauzy/src/app/pages/projects/components/project-view/project-board/project-board.component.ts |
Updates drop targeting, placement, sorting, and rollback handling. |
apps/gauzy/src/app/pages/projects/components/project-view/project-board/project-board.component.spec.ts |
Tests drop positions, highlights, and failed saves. |
apps/gauzy/src/app/pages/projects/components/project-view/project-board/project-board.component.scss |
Enlarges drop targets and highlights destination columns. |
apps/gauzy/src/app/pages/projects/components/project-view/project-board/project-board.component.html |
Adds scrolling markup and drop-target bindings. |
apps/gauzy/src/app/pages/employees/timesheet/view/view/view.component.ts |
Adds grouped totals, employee lookup, and approval actions. |
apps/gauzy/src/app/pages/employees/timesheet/view/view/view.component.scss |
Styles the summary and scrollable log grid. |
apps/gauzy/src/app/pages/employees/timesheet/view/view/view.component.html |
Rebuilds details with summaries and row-level actions. |
apps/gauzy/src/app/pages/employees/timesheet/view/view.module.ts |
Imports spinner, tooltip, and empty-state support. |
apps/gauzy/src/app/pages/employees/timesheet/approvals/approvals/approvals.component.ts |
Adds status counts, filtering, scoped selection, and save guards. |
apps/gauzy/src/app/pages/employees/timesheet/approvals/approvals/approvals.component.scss |
Styles the approval grid, filters, and row actions. |
apps/gauzy/src/app/pages/employees/timesheet/approvals/approvals/approvals.component.html |
Adds status filters, totals, and direct row actions. |
apps/gauzy/src/app/pages/employees/timesheet/approvals/approvals.module.ts |
Adds tooltip support and removes the status-badge import. |
Review effort: Balanced
…ed alone The route reuses the timesheet page for another timesheet. An Approve or Deny whose answer landed after the page moved on merged timesheet A's answer, id included, into timesheet B, so B showed its logs while the review actions targeted A. The answer is now applied only while the page still shows the timesheet it was about. Answers Greptile and Copilot on ever-co#11630 / ever-co#11631. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…tatuses After an edit or a board move put the task in another project, refresh() kept the old project's statuses until the new ones were read, so Add subtask in that interval created the subtask with a status of the old project, and the status menu offered it. The old statuses now go as on a load, and Add subtask reads the new project's own. Answers Copilot on ever-co#11630 / ever-co#11631. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>


PR
Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.
Summary by cubic
Merges the staged timesheet, task, and project board changes into develop.
Timesheets
Tasks and project board
Written for commit 3cb365b. Summary will update on new commits.