d4883480b2ef0bfea703d69b1bb5d7280cecf02d
Extract shared helpers: - validateProjectExists, validateTodoExists, validateCompanyExists, validateRelatedEntities (replaces 4x copy-pasted validation blocks) - generateTimesheetWorkbook (shared workbook creation logic) - addDailySummary (shared daily totals section) - saveTimesheetFile (shared file save + DB insert) - computeDailyTotals, getUserNamePrefix generateMonthlyTimesheet and generateCompanyTimesheet now use shared helpers instead of duplicating ~370 lines each. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Description
No description provided
Languages
JavaScript
92%
HTML
7.9%
Dockerfile
0.1%