33 lines
1.2 KiB
TypeScript
33 lines
1.2 KiB
TypeScript
|
|
import { IEventBus } from '../types/CalendarTypes';
|
||
|
|
import { EventRenderingService } from '../renderers/EventRendererManager';
|
||
|
|
import { DateService } from '../utils/DateService';
|
||
|
|
import { WeekInfoRenderer } from '../renderers/WeekInfoRenderer';
|
||
|
|
import { GridRenderer } from '../renderers/GridRenderer';
|
||
|
|
export declare class NavigationManager {
|
||
|
|
private eventBus;
|
||
|
|
private weekInfoRenderer;
|
||
|
|
private gridRenderer;
|
||
|
|
private dateService;
|
||
|
|
private currentWeek;
|
||
|
|
private targetWeek;
|
||
|
|
private animationQueue;
|
||
|
|
constructor(eventBus: IEventBus, eventRenderer: EventRenderingService, gridRenderer: GridRenderer, dateService: DateService, weekInfoRenderer: WeekInfoRenderer);
|
||
|
|
private init;
|
||
|
|
/**
|
||
|
|
* Get the start of the ISO week (Monday) for a given date
|
||
|
|
* @param date - Any date in the week
|
||
|
|
* @returns The Monday of the ISO week
|
||
|
|
*/
|
||
|
|
private getISOWeekStart;
|
||
|
|
private setupEventListeners;
|
||
|
|
/**
|
||
|
|
* Navigate to specific event date and emit scroll event after navigation
|
||
|
|
*/
|
||
|
|
private navigateToEventDate;
|
||
|
|
private navigateToDate;
|
||
|
|
/**
|
||
|
|
* Animation transition using pre-rendered containers when available
|
||
|
|
*/
|
||
|
|
private animateTransition;
|
||
|
|
}
|