@payfit/unity-components
Version:
16 lines (15 loc) • 850 B
TypeScript
export type ScrollAreaAxis = 'inline' | 'block' | 'both';
export type RtlScrollOffsetType = 'default' | 'negative' | 'reverse';
export interface ScrollEdges {
hasOverflowInline: boolean;
hasOverflowBlock: boolean;
canScrollInlineStart: boolean;
canScrollInlineEnd: boolean;
canScrollBlockStart: boolean;
canScrollBlockEnd: boolean;
}
export declare const SCROLL_EDGE_TOLERANCE = 1;
export declare const emptyScrollEdges: ScrollEdges;
export declare function getLogicalInlineScrollOffset(element: Pick<HTMLElement, 'clientWidth' | 'scrollLeft' | 'scrollWidth'>, direction: 'ltr' | 'rtl', rtlOffsetType?: RtlScrollOffsetType): number;
export declare function getScrollEdges(element: HTMLElement, axis?: ScrollAreaAxis): ScrollEdges;
export declare function areScrollEdgesEqual(current: ScrollEdges, next: ScrollEdges): boolean;