Improves all-day event drag and drop

Refactors all-day event drag and drop handling for improved accuracy and performance.

Introduces a shared `ColumnDetectionUtils` for consistent column detection.

Simplifies all-day conversion during drag, placing events in row 1 and calculating the column from the target date.

Implements differential updates during drag end, updating only changed events for smoother transitions.
This commit is contained in:
Janus C. H. Knudsen 2025-09-26 22:11:57 +02:00
parent 41d078e2e8
commit 0553089085
6 changed files with 307 additions and 185 deletions

View file

@ -87,6 +87,14 @@ export interface DragMouseLeaveHeaderEventPayload {
cloneElement: HTMLElement| null;
}
// Drag column change event payload
export interface DragColumnChangeEventPayload {
draggedElement: HTMLElement;
previousColumn: string | null;
newColumn: string;
mousePosition: MousePosition;
}
// Header ready event payload
export interface HeaderReadyEventPayload {
headerElement: HTMLElement;