UNPKG

@bimeister/pupakit.calendar

Version:
30 lines (29 loc) 1.17 kB
import { CdkVirtualScrollViewport, VirtualScrollStrategy } from '@angular/cdk/scrolling'; import { Observable } from 'rxjs'; import { CalendarVirtualScrollConfig } from '../interfaces/calendar-virtual-scroll-config.interface'; export declare class CalendarVirtualScrollStrategy implements VirtualScrollStrategy { private readonly config; private readonly index$; private cycleIndex; private viewport; private cycleHeight; readonly scrolledIndexChange: Observable<number>; private cycleMonthsHeights; constructor(config: CalendarVirtualScrollConfig); attach(viewport: CdkVirtualScrollViewport): void; detach(): void; onContentScrolled(): void; scrollToIndex(index: number, behavior: ScrollBehavior): void; onDataLengthChanged(): void; onContentRendered(): void; onRenderedOffsetChanged(): void; private getOffsetForIndex; private getIndexForOffset; private updateRenderedRange; private getRangeStartByOffset; private getRangeEndByOffset; private getDistanceToMonthInScroll; private updateViewportHeightByIndex; private getCycleMonthHeights; private getViewportHeight; }