UNPKG

react-range

Version:

Range input. Slides in all directions.

51 lines (50 loc) 2.89 kB
/// <reference types="react" /> import Range from './Range'; import { TThumbOffsets, ITrackBackground, Direction } from './types'; export declare const getStepDecimals: (step: number) => number; export declare function isTouchEvent(event: TouchEvent & MouseEvent): number; export declare function isStepDivisible(min: number, max: number, step: number): boolean; export declare function normalizeValue(value: number, index: number, min: number, max: number, step: number, allowOverlap: boolean, values: number[]): number; export declare function relativeValue(value: number, min: number, max: number): number; export declare function isVertical(direction: Direction): boolean; export declare function checkBoundaries(value: number, min: number, max: number): void; export declare function checkValuesAgainstBoundaries(value: number, min: number, max: number): number; export declare function checkInitialOverlap(values: number[]): void; export declare function getMargin(element: Element): { top: number; bottom: number; left: number; right: number; }; export declare function getPaddingAndBorder(element: Element): { top: number; bottom: number; left: number; right: number; }; export declare function translateThumbs(elements: Element[], offsets: TThumbOffsets, rtl: boolean): void; /** * Util function for calculating the index of the thumb that is closes to a given position * @param thumbs - array of Thumb element to calculate the distance from * @param clientX - target x position (mouse/touch) * @param clientY - target y position (mouse/touch) * @param direction - the direction of the track */ export declare function getClosestThumbIndex(thumbs: Element[], clientX: number, clientY: number, direction: Direction): number; export declare function translate(element: Element, x: number, y: number): void; export declare const schd: (fn: Function) => (...args: any[]) => void; export declare function replaceAt(values: number[], index: number, value: number): number[]; export declare function getTrackBackground({ values, colors, min, max, direction, rtl }: ITrackBackground): string; export declare function voidFn(): void; export declare function assertUnreachable(x: never): never; /** * A custom React Hook for calculating whether a thumb overlaps * another and whether labels could/should merge. * @param rangeRef - React ref value of Range component * @param values - current Range values Array * @param index - thumb index * @param step - step value, used to calculate the number of decimal places * @param separator - string to separate thumb values * @returns label value + styling for thumb label */ export declare const useThumbOverlap: (rangeRef: Range | null, values: number[], index: number, step?: number, separator?: string, valueToLabel?: (value: string) => string) => (string | import("react").CSSProperties)[];