Lens Select
A fisheye/lens magnification select component for React built with Mantine. Displays items with a macOS Dock-like magnification effect on hover, supporting count mode, min/max/step range, and compound components.
Full documentation and API reference available at gfazioli.github.io/mantine-lens-selectΒ
Installation
yarn add @gfazioli/mantine-lens-selectOverview
LensSelect provides a fisheye/lens magnification selection interface:
- Count Mode β use
count={15}for instant pill generation, no data array needed - Range Support β combine
min,max,step,precisionfor numeric ranges (Slider-like API) - Custom Data β pass
datawith customviewfor icons, emojis, or any React node - Magnification Effect β configurable
magnification,lensRange, scale, opacity, and blur - Expand on Hover β macOS Dock-style push effect with
expandOnHover - Horizontal & Vertical β switch orientation with a single prop
- Selection Modes β
click,hover, orwithWheelfor mouse wheel navigation - Keyboard Navigation β Arrow keys, Home/End with optional
loop - Compound Components β
LensSelect.Indicatorfor selection indicator customization - Variants β
defaultandoutlinefor both pills and indicator - Pill Customization β
pillWidth,pillHeight,pillRadius,pillColor,hoverColor,activeColor - Custom Rendering β
renderItemcallback for complete item control - Responsive β CSS-native responsive via
StyleProponitemSize,gap,pillWidth,pillHeight - Accessibility β WAI-ARIA listbox pattern with proper roles and labels
- Styles API β 6 selectors, 13 CSS variables for full styling control
Last updated on