@snowball-tech/fractal
Version:
Fractal's (Snowball's design system) React component library based on RadixUI and PandaCSS
3 lines • 1.75 kB
JavaScript
'use client';
import{a as o}from"./chunk-T734KD6C.js";import{b as l}from"./chunk-CMFNILWJ.js";import{a,b as R}from"./chunk-XYM7TA65.js";import*as r from"@radix-ui/react-slider";import{useId as E}from"react";import S from"lodash/fp/isFunction";import n from"lodash/fp/isNumber";import F from"lodash/fp/omit";import O from"lodash/fp/range";import{jsx as d,jsxs as U}from"react/jsx-runtime";var $=({defaultValue:t,disabled:u=!1,id:_,inverted:y=!1,label:N,max:w=100,min:k=0,minStepsBetweenThumbs:T=0,name:I,onValueChange:f,onValueCommit:c,orientation:i="horizontal",step:P=1,value:m,...b})=>{let p=E(),h=(_??p)||p,g=m||t,s=n(g)?1:g?.length??1,z=O(0)(s),v=e=>{S(f)&&f(s===1?e[0]:e)},C=e=>{S(c)&&c(s===1?e[0]:e)};return U(r.Root,{id:h,className:R(`${l}-${o}`,"relative box-border flex rounded-full border-1 border-normal",i==="vertical"?"h-full max-h-full w-1 flex-col justify-center":"h-1 w-full max-w-full items-center",b.className),defaultValue:n(t)?[t]:t,disabled:u,inverted:y,max:w,min:k,minStepsBetweenThumbs:T,name:I||h,orientation:i,step:P,value:n(m)?[m]:m,onValueChange:v,onValueCommit:C,...F(["className","dir"],b),children:[d(r.Track,{className:a(`${l}-${o}__track`,"relative h-full w-full flex-1 rounded-full",u?"bg-disabled":"bg-highlight",i==="vertical"?"w-1":""),children:d(r.Range,{className:a(`${l}-${o}__range`,"absolute rounded-full bg-secondary transition-transform delay-100 duration-600 [transition-property:cubic-bezier(0.65,0,0.35,1)]",i==="vertical"?"w-full":"h-full")})}),z.map((e,x)=>d(r.Thumb,{"aria-label":N,className:a(`${l}-${o}__thumb`,`${l}-${o}__thumb--${x}`,"block size-2 rounded-full bg-secondary")},`thumbs-${x}`))]})};$.displayName="Slider";var D=$;export{$ as a,D as b};
//# sourceMappingURL=chunk-WYME5F2U.js.map