UNPKG

monday-ui-react-core

Version:

Official monday.com UI resources for application development in React.js

73 lines (72 loc) 2.58 kB
import { Slider } from "../index"; import { IconType } from "../Icon/IconConstants"; import { ReactElement } from "react"; export declare const BEM_PREFIX = "monday"; export declare const COMPONENT_ID = "slider"; export declare const UPDATE_SLIDER_SIZE_DEBOUNCE = 200; export declare const TOOLTIP_SHOW_DELAY = 300; export declare enum InfixKind { PREFIX = "prefix", POSTFIX = "postfix" } export declare enum SliderColor { PRIMARY = "primary", NEGATIVE = "negative", POSITIVE = "positive" } export type SliderSize = (typeof Slider.sizes)[keyof typeof Slider.sizes]; export type SliderContextSelection = { max: number; min: number; ranged: boolean; step: number; value: number | number[]; valueText: string | string[]; }; export type SliderContextUI = { active: number; ariaLabel: string; ariaLabelledby: string; color: SliderColor; disabled: boolean; dragging: number; focused: number; size: SliderSize; shapeTestId: (subElement: string) => string; showValue: boolean; }; export type SliderContextActions = { setActive: (value: number) => void; setFocused: (value: number) => void; setDragging: (value: number) => void; changeThumbValue: (newValue: number | string, thumbIndex?: number, cancelFocus?: boolean) => void; drugThumb: (newValue: number | number[]) => void; decreaseValue: (consumerStep?: number) => void; increaseValue: (consumerStep?: number) => void; }; export type SliderContextInfix = { /** * Show selected from Slider range value */ indicateSelection?: boolean; /** * Options for initial/start/prefix element, it can be one of: * - Any Component (react component, node, text, number etc.) * - Or it can be an object of options for Icons component (see Icon components props) * - Or it can be an object for Label (Icon, Heading - and other components) * - Or it can be Render Props Function witch are getting value and valueText */ prefix?: { icon: IconType; } | string | ((value: number | number[], valueText: string | string[]) => ReactElement) | ReactElement; /** * Options for postfix/end/finishing element. Same as prefix element. */ postfix?: { icon: IconType; } | string | ((value: number | number[], valueText: string | string[]) => ReactElement) | ReactElement; /** * Width of SelectionIndicator (i.e. TextField) */ selectionIndicatorWidth?: string; };