Introduces new ResourceColumnDataSource and ResourceHeaderRenderer to support column rendering by resources instead of dates
Enables dynamic calendar mode switching between date and resource views
Updates core managers and services to support async column retrieval
Refactors data source interfaces to use Promise-based methods
Improves calendar flexibility and resource management capabilities
Abstracts column data source with interface
Updates managers to use configuration-driven view and date
Decouples datasource creation from individual managers
Improves flexibility and dependency injection for calendar components
Fundamentally refactors booking system to support:
- Split-resource bookings
- Service-level resource assignment
- Clear separation between booking and calendar events
Introduces new interfaces and type definitions to model complex booking scenarios, enabling more flexible and accurate resource management
Improves type safety by removing ambiguous type annotations
Centralizes date calculation logic into DateColumnDataSource
Improves separation of concerns across rendering components
Key changes:
- Introduces IColumnInfo interface for flexible column data
- Moves date calculation from multiple managers to dedicated datasource
- Removes duplicate date rendering logic
- Prepares architecture for future resource-based views
Introduces DateColumnDataSource to centralize date column generation logic
Simplifies GridManager by delegating date calculations to dedicated data source
Enhances flexibility for different calendar views and date rendering strategies
Improves separation of concerns and makes calendar view management more modular