From 3c1ce60165da86723ea1c69fea4b79efb7ab223a Mon Sep 17 00:00:00 2001 From: Harman-singh-waraich Date: Wed, 25 Jun 2025 19:35:26 +0530 Subject: [PATCH] feat: allow-theme-override-for-slider --- src/lib/form/slider.tsx | 45 ++++++++++++++++++++++++++++++++++------- 1 file changed, 38 insertions(+), 7 deletions(-) diff --git a/src/lib/form/slider.tsx b/src/lib/form/slider.tsx index b425aff..2c6648d 100644 --- a/src/lib/form/slider.tsx +++ b/src/lib/form/slider.tsx @@ -1,5 +1,5 @@ import React from "react"; -import { cn } from "../../utils"; +import { cn, isUndefined } from "../../utils"; import { Slider as AriaSlider, Label, @@ -17,6 +17,13 @@ interface SliderProps formatter?: (value: number) => string; /** Callback function that provides the selected value as an argument. */ callback: (value: number) => void; + /** Override default theme of Slider */ + theme?: { + sliderColor: string; + trackColor: string; + thumbColor: string; + labelColor: string; + }; } /** Slider allows a user to select a value within a range. */ @@ -25,8 +32,10 @@ function Slider({ rightLabel, formatter, callback, + theme, ...props }: Readonly) { + const { sliderColor, thumbColor, labelColor, trackColor } = theme ?? {}; return ( {state.getThumbValue(0)} {/* track */}
{/* fill */}