UNPKG

retro-react

Version:

A React component library for building retro-style websites

84 lines (83 loc) 2.24 kB
/// <reference types="react" /> import { ThemeUICSSObject } from 'theme-ui'; export interface SliderProps extends Omit<React.HTMLAttributes<HTMLInputElement>, 'onChange'> { /** * The value of the Slider. * * @default undefined */ value?: number; /** * The minimum allowed value of the Slider. * * @default 0 */ min?: number; /** * The maximum allowed value of the Slider. * * @default 100 */ max?: number; /** * The granularity the Slider can step through values. * * @default 1 */ step?: number; /** * Callback fired when the value changes. * * @default undefined * * @param {number} value The new value of the Slider. */ onChange?: (value: number) => void; /** * If `true`, the Slider will be disabled. * * @default false */ disabled?: boolean; /** * If `true`, the Slider will show a tooltip with the current value when dragging. * * @default true */ showTooltip?: boolean; /** * If `true`, the Slider will show tick marks along the track. * * @default false */ showTicks?: boolean; /** * Custom labels for specific values. Object with value as key and label as value. * * @default undefined */ marks?: Record<number, string>; sx?: ThemeUICSSObject; } /** * Retro-styled slider for range value selection with authentic Windows 95/98 aesthetics. * * Features classic 3D beveled track and thumb with optional tooltip and tick marks. * Designed for fluid, responsive interaction while maintaining pixel-perfect retro styling. * * @example * // Basic volume slider * <Slider value={75} min={0} max={100} onChange={setVolume} /> * * // Slider with custom marks and tooltip * <Slider * value={50} * showTicks * marks={{ 0: 'Min', 50: 'Mid', 100: 'Max' }} * showTooltip * /> * * // Disabled slider * <Slider value={25} disabled /> */ export declare const Slider: import("react").ForwardRefExoticComponent<SliderProps & import("react").RefAttributes<HTMLInputElement>>;