Enhances column key retrieval to use consistent key format
Adds null check for filter template to prevent potential errors
Uses buildKeyFromColumn() for more robust key generation
Introduces flexible key-based filtering for calendar events across different view configurations
Adds new FilterTemplate class to:
- Define event matching rules based on view configuration
- Support multi-level grouping (team/resource/date)
- Handle dynamic key generation for columns and events
Enhances view configuration with explicit id properties and derived fields
Adds support for dragging events between header and grid views
Improves drag-and-drop state management and event persistence
Enables converting all-day events to timed events when dropped in grid
Refactors drag handling to support more flexible event interactions
Implements dynamic item positioning and layout recalculation for header drawer
- Adds ISO date tracking for header items
- Introduces dynamic row allocation algorithm
- Updates drawer expansion logic during drag operations
- Calculates and adjusts drawer height based on item tracks
Improves header drawer rendering to support multi-row event stacking
Adds row-based layout algorithm for all-day events
Enables flexible height expansion based on event count
Provides more robust event placement across visible date range
Enhances header drawer rendering to handle multi-day events
- Calculates column span for events across multiple days
- Adds support for events spanning beyond visible date range
- Updates event data attributes to include start and end dates
Extends calendar rendering to support all-day events in header drawer
Implements rendering logic for all-day events in header drawer:
- Fetches events for visible date range
- Filters and creates header items for all-day events
- Dynamically positions events with color classes
- Expands header drawer when events are present
Enhances event persistence with header drop detection
Adds expanded state tracking for header drawer during drag
Ensures drawer remains in the correct expanded/collapsed state based on initial condition
Improves user experience by maintaining consistent drawer state
Introduces HeaderDrawerRenderer and HeaderDrawerLayoutEngine to support dragging events into an all-day header drawer
Enables dynamic event placement and conversion between timed and all-day events through new drag interactions
Implements flexible layout calculation for header items with column and row management
Extends DragDropManager to handle header zone interactions
Adds new event types for header drag events