UNPKG

@alifd/next

Version:

A configurable component library for web built on React.

99 lines (98 loc) 4.46 kB
import React from 'react'; import PropTypes from 'prop-types'; import { events, type ClassPropsWithDefault } from '../../util'; import type { RangeProps, RangeState, RangeValueType } from '../types'; type RangePropsWithDefault = ClassPropsWithDefault<RangeProps, typeof Range.defaultProps>; type EventOnReturnType = ReturnType<typeof events.on>; declare class Range extends React.Component<RangeProps, RangeState> { static displayName: string; static contextTypes: { prefix: PropTypes.Requireable<string>; }; static propTypes: { prefix: PropTypes.Requireable<string>; className: PropTypes.Requireable<string>; style: PropTypes.Requireable<object>; slider: PropTypes.Requireable<string>; min: PropTypes.Requireable<number>; max: PropTypes.Requireable<number>; step: PropTypes.Requireable<number>; value: PropTypes.Requireable<NonNullable<number | (number | null | undefined)[] | null | undefined>>; tempValue: PropTypes.Requireable<NonNullable<number | (number | null | undefined)[] | null | undefined>>; defaultValue: PropTypes.Requireable<NonNullable<number | (number | null | undefined)[] | null | undefined>>; marks: PropTypes.Requireable<NonNullable<number | boolean | object | null | undefined>>; marksPosition: PropTypes.Requireable<string>; disabled: PropTypes.Requireable<boolean>; onChange: PropTypes.Requireable<(...args: any[]) => any>; onProcess: PropTypes.Requireable<(...args: any[]) => any>; hasTip: PropTypes.Requireable<boolean>; tipRender: PropTypes.Requireable<(...args: any[]) => any>; id: PropTypes.Requireable<string>; reverse: PropTypes.Requireable<boolean>; pure: PropTypes.Requireable<boolean>; fixedWidth: PropTypes.Requireable<boolean>; tooltipVisible: PropTypes.Requireable<boolean>; rtl: PropTypes.Requireable<boolean>; isPreview: PropTypes.Requireable<boolean>; renderPreview: PropTypes.Requireable<(...args: any[]) => any>; }; static defaultProps: { prefix: string; slider: string; min: number; max: number; step: number; marks: boolean; disabled: boolean; fixedWidth: boolean; tooltipVisible: boolean; hasTip: boolean; onChange: () => void; onProcess: () => void; tipRender: (value: RangeValueType) => RangeValueType; reverse: boolean; pure: boolean; marksPosition: string; rtl: boolean; isPreview: boolean; }; _moving: { start: number; end: number; startValue: RangeState['tempValue']; dragging?: 'lower' | 'upper'; } | null; dom: HTMLDivElement; isFixedWidth: boolean; lastPosition: number; oldDragging?: 'lower' | 'upper'; _onMouseMoveListener: EventOnReturnType | null; _onMouseUpListener: EventOnReturnType | null; _onContextMenuListener: EventOnReturnType | null; _onTouchMoveListener: EventOnReturnType | null; _onTouchEndListener: EventOnReturnType | null; readonly props: RangePropsWithDefault; constructor(props: RangeProps); static getDerivedStateFromProps(props: RangePropsWithDefault, state: RangeState): Partial<RangeState> | null; _marksToScales(marks: RangePropsWithDefault['marks']): number | false | number[]; _calcScales(): number[]; _calcMarks(): Record<number, string>; _onMouseDown(e: React.MouseEvent<HTMLDivElement>): void; _onTouchStart(e: React.TouchEvent<HTMLDivElement>): void; onKeyDown(e: React.KeyboardEvent<HTMLDivElement>): void; _onContextMenu(e: React.MouseEvent<HTMLDivElement>): void; _start(position: number): void; _end(): void; _move(e: React.MouseEvent<Element> | React.TouchEvent<Element>): void; _onProcess(position: number, start?: boolean): void; _addDocumentMouseEvents(): void; _addDocumentTouchEvents(): void; _removeDocumentEvents(): void; _positionToCurrent(position: number): number; _currentToValue(current: number, preValue: number | [number, number], lastPosition: number, isFixedWidth: boolean): RangeValueType | undefined; handleLowerTooltipVisibleChange(visible: boolean): void; handleUpperTooltipVisibleChange(visible: boolean): void; render(): React.JSX.Element; } declare const _default: typeof Range; export default _default;