+ style="
+ grid-template-columns: minmax(420px, 1fr) repeat(7, minmax(96px, 120px)) minmax(
+ 100px,
+ auto
+ ) 40px;
+ ">
diff --git a/resources/js/Pages/Timesheet.vue b/resources/js/Pages/Timesheet.vue
index 5a9e6c62..40c997e7 100644
--- a/resources/js/Pages/Timesheet.vue
+++ b/resources/js/Pages/Timesheet.vue
@@ -170,12 +170,9 @@ async function createTag(name: string): Promise {
@remove-row="handleRemoveRow"
@cell-update="handleCellUpdate"
@project-task-change="
- (row, projectId, taskId) =>
- handleRowIdentityChange(row, { projectId, taskId })
- "
- @billable-change="
- (row, billable) => handleRowIdentityChange(row, { billable })
+ (row, projectId, taskId) => handleRowIdentityChange(row, { projectId, taskId })
"
+ @billable-change="(row, billable) => handleRowIdentityChange(row, { billable })"
@tags-change="(row, tags) => handleRowIdentityChange(row, { tags })"
@add-row="handleAddRow" />
diff --git a/resources/js/utils/timesheet/cellMath.ts b/resources/js/utils/timesheet/cellMath.ts
index f8a04aed..71f78361 100644
--- a/resources/js/utils/timesheet/cellMath.ts
+++ b/resources/js/utils/timesheet/cellMath.ts
@@ -88,7 +88,6 @@ export function findFreeWindowOnDay(
// Sort + merge so we can walk a clean [gap, obstacle, gap, ...] sequence.
obstacles.sort((a, b) => a.start.diff(b.start));
-
// merge overlaps
const merged: Interval[] = [];
for (const obs of obstacles) {
diff --git a/resources/js/utils/timesheet/useTimesheetCellMutations.ts b/resources/js/utils/timesheet/useTimesheetCellMutations.ts
index fafd84a9..e9abec0e 100644
--- a/resources/js/utils/timesheet/useTimesheetCellMutations.ts
+++ b/resources/js/utils/timesheet/useTimesheetCellMutations.ts
@@ -19,7 +19,6 @@ import {
type FreeWindow,
} from './cellMath';
-
/**
* Cell-level edit dispatcher. Picks one of four strategies based on
* the diff between current and requested totals:
@@ -317,6 +316,5 @@ export function useTimesheetCellMutations(
return best;
}
-
return { handleCellUpdate };
}