45 lines
1.7 KiB
TypeScript
45 lines
1.7 KiB
TypeScript
/**
|
|
* AllDayCoordinator - Orchestrates all-day event functionality
|
|
*
|
|
* NO STATE - Only coordinates between services
|
|
* - Listens to EventBus events
|
|
* - Delegates to specialized services
|
|
* - Manages service lifecycle
|
|
*/
|
|
import { AllDayEventRenderer } from '../../renderers/AllDayEventRenderer';
|
|
import { EventManager } from '../../managers/EventManager';
|
|
import { DateService } from '../../utils/DateService';
|
|
import { AllDayHeightService } from './AllDayHeightService';
|
|
import { AllDayCollapseService } from './AllDayCollapseService';
|
|
import { AllDayDragService } from './AllDayDragService';
|
|
/**
|
|
* AllDayCoordinator - Orchestrates all-day event functionality
|
|
* Replaces the monolithic AllDayManager with a coordinated service architecture
|
|
*/
|
|
export declare class AllDayCoordinator {
|
|
private allDayEventRenderer;
|
|
private eventManager;
|
|
private dateService;
|
|
private heightService;
|
|
private collapseService;
|
|
private dragService;
|
|
constructor(eventManager: EventManager, allDayEventRenderer: AllDayEventRenderer, dateService: DateService, heightService: AllDayHeightService, collapseService: AllDayCollapseService, dragService: AllDayDragService);
|
|
/**
|
|
* Setup event listeners and delegate to services
|
|
*/
|
|
private setupEventListeners;
|
|
/**
|
|
* Calculate layout for ALL all-day events using AllDayLayoutEngine
|
|
*/
|
|
private calculateAllDayEventsLayout;
|
|
/**
|
|
* Recalculate layouts and update height
|
|
* Called after events are added/removed/moved in all-day area
|
|
* Uses AllDayLayoutEngine to optimally reorganize all events
|
|
*/
|
|
private recalculateLayoutsAndHeight;
|
|
/**
|
|
* Public API for collapsing all-day row
|
|
*/
|
|
collapseAllDayRow(): void;
|
|
}
|