@purpurds/slider 6.3.0 → 6.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("react/jsx-runtime"),R=require("react");require("react-dom");function xe(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const a=xe(R);function Z(e,[t,n]){return Math.min(n,Math.max(t,e))}function A(e,t,{checkForDefaultPrevented:n=!0}={}){return function(s){if(e==null||e(s),n===!1||!s.defaultPrevented)return t==null?void 0:t(s)}}function G(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function J(...e){return t=>{let n=!1;const o=e.map(s=>{const r=G(s,t);return!n&&typeof r=="function"&&(n=!0),r});if(n)return()=>{for(let s=0;s<o.length;s++){const r=o[s];typeof r=="function"?r():G(e[s],null)}}}}function D(...e){return a.useCallback(J(...e),e)}function Q(e,t=[]){let n=[];function o(r,i){const c=a.createContext(i),u=n.length;n=[...n,i];const d=l=>{var p;const{scope:f,children:x,...h}=l,S=((p=f==null?void 0:f[e])==null?void 0:p[u])||c,g=a.useMemo(()=>h,Object.values(h));return m.jsx(S.Provider,{value:g,children:x})};d.displayName=r+"Provider";function y(l,f){var S;const x=((S=f==null?void 0:f[e])==null?void 0:S[u])||c,h=a.useContext(x);if(h)return h;if(i!==void 0)return i;throw new Error(`\`${l}\` must be used within \`${r}\``)}return[d,y]}const s=()=>{const r=n.map(i=>a.createContext(i));return function(c){const u=(c==null?void 0:c[e])||r;return a.useMemo(()=>({[`__scope${e}`]:{...c,[e]:u}}),[c,u])}};return s.scopeName=e,[o,be(s,...t)]}function be(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const o=e.map(s=>({useScope:s(),scopeName:s.scopeName}));return function(r){const i=o.reduce((c,{useScope:u,scopeName:d})=>{const l=u(r)[`__scope${d}`];return{...c,...l}},{});return a.useMemo(()=>({[`__scope${t.scopeName}`]:i}),[i])}};return n.scopeName=t.scopeName,n}function ee(e){const t=a.useRef(e);return a.useEffect(()=>{t.current=e}),a.useMemo(()=>(...n)=>{var o;return(o=t.current)==null?void 0:o.call(t,...n)},[])}function ye({prop:e,defaultProp:t,onChange:n=()=>{}}){const[o,s]=ve({defaultProp:t,onChange:n}),r=e!==void 0,i=r?e:o,c=ee(n),u=a.useCallback(d=>{if(r){const l=typeof d=="function"?d(e):d;l!==e&&c(l)}else s(d)},[r,e,s,c]);return[i,u]}function ve({defaultProp:e,onChange:t}){const n=a.useState(e),[o]=n,s=a.useRef(o),r=ee(t);return a.useEffect(()=>{s.current!==o&&(r(o),s.current=o)},[o,s,r]),n}var we=a.createContext(void 0);function _e(e){const t=a.useContext(we);return e||t||"ltr"}function Re(e){const t=a.useRef({value:e,previous:e});return a.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var Ce=globalThis!=null&&globalThis.document?a.useLayoutEffect:()=>{};function Pe(e){const[t,n]=a.useState(void 0);return Ce(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const o=new ResizeObserver(s=>{if(!Array.isArray(s)||!s.length)return;const r=s[0];let i,c;if("borderBoxSize"in r){const u=r.borderBoxSize,d=Array.isArray(u)?u[0]:u;i=d.inlineSize,c=d.blockSize}else i=e.offsetWidth,c=e.offsetHeight;n({width:i,height:c})});return o.observe(e,{box:"border-box"}),()=>o.unobserve(e)}else n(void 0)},[e]),t}var k=a.forwardRef((e,t)=>{const{children:n,...o}=e,s=a.Children.toArray(n),r=s.find(De);if(r){const i=r.props.children,c=s.map(u=>u===r?a.Children.count(i)>1?a.Children.only(null):a.isValidElement(i)?i.props.children:null:u);return m.jsx(F,{...o,ref:t,children:a.isValidElement(i)?a.cloneElement(i,void 0,c):null})}return m.jsx(F,{...o,ref:t,children:n})});k.displayName="Slot";var F=a.forwardRef((e,t)=>{const{children:n,...o}=e;if(a.isValidElement(n)){const s=je(n),r=Me(o,n.props);return n.type!==a.Fragment&&(r.ref=t?J(t,s):s),a.cloneElement(n,r)}return a.Children.count(n)>1?a.Children.only(null):null});F.displayName="SlotClone";var Ee=({children:e})=>m.jsx(m.Fragment,{children:e});function De(e){return a.isValidElement(e)&&e.type===Ee}function Me(e,t){const n={...t};for(const o in t){const s=e[o],r=t[o];/^on[A-Z]/.test(o)?s&&r?n[o]=(...c)=>{r(...c),s(...c)}:s&&(n[o]=s):o==="style"?n[o]={...s,...r}:o==="className"&&(n[o]=[s,r].filter(Boolean).join(" "))}return{...e,...n}}function je(e){var o,s;let t=(o=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:o.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(s=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:s.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Ae=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],z=Ae.reduce((e,t)=>{const n=a.forwardRef((o,s)=>{const{asChild:r,...i}=o,c=r?k:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),m.jsx(c,{...i,ref:s})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function Ie(e){const t=e+"CollectionProvider",[n,o]=Q(t),[s,r]=n(t,{collectionRef:{current:null},itemMap:new Map}),i=x=>{const{scope:h,children:S}=x,g=R.useRef(null),p=R.useRef(new Map).current;return m.jsx(s,{scope:h,itemMap:p,collectionRef:g,children:S})};i.displayName=t;const c=e+"CollectionSlot",u=R.forwardRef((x,h)=>{const{scope:S,children:g}=x,p=r(c,S),w=D(h,p.collectionRef);return m.jsx(k,{ref:w,children:g})});u.displayName=c;const d=e+"CollectionItemSlot",y="data-radix-collection-item",l=R.forwardRef((x,h)=>{const{scope:S,children:g,...p}=x,w=R.useRef(null),v=D(h,w),b=r(d,S);return R.useEffect(()=>(b.itemMap.set(w,{ref:w,...p}),()=>void b.itemMap.delete(w))),m.jsx(k,{[y]:"",ref:v,children:g})});l.displayName=d;function f(x){const h=r(e+"CollectionConsumer",x);return R.useCallback(()=>{const g=h.collectionRef.current;if(!g)return[];const p=Array.from(g.querySelectorAll(`[${y}]`));return Array.from(h.itemMap.values()).sort((b,C)=>p.indexOf(b.ref.current)-p.indexOf(C.ref.current))},[h.collectionRef,h.itemMap])}return[{Provider:i,Slot:u,ItemSlot:l},f,o]}var te=["PageUp","PageDown"],ne=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],re={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},I="Slider",[H,Ne,Oe]=Ie(I),[oe,st]=Q(I,[Oe]),[Te,B]=oe(I),se=a.forwardRef((e,t)=>{const{name:n,min:o=0,max:s=100,step:r=1,orientation:i="horizontal",disabled:c=!1,minStepsBetweenThumbs:u=0,defaultValue:d=[o],value:y,onValueChange:l=()=>{},onValueCommit:f=()=>{},inverted:x=!1,form:h,...S}=e,g=a.useRef(new Set),p=a.useRef(0),v=i==="horizontal"?Ve:ke,[b=[],C]=ye({prop:y,defaultProp:d,onChange:_=>{var M;(M=[...g.current][p.current])==null||M.focus(),l(_)}}),K=a.useRef(b);function L(_){const P=$e(b,_);N(_,P)}function Se(_){N(_,p.current)}function ge(){const _=K.current[p.current];b[p.current]!==_&&f(b)}function N(_,P,{commit:M}={commit:!1}){const q=Ue(r),$=Ye(Math.round((_-o)/r)*r+o,q),O=Z($,[o,s]);C((j=[])=>{const E=Ke(j,O,P);if(We(E,u*r)){p.current=E.indexOf(O);const X=String(E)!==String(j);return X&&M&&f(E),X?E:j}else return j})}return m.jsx(Te,{scope:e.__scopeSlider,name:n,disabled:c,min:o,max:s,valueIndexToChangeRef:p,thumbs:g.current,values:b,orientation:i,form:h,children:m.jsx(H.Provider,{scope:e.__scopeSlider,children:m.jsx(H.Slot,{scope:e.__scopeSlider,children:m.jsx(v,{"aria-disabled":c,"data-disabled":c?"":void 0,...S,ref:t,onPointerDown:A(S.onPointerDown,()=>{c||(K.current=b)}),min:o,max:s,inverted:x,onSlideStart:c?void 0:L,onSlideMove:c?void 0:Se,onSlideEnd:c?void 0:ge,onHomeKeyDown:()=>!c&&N(o,0,{commit:!0}),onEndKeyDown:()=>!c&&N(s,b.length-1,{commit:!0}),onStepKeyDown:({event:_,direction:P})=>{if(!c){const $=te.includes(_.key)||_.shiftKey&&ne.includes(_.key)?10:1,O=p.current,j=b[O],E=r*$*P;N(j+E,O,{commit:!0})}}})})})})});se.displayName=I;var[ie,ce]=oe(I,{startEdge:"left",endEdge:"right",size:"width",direction:1}),Ve=a.forwardRef((e,t)=>{const{min:n,max:o,dir:s,inverted:r,onSlideStart:i,onSlideMove:c,onSlideEnd:u,onStepKeyDown:d,...y}=e,[l,f]=a.useState(null),x=D(t,v=>f(v)),h=a.useRef(void 0),S=_e(s),g=S==="ltr",p=g&&!r||!g&&r;function w(v){const b=h.current||l.getBoundingClientRect(),C=[0,b.width],L=Y(C,p?[n,o]:[o,n]);return h.current=b,L(v-b.left)}return m.jsx(ie,{scope:e.__scopeSlider,startEdge:p?"left":"right",endEdge:p?"right":"left",direction:p?1:-1,size:"width",children:m.jsx(ae,{dir:S,"data-orientation":"horizontal",...y,ref:x,style:{...y.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:v=>{const b=w(v.clientX);i==null||i(b)},onSlideMove:v=>{const b=w(v.clientX);c==null||c(b)},onSlideEnd:()=>{h.current=void 0,u==null||u()},onStepKeyDown:v=>{const C=re[p?"from-left":"from-right"].includes(v.key);d==null||d({event:v,direction:C?-1:1})}})})}),ke=a.forwardRef((e,t)=>{const{min:n,max:o,inverted:s,onSlideStart:r,onSlideMove:i,onSlideEnd:c,onStepKeyDown:u,...d}=e,y=a.useRef(null),l=D(t,y),f=a.useRef(void 0),x=!s;function h(S){const g=f.current||y.current.getBoundingClientRect(),p=[0,g.height],v=Y(p,x?[o,n]:[n,o]);return f.current=g,v(S-g.top)}return m.jsx(ie,{scope:e.__scopeSlider,startEdge:x?"bottom":"top",endEdge:x?"top":"bottom",size:"height",direction:x?1:-1,children:m.jsx(ae,{"data-orientation":"vertical",...d,ref:l,style:{...d.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:S=>{const g=h(S.clientY);r==null||r(g)},onSlideMove:S=>{const g=h(S.clientY);i==null||i(g)},onSlideEnd:()=>{f.current=void 0,c==null||c()},onStepKeyDown:S=>{const p=re[x?"from-bottom":"from-top"].includes(S.key);u==null||u({event:S,direction:p?-1:1})}})})}),ae=a.forwardRef((e,t)=>{const{__scopeSlider:n,onSlideStart:o,onSlideMove:s,onSlideEnd:r,onHomeKeyDown:i,onEndKeyDown:c,onStepKeyDown:u,...d}=e,y=B(I,n);return m.jsx(z.span,{...d,ref:t,onKeyDown:A(e.onKeyDown,l=>{l.key==="Home"?(i(l),l.preventDefault()):l.key==="End"?(c(l),l.preventDefault()):te.concat(ne).includes(l.key)&&(u(l),l.preventDefault())}),onPointerDown:A(e.onPointerDown,l=>{const f=l.target;f.setPointerCapture(l.pointerId),l.preventDefault(),y.thumbs.has(f)?f.focus():o(l)}),onPointerMove:A(e.onPointerMove,l=>{l.target.hasPointerCapture(l.pointerId)&&s(l)}),onPointerUp:A(e.onPointerUp,l=>{const f=l.target;f.hasPointerCapture(l.pointerId)&&(f.releasePointerCapture(l.pointerId),r(l))})})}),le="SliderTrack",ue=a.forwardRef((e,t)=>{const{__scopeSlider:n,...o}=e,s=B(le,n);return m.jsx(z.span,{"data-disabled":s.disabled?"":void 0,"data-orientation":s.orientation,...o,ref:t})});ue.displayName=le;var W="SliderRange",de=a.forwardRef((e,t)=>{const{__scopeSlider:n,...o}=e,s=B(W,n),r=ce(W,n),i=a.useRef(null),c=D(t,i),u=s.values.length,d=s.values.map(f=>pe(f,s.min,s.max)),y=u>1?Math.min(...d):0,l=100-Math.max(...d);return m.jsx(z.span,{"data-orientation":s.orientation,"data-disabled":s.disabled?"":void 0,...o,ref:c,style:{...e.style,[r.startEdge]:y+"%",[r.endEdge]:l+"%"}})});de.displayName=W;var U="SliderThumb",fe=a.forwardRef((e,t)=>{const n=Ne(e.__scopeSlider),[o,s]=a.useState(null),r=D(t,c=>s(c)),i=a.useMemo(()=>o?n().findIndex(c=>c.ref.current===o):-1,[n,o]);return m.jsx(ze,{...e,ref:r,index:i})}),ze=a.forwardRef((e,t)=>{const{__scopeSlider:n,index:o,name:s,...r}=e,i=B(U,n),c=ce(U,n),[u,d]=a.useState(null),y=D(t,w=>d(w)),l=u?i.form||!!u.closest("form"):!0,f=Pe(u),x=i.values[o],h=x===void 0?0:pe(x,i.min,i.max),S=Le(o,i.values.length),g=f==null?void 0:f[c.size],p=g?Fe(g,h,c.direction):0;return a.useEffect(()=>{if(u)return i.thumbs.add(u),()=>{i.thumbs.delete(u)}},[u,i.thumbs]),m.jsxs("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[c.startEdge]:`calc(${h}% + ${p}px)`},children:[m.jsx(H.ItemSlot,{scope:e.__scopeSlider,children:m.jsx(z.span,{role:"slider","aria-label":e["aria-label"]||S,"aria-valuemin":i.min,"aria-valuenow":x,"aria-valuemax":i.max,"aria-orientation":i.orientation,"data-orientation":i.orientation,"data-disabled":i.disabled?"":void 0,tabIndex:i.disabled?void 0:0,...r,ref:y,style:x===void 0?{display:"none"}:e.style,onFocus:A(e.onFocus,()=>{i.valueIndexToChangeRef.current=o})})}),l&&m.jsx(Be,{name:s??(i.name?i.name+(i.values.length>1?"[]":""):void 0),form:i.form,value:x},o)]})});fe.displayName=U;var Be=e=>{const{value:t,...n}=e,o=a.useRef(null),s=Re(t);return a.useEffect(()=>{const r=o.current,i=window.HTMLInputElement.prototype,u=Object.getOwnPropertyDescriptor(i,"value").set;if(s!==t&&u){const d=new Event("input",{bubbles:!0});u.call(r,t),r.dispatchEvent(d)}},[s,t]),m.jsx("input",{style:{display:"none"},...n,ref:o,defaultValue:t})};function Ke(e=[],t,n){const o=[...e];return o[n]=t,o.sort((s,r)=>s-r)}function pe(e,t,n){const r=100/(n-t)*(e-t);return Z(r,[0,100])}function Le(e,t){return t>2?`Value ${e+1} of ${t}`:t===2?["Minimum","Maximum"][e]:void 0}function $e(e,t){if(e.length===1)return 0;const n=e.map(s=>Math.abs(s-t)),o=Math.min(...n);return n.indexOf(o)}function Fe(e,t,n){const o=e/2,r=Y([0,50],[0,o]);return(o-r(t)*n)*n}function He(e){return e.slice(0,-1).map((t,n)=>e[n+1]-t)}function We(e,t){if(t>0){const n=He(e);return Math.min(...n)>=t}return!0}function Y(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const o=(t[1]-t[0])/(e[1]-e[0]);return t[0]+o*(n-e[0])}}function Ue(e){return(String(e).split(".")[1]||"").length}function Ye(e,t){const n=Math.pow(10,t);return Math.round(e*n)/n}var qe=se,Xe=ue,Ge=de,Ze=fe;function Je(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var me={exports:{}};/*!
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("react/jsx-runtime"),_=require("react");require("react-dom");function xe(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const a=xe(_);function Q(e,[t,n]){return Math.min(n,Math.max(t,e))}function A(e,t,{checkForDefaultPrevented:n=!0}={}){return function(s){if(e==null||e(s),n===!1||!s.defaultPrevented)return t==null?void 0:t(s)}}function Z(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function ee(...e){return t=>{let n=!1;const o=e.map(s=>{const r=Z(s,t);return!n&&typeof r=="function"&&(n=!0),r});if(n)return()=>{for(let s=0;s<o.length;s++){const r=o[s];typeof r=="function"?r():Z(e[s],null)}}}}function D(...e){return a.useCallback(ee(...e),e)}function te(e,t=[]){let n=[];function o(r,i){const c=a.createContext(i),u=n.length;n=[...n,i];const d=l=>{var p;const{scope:f,children:g,...h}=l,S=((p=f==null?void 0:f[e])==null?void 0:p[u])||c,v=a.useMemo(()=>h,Object.values(h));return m.jsx(S.Provider,{value:v,children:g})};d.displayName=r+"Provider";function b(l,f){var S;const g=((S=f==null?void 0:f[e])==null?void 0:S[u])||c,h=a.useContext(g);if(h)return h;if(i!==void 0)return i;throw new Error(`\`${l}\` must be used within \`${r}\``)}return[d,b]}const s=()=>{const r=n.map(i=>a.createContext(i));return function(c){const u=(c==null?void 0:c[e])||r;return a.useMemo(()=>({[`__scope${e}`]:{...c,[e]:u}}),[c,u])}};return s.scopeName=e,[o,be(s,...t)]}function be(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const o=e.map(s=>({useScope:s(),scopeName:s.scopeName}));return function(r){const i=o.reduce((c,{useScope:u,scopeName:d})=>{const l=u(r)[`__scope${d}`];return{...c,...l}},{});return a.useMemo(()=>({[`__scope${t.scopeName}`]:i}),[i])}};return n.scopeName=t.scopeName,n}function ne(e){const t=a.useRef(e);return a.useEffect(()=>{t.current=e}),a.useMemo(()=>(...n)=>{var o;return(o=t.current)==null?void 0:o.call(t,...n)},[])}function ye({prop:e,defaultProp:t,onChange:n=()=>{}}){const[o,s]=we({defaultProp:t,onChange:n}),r=e!==void 0,i=r?e:o,c=ne(n),u=a.useCallback(d=>{if(r){const l=typeof d=="function"?d(e):d;l!==e&&c(l)}else s(d)},[r,e,s,c]);return[i,u]}function we({defaultProp:e,onChange:t}){const n=a.useState(e),[o]=n,s=a.useRef(o),r=ne(t);return a.useEffect(()=>{s.current!==o&&(r(o),s.current=o)},[o,s,r]),n}var Re=a.createContext(void 0);function _e(e){const t=a.useContext(Re);return e||t||"ltr"}function Ce(e){const t=a.useRef({value:e,previous:e});return a.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var Pe=globalThis!=null&&globalThis.document?a.useLayoutEffect:()=>{};function Ee(e){const[t,n]=a.useState(void 0);return Pe(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const o=new ResizeObserver(s=>{if(!Array.isArray(s)||!s.length)return;const r=s[0];let i,c;if("borderBoxSize"in r){const u=r.borderBoxSize,d=Array.isArray(u)?u[0]:u;i=d.inlineSize,c=d.blockSize}else i=e.offsetWidth,c=e.offsetHeight;n({width:i,height:c})});return o.observe(e,{box:"border-box"}),()=>o.unobserve(e)}else n(void 0)},[e]),t}var k=a.forwardRef((e,t)=>{const{children:n,...o}=e,s=a.Children.toArray(n),r=s.find(Me);if(r){const i=r.props.children,c=s.map(u=>u===r?a.Children.count(i)>1?a.Children.only(null):a.isValidElement(i)?i.props.children:null:u);return m.jsx(H,{...o,ref:t,children:a.isValidElement(i)?a.cloneElement(i,void 0,c):null})}return m.jsx(H,{...o,ref:t,children:n})});k.displayName="Slot";var H=a.forwardRef((e,t)=>{const{children:n,...o}=e;if(a.isValidElement(n)){const s=Ae(n),r=je(o,n.props);return n.type!==a.Fragment&&(r.ref=t?ee(t,s):s),a.cloneElement(n,r)}return a.Children.count(n)>1?a.Children.only(null):null});H.displayName="SlotClone";var De=({children:e})=>m.jsx(m.Fragment,{children:e});function Me(e){return a.isValidElement(e)&&e.type===De}function je(e,t){const n={...t};for(const o in t){const s=e[o],r=t[o];/^on[A-Z]/.test(o)?s&&r?n[o]=(...c)=>{r(...c),s(...c)}:s&&(n[o]=s):o==="style"?n[o]={...s,...r}:o==="className"&&(n[o]=[s,r].filter(Boolean).join(" "))}return{...e,...n}}function Ae(e){var o,s;let t=(o=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:o.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(s=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:s.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Ie=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],z=Ie.reduce((e,t)=>{const n=a.forwardRef((o,s)=>{const{asChild:r,...i}=o,c=r?k:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),m.jsx(c,{...i,ref:s})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function Ne(e){const t=e+"CollectionProvider",[n,o]=te(t),[s,r]=n(t,{collectionRef:{current:null},itemMap:new Map}),i=g=>{const{scope:h,children:S}=g,v=_.useRef(null),p=_.useRef(new Map).current;return m.jsx(s,{scope:h,itemMap:p,collectionRef:v,children:S})};i.displayName=t;const c=e+"CollectionSlot",u=_.forwardRef((g,h)=>{const{scope:S,children:v}=g,p=r(c,S),w=D(h,p.collectionRef);return m.jsx(k,{ref:w,children:v})});u.displayName=c;const d=e+"CollectionItemSlot",b="data-radix-collection-item",l=_.forwardRef((g,h)=>{const{scope:S,children:v,...p}=g,w=_.useRef(null),y=D(h,w),x=r(d,S);return _.useEffect(()=>(x.itemMap.set(w,{ref:w,...p}),()=>void x.itemMap.delete(w))),m.jsx(k,{[b]:"",ref:y,children:v})});l.displayName=d;function f(g){const h=r(e+"CollectionConsumer",g);return _.useCallback(()=>{const v=h.collectionRef.current;if(!v)return[];const p=Array.from(v.querySelectorAll(`[${b}]`));return Array.from(h.itemMap.values()).sort((x,C)=>p.indexOf(x.ref.current)-p.indexOf(C.ref.current))},[h.collectionRef,h.itemMap])}return[{Provider:i,Slot:u,ItemSlot:l},f,o]}var re=["PageUp","PageDown"],oe=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],se={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},I="Slider",[W,Oe,Te]=Ne(I),[ie,ct]=te(I,[Te]),[Ve,B]=ie(I),ce=a.forwardRef((e,t)=>{const{name:n,min:o=0,max:s=100,step:r=1,orientation:i="horizontal",disabled:c=!1,minStepsBetweenThumbs:u=0,defaultValue:d=[o],value:b,onValueChange:l=()=>{},onValueCommit:f=()=>{},inverted:g=!1,form:h,...S}=e,v=a.useRef(new Set),p=a.useRef(0),y=i==="horizontal"?ke:ze,[x=[],C]=ye({prop:b,defaultProp:d,onChange:R=>{var M;(M=[...v.current][p.current])==null||M.focus(),l(R)}}),K=a.useRef(x);function L(R){const P=Fe(x,R);N(R,P)}function ve(R){N(R,p.current)}function ge(){const R=K.current[p.current];x[p.current]!==R&&f(x)}function N(R,P,{commit:M}={commit:!1}){const X=qe(r),$=Ye(Math.round((R-o)/r)*r+o,X),O=Q($,[o,s]);C((j=[])=>{const E=Le(j,O,P);if(Ue(E,u*r)){p.current=E.indexOf(O);const G=String(E)!==String(j);return G&&M&&f(E),G?E:j}else return j})}return m.jsx(Ve,{scope:e.__scopeSlider,name:n,disabled:c,min:o,max:s,valueIndexToChangeRef:p,thumbs:v.current,values:x,orientation:i,form:h,children:m.jsx(W.Provider,{scope:e.__scopeSlider,children:m.jsx(W.Slot,{scope:e.__scopeSlider,children:m.jsx(y,{"aria-disabled":c,"data-disabled":c?"":void 0,...S,ref:t,onPointerDown:A(S.onPointerDown,()=>{c||(K.current=x)}),min:o,max:s,inverted:g,onSlideStart:c?void 0:L,onSlideMove:c?void 0:ve,onSlideEnd:c?void 0:ge,onHomeKeyDown:()=>!c&&N(o,0,{commit:!0}),onEndKeyDown:()=>!c&&N(s,x.length-1,{commit:!0}),onStepKeyDown:({event:R,direction:P})=>{if(!c){const $=re.includes(R.key)||R.shiftKey&&oe.includes(R.key)?10:1,O=p.current,j=x[O],E=r*$*P;N(j+E,O,{commit:!0})}}})})})})});ce.displayName=I;var[ae,le]=ie(I,{startEdge:"left",endEdge:"right",size:"width",direction:1}),ke=a.forwardRef((e,t)=>{const{min:n,max:o,dir:s,inverted:r,onSlideStart:i,onSlideMove:c,onSlideEnd:u,onStepKeyDown:d,...b}=e,[l,f]=a.useState(null),g=D(t,y=>f(y)),h=a.useRef(void 0),S=_e(s),v=S==="ltr",p=v&&!r||!v&&r;function w(y){const x=h.current||l.getBoundingClientRect(),C=[0,x.width],L=Y(C,p?[n,o]:[o,n]);return h.current=x,L(y-x.left)}return m.jsx(ae,{scope:e.__scopeSlider,startEdge:p?"left":"right",endEdge:p?"right":"left",direction:p?1:-1,size:"width",children:m.jsx(ue,{dir:S,"data-orientation":"horizontal",...b,ref:g,style:{...b.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:y=>{const x=w(y.clientX);i==null||i(x)},onSlideMove:y=>{const x=w(y.clientX);c==null||c(x)},onSlideEnd:()=>{h.current=void 0,u==null||u()},onStepKeyDown:y=>{const C=se[p?"from-left":"from-right"].includes(y.key);d==null||d({event:y,direction:C?-1:1})}})})}),ze=a.forwardRef((e,t)=>{const{min:n,max:o,inverted:s,onSlideStart:r,onSlideMove:i,onSlideEnd:c,onStepKeyDown:u,...d}=e,b=a.useRef(null),l=D(t,b),f=a.useRef(void 0),g=!s;function h(S){const v=f.current||b.current.getBoundingClientRect(),p=[0,v.height],y=Y(p,g?[o,n]:[n,o]);return f.current=v,y(S-v.top)}return m.jsx(ae,{scope:e.__scopeSlider,startEdge:g?"bottom":"top",endEdge:g?"top":"bottom",size:"height",direction:g?1:-1,children:m.jsx(ue,{"data-orientation":"vertical",...d,ref:l,style:{...d.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:S=>{const v=h(S.clientY);r==null||r(v)},onSlideMove:S=>{const v=h(S.clientY);i==null||i(v)},onSlideEnd:()=>{f.current=void 0,c==null||c()},onStepKeyDown:S=>{const p=se[g?"from-bottom":"from-top"].includes(S.key);u==null||u({event:S,direction:p?-1:1})}})})}),ue=a.forwardRef((e,t)=>{const{__scopeSlider:n,onSlideStart:o,onSlideMove:s,onSlideEnd:r,onHomeKeyDown:i,onEndKeyDown:c,onStepKeyDown:u,...d}=e,b=B(I,n);return m.jsx(z.span,{...d,ref:t,onKeyDown:A(e.onKeyDown,l=>{l.key==="Home"?(i(l),l.preventDefault()):l.key==="End"?(c(l),l.preventDefault()):re.concat(oe).includes(l.key)&&(u(l),l.preventDefault())}),onPointerDown:A(e.onPointerDown,l=>{const f=l.target;f.setPointerCapture(l.pointerId),l.preventDefault(),b.thumbs.has(f)?f.focus():o(l)}),onPointerMove:A(e.onPointerMove,l=>{l.target.hasPointerCapture(l.pointerId)&&s(l)}),onPointerUp:A(e.onPointerUp,l=>{const f=l.target;f.hasPointerCapture(l.pointerId)&&(f.releasePointerCapture(l.pointerId),r(l))})})}),de="SliderTrack",fe=a.forwardRef((e,t)=>{const{__scopeSlider:n,...o}=e,s=B(de,n);return m.jsx(z.span,{"data-disabled":s.disabled?"":void 0,"data-orientation":s.orientation,...o,ref:t})});fe.displayName=de;var U="SliderRange",pe=a.forwardRef((e,t)=>{const{__scopeSlider:n,...o}=e,s=B(U,n),r=le(U,n),i=a.useRef(null),c=D(t,i),u=s.values.length,d=s.values.map(f=>he(f,s.min,s.max)),b=u>1?Math.min(...d):0,l=100-Math.max(...d);return m.jsx(z.span,{"data-orientation":s.orientation,"data-disabled":s.disabled?"":void 0,...o,ref:c,style:{...e.style,[r.startEdge]:b+"%",[r.endEdge]:l+"%"}})});pe.displayName=U;var q="SliderThumb",me=a.forwardRef((e,t)=>{const n=Oe(e.__scopeSlider),[o,s]=a.useState(null),r=D(t,c=>s(c)),i=a.useMemo(()=>o?n().findIndex(c=>c.ref.current===o):-1,[n,o]);return m.jsx(Be,{...e,ref:r,index:i})}),Be=a.forwardRef((e,t)=>{const{__scopeSlider:n,index:o,name:s,...r}=e,i=B(q,n),c=le(q,n),[u,d]=a.useState(null),b=D(t,w=>d(w)),l=u?i.form||!!u.closest("form"):!0,f=Ee(u),g=i.values[o],h=g===void 0?0:he(g,i.min,i.max),S=$e(o,i.values.length),v=f==null?void 0:f[c.size],p=v?He(v,h,c.direction):0;return a.useEffect(()=>{if(u)return i.thumbs.add(u),()=>{i.thumbs.delete(u)}},[u,i.thumbs]),m.jsxs("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[c.startEdge]:`calc(${h}% + ${p}px)`},children:[m.jsx(W.ItemSlot,{scope:e.__scopeSlider,children:m.jsx(z.span,{role:"slider","aria-label":e["aria-label"]||S,"aria-valuemin":i.min,"aria-valuenow":g,"aria-valuemax":i.max,"aria-orientation":i.orientation,"data-orientation":i.orientation,"data-disabled":i.disabled?"":void 0,tabIndex:i.disabled?void 0:0,...r,ref:b,style:g===void 0?{display:"none"}:e.style,onFocus:A(e.onFocus,()=>{i.valueIndexToChangeRef.current=o})})}),l&&m.jsx(Ke,{name:s??(i.name?i.name+(i.values.length>1?"[]":""):void 0),form:i.form,value:g},o)]})});me.displayName=q;var Ke=e=>{const{value:t,...n}=e,o=a.useRef(null),s=Ce(t);return a.useEffect(()=>{const r=o.current,i=window.HTMLInputElement.prototype,u=Object.getOwnPropertyDescriptor(i,"value").set;if(s!==t&&u){const d=new Event("input",{bubbles:!0});u.call(r,t),r.dispatchEvent(d)}},[s,t]),m.jsx("input",{style:{display:"none"},...n,ref:o,defaultValue:t})};function Le(e=[],t,n){const o=[...e];return o[n]=t,o.sort((s,r)=>s-r)}function he(e,t,n){const r=100/(n-t)*(e-t);return Q(r,[0,100])}function $e(e,t){return t>2?`Value ${e+1} of ${t}`:t===2?["Minimum","Maximum"][e]:void 0}function Fe(e,t){if(e.length===1)return 0;const n=e.map(s=>Math.abs(s-t)),o=Math.min(...n);return n.indexOf(o)}function He(e,t,n){const o=e/2,r=Y([0,50],[0,o]);return(o-r(t)*n)*n}function We(e){return e.slice(0,-1).map((t,n)=>e[n+1]-t)}function Ue(e,t){if(t>0){const n=We(e);return Math.min(...n)>=t}return!0}function Y(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const o=(t[1]-t[0])/(e[1]-e[0]);return t[0]+o*(n-e[0])}}function qe(e){return(String(e).split(".")[1]||"").length}function Ye(e,t){const n=Math.pow(10,t);return Math.round(e*n)/n}var Xe=ce,Ge=fe,Ze=pe,Je=me;function Qe(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var F={exports:{}};/*!
2
2
  Copyright (c) 2018 Jed Watson.
3
3
  Licensed under the MIT License (MIT), see
4
4
  http://jedwatson.github.io/classnames
5
- */(function(e){(function(){var t={}.hasOwnProperty;function n(){for(var r="",i=0;i<arguments.length;i++){var c=arguments[i];c&&(r=s(r,o.call(this,c)))}return r}function o(r){if(typeof r=="string"||typeof r=="number")return this&&this[r]||r;if(typeof r!="object")return"";if(Array.isArray(r))return n.apply(this,r);if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]"))return r.toString();var i="";for(var c in r)t.call(r,c)&&r[c]&&(i=s(i,this&&this[c]||c));return i}function s(r,i){return i?r?r+" "+i:r+i:r}e.exports?(n.default=n,e.exports=n):window.classNames=n})()})(me);var Qe=me.exports;const et=Je(Qe),tt={"purpur-slider":"_purpur-slider_14tuk_1","purpur-slider__track":"_purpur-slider__track_14tuk_17","purpur-slider__range":"_purpur-slider__range_14tuk_17","purpur-slider__thumb":"_purpur-slider__thumb_14tuk_43"},T=et.bind(tt),nt=["horizontal","vertical"],V="purpur-slider",rt=e=>String(e),ot=({"aria-label":e,"aria-valuetext":t,className:n,defaultValue:o,id:s,value:r,...i},c)=>{const u=R.useId(),d=r||o;return m.jsxs(qe,{...i,id:s||u,ref:c,className:T(V,n),value:r,defaultValue:o,children:[m.jsx(Xe,{className:T(`${V}__track`),children:m.jsx(Ge,{className:T(`${V}__range`)})}),d==null?void 0:d.map((y,l)=>m.jsx(Ze,{className:T(`${V}__thumb`),"aria-label":e,"aria-valuetext":t},rt(l)))]})},he=R.forwardRef(ot);he.displayName="Slider";exports.SLIDER_ORIENTATION=nt;exports.Slider=he;
5
+ */var J;function et(){return J||(J=1,function(e){(function(){var t={}.hasOwnProperty;function n(){for(var r="",i=0;i<arguments.length;i++){var c=arguments[i];c&&(r=s(r,o.call(this,c)))}return r}function o(r){if(typeof r=="string"||typeof r=="number")return this&&this[r]||r;if(typeof r!="object")return"";if(Array.isArray(r))return n.apply(this,r);if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]"))return r.toString();var i="";for(var c in r)t.call(r,c)&&r[c]&&(i=s(i,this&&this[c]||c));return i}function s(r,i){return i?r?r+" "+i:r+i:r}e.exports?(n.default=n,e.exports=n):window.classNames=n})()}(F)),F.exports}var tt=et();const nt=Qe(tt),rt={"purpur-slider":"_purpur-slider_14tuk_1","purpur-slider__track":"_purpur-slider__track_14tuk_17","purpur-slider__range":"_purpur-slider__range_14tuk_17","purpur-slider__thumb":"_purpur-slider__thumb_14tuk_43"},T=nt.bind(rt),ot=["horizontal","vertical"],V="purpur-slider",st=e=>String(e),it=({"aria-label":e,"aria-valuetext":t,className:n,defaultValue:o,id:s,value:r,...i},c)=>{const u=_.useId(),d=r||o;return m.jsxs(Xe,{...i,id:s||u,ref:c,className:T(V,n),value:r,defaultValue:o,children:[m.jsx(Ge,{className:T(`${V}__track`),children:m.jsx(Ze,{className:T(`${V}__range`)})}),d==null?void 0:d.map((b,l)=>m.jsx(Je,{className:T(`${V}__thumb`),"aria-label":e,"aria-valuetext":t},st(l)))]})},Se=_.forwardRef(it);Se.displayName="Slider";exports.SLIDER_ORIENTATION=ot;exports.Slider=Se;
6
6
  //# sourceMappingURL=slider.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"slider.cjs.js","sources":["../../../common/temp/node_modules/.pnpm/@radix-ui+number@1.1.0/node_modules/@radix-ui/number/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+primitive@1.1.1/node_modules/@radix-ui/primitive/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-compose-refs@1.1.1_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-compose-refs/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-context@1.1.1_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-context/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-use-callback-ref@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-use-controllable-state@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-direction@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-direction/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-use-previous@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-previous/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-use-layout-effect@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-use-size@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-size/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-slot@1.1.2_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-slot/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-primitive@2.0.2_@types+react-dom@19.0.4_@types+react@19.0.10_react-dom@19.0.0_react@19.0.0/node_modules/@radix-ui/react-primitive/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-collection@1.1.2_@types+react-dom@19.0.4_@types+react@19.0.10_react-dom@19.0.0_react@19.0.0/node_modules/@radix-ui/react-collection/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-slider@1.2.3_@types+react-dom@19.0.4_@types+react@19.0.10_react-dom@19.0.0_react@19.0.0/node_modules/@radix-ui/react-slider/dist/index.mjs","../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../src/slider.tsx"],"sourcesContent":["// packages/core/number/src/number.ts\nfunction clamp(value, [min, max]) {\n return Math.min(max, Math.max(min, value));\n}\nexport {\n clamp\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/core/primitive/src/primitive.tsx\nfunction composeEventHandlers(originalEventHandler, ourEventHandler, { checkForDefaultPrevented = true } = {}) {\n return function handleEvent(event) {\n originalEventHandler?.(event);\n if (checkForDefaultPrevented === false || !event.defaultPrevented) {\n return ourEventHandler?.(event);\n }\n };\n}\nexport {\n composeEventHandlers\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/compose-refs/src/composeRefs.tsx\nimport * as React from \"react\";\nfunction setRef(ref, value) {\n if (typeof ref === \"function\") {\n return ref(value);\n } else if (ref !== null && ref !== void 0) {\n ref.current = value;\n }\n}\nfunction composeRefs(...refs) {\n return (node) => {\n let hasCleanup = false;\n const cleanups = refs.map((ref) => {\n const cleanup = setRef(ref, node);\n if (!hasCleanup && typeof cleanup == \"function\") {\n hasCleanup = true;\n }\n return cleanup;\n });\n if (hasCleanup) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (typeof cleanup == \"function\") {\n cleanup();\n } else {\n setRef(refs[i], null);\n }\n }\n };\n }\n };\n}\nfunction useComposedRefs(...refs) {\n return React.useCallback(composeRefs(...refs), refs);\n}\nexport {\n composeRefs,\n useComposedRefs\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/context/src/createContext.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createContext2(rootComponentName, defaultContext) {\n const Context = React.createContext(defaultContext);\n const Provider = (props) => {\n const { children, ...context } = props;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName) {\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n}\nfunction createContextScope(scopeName, createContextScopeDeps = []) {\n let defaultContexts = [];\n function createContext3(rootComponentName, defaultContext) {\n const BaseContext = React.createContext(defaultContext);\n const index = defaultContexts.length;\n defaultContexts = [...defaultContexts, defaultContext];\n const Provider = (props) => {\n const { scope, children, ...context } = props;\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName, scope) {\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n }\n const createScope = () => {\n const scopeContexts = defaultContexts.map((defaultContext) => {\n return React.createContext(defaultContext);\n });\n return function useScope(scope) {\n const contexts = scope?.[scopeName] || scopeContexts;\n return React.useMemo(\n () => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),\n [scope, contexts]\n );\n };\n };\n createScope.scopeName = scopeName;\n return [createContext3, composeContextScopes(createScope, ...createContextScopeDeps)];\n}\nfunction composeContextScopes(...scopes) {\n const baseScope = scopes[0];\n if (scopes.length === 1) return baseScope;\n const createScope = () => {\n const scopeHooks = scopes.map((createScope2) => ({\n useScope: createScope2(),\n scopeName: createScope2.scopeName\n }));\n return function useComposedScopes(overrideScopes) {\n const nextScopes = scopeHooks.reduce((nextScopes2, { useScope, scopeName }) => {\n const scopeProps = useScope(overrideScopes);\n const currentScope = scopeProps[`__scope${scopeName}`];\n return { ...nextScopes2, ...currentScope };\n }, {});\n return React.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);\n };\n };\n createScope.scopeName = baseScope.scopeName;\n return createScope;\n}\nexport {\n createContext2 as createContext,\n createContextScope\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-callback-ref/src/useCallbackRef.tsx\nimport * as React from \"react\";\nfunction useCallbackRef(callback) {\n const callbackRef = React.useRef(callback);\n React.useEffect(() => {\n callbackRef.current = callback;\n });\n return React.useMemo(() => (...args) => callbackRef.current?.(...args), []);\n}\nexport {\n useCallbackRef\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-controllable-state/src/useControllableState.tsx\nimport * as React from \"react\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nfunction useControllableState({\n prop,\n defaultProp,\n onChange = () => {\n }\n}) {\n const [uncontrolledProp, setUncontrolledProp] = useUncontrolledState({ defaultProp, onChange });\n const isControlled = prop !== void 0;\n const value = isControlled ? prop : uncontrolledProp;\n const handleChange = useCallbackRef(onChange);\n const setValue = React.useCallback(\n (nextValue) => {\n if (isControlled) {\n const setter = nextValue;\n const value2 = typeof nextValue === \"function\" ? setter(prop) : nextValue;\n if (value2 !== prop) handleChange(value2);\n } else {\n setUncontrolledProp(nextValue);\n }\n },\n [isControlled, prop, setUncontrolledProp, handleChange]\n );\n return [value, setValue];\n}\nfunction useUncontrolledState({\n defaultProp,\n onChange\n}) {\n const uncontrolledState = React.useState(defaultProp);\n const [value] = uncontrolledState;\n const prevValueRef = React.useRef(value);\n const handleChange = useCallbackRef(onChange);\n React.useEffect(() => {\n if (prevValueRef.current !== value) {\n handleChange(value);\n prevValueRef.current = value;\n }\n }, [value, prevValueRef, handleChange]);\n return uncontrolledState;\n}\nexport {\n useControllableState\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/direction/src/Direction.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nvar DirectionContext = React.createContext(void 0);\nvar DirectionProvider = (props) => {\n const { dir, children } = props;\n return /* @__PURE__ */ jsx(DirectionContext.Provider, { value: dir, children });\n};\nfunction useDirection(localDir) {\n const globalDir = React.useContext(DirectionContext);\n return localDir || globalDir || \"ltr\";\n}\nvar Provider = DirectionProvider;\nexport {\n DirectionProvider,\n Provider,\n useDirection\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-previous/src/usePrevious.tsx\nimport * as React from \"react\";\nfunction usePrevious(value) {\n const ref = React.useRef({ value, previous: value });\n return React.useMemo(() => {\n if (ref.current.value !== value) {\n ref.current.previous = ref.current.value;\n ref.current.value = value;\n }\n return ref.current.previous;\n }, [value]);\n}\nexport {\n usePrevious\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-layout-effect/src/useLayoutEffect.tsx\nimport * as React from \"react\";\nvar useLayoutEffect2 = Boolean(globalThis?.document) ? React.useLayoutEffect : () => {\n};\nexport {\n useLayoutEffect2 as useLayoutEffect\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-size/src/useSize.tsx\nimport * as React from \"react\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nfunction useSize(element) {\n const [size, setSize] = React.useState(void 0);\n useLayoutEffect(() => {\n if (element) {\n setSize({ width: element.offsetWidth, height: element.offsetHeight });\n const resizeObserver = new ResizeObserver((entries) => {\n if (!Array.isArray(entries)) {\n return;\n }\n if (!entries.length) {\n return;\n }\n const entry = entries[0];\n let width;\n let height;\n if (\"borderBoxSize\" in entry) {\n const borderSizeEntry = entry[\"borderBoxSize\"];\n const borderSize = Array.isArray(borderSizeEntry) ? borderSizeEntry[0] : borderSizeEntry;\n width = borderSize[\"inlineSize\"];\n height = borderSize[\"blockSize\"];\n } else {\n width = element.offsetWidth;\n height = element.offsetHeight;\n }\n setSize({ width, height });\n });\n resizeObserver.observe(element, { box: \"border-box\" });\n return () => resizeObserver.unobserve(element);\n } else {\n setSize(void 0);\n }\n }, [element]);\n return size;\n}\nexport {\n useSize\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/slot/src/slot.tsx\nimport * as React from \"react\";\nimport { composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { Fragment as Fragment2, jsx } from \"react/jsx-runtime\";\nvar Slot = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n const childrenArray = React.Children.toArray(children);\n const slottable = childrenArray.find(isSlottable);\n if (slottable) {\n const newElement = slottable.props.children;\n const newChildren = childrenArray.map((child) => {\n if (child === slottable) {\n if (React.Children.count(newElement) > 1) return React.Children.only(null);\n return React.isValidElement(newElement) ? newElement.props.children : null;\n } else {\n return child;\n }\n });\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React.isValidElement(newElement) ? React.cloneElement(newElement, void 0, newChildren) : null });\n }\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });\n});\nSlot.displayName = \"Slot\";\nvar SlotClone = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n if (React.isValidElement(children)) {\n const childrenRef = getElementRef(children);\n const props2 = mergeProps(slotProps, children.props);\n if (children.type !== React.Fragment) {\n props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;\n }\n return React.cloneElement(children, props2);\n }\n return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n});\nSlotClone.displayName = \"SlotClone\";\nvar Slottable = ({ children }) => {\n return /* @__PURE__ */ jsx(Fragment2, { children });\n};\nfunction isSlottable(child) {\n return React.isValidElement(child) && child.type === Slottable;\n}\nfunction mergeProps(slotProps, childProps) {\n const overrideProps = { ...childProps };\n for (const propName in childProps) {\n const slotPropValue = slotProps[propName];\n const childPropValue = childProps[propName];\n const isHandler = /^on[A-Z]/.test(propName);\n if (isHandler) {\n if (slotPropValue && childPropValue) {\n overrideProps[propName] = (...args) => {\n childPropValue(...args);\n slotPropValue(...args);\n };\n } else if (slotPropValue) {\n overrideProps[propName] = slotPropValue;\n }\n } else if (propName === \"style\") {\n overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n } else if (propName === \"className\") {\n overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(\" \");\n }\n }\n return { ...slotProps, ...overrideProps };\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nvar Root = Slot;\nexport {\n Root,\n Slot,\n Slottable\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/primitive/src/primitive.tsx\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nvar NODES = [\n \"a\",\n \"button\",\n \"div\",\n \"form\",\n \"h2\",\n \"h3\",\n \"img\",\n \"input\",\n \"label\",\n \"li\",\n \"nav\",\n \"ol\",\n \"p\",\n \"span\",\n \"svg\",\n \"ul\"\n];\nvar Primitive = NODES.reduce((primitive, node) => {\n const Node = React.forwardRef((props, forwardedRef) => {\n const { asChild, ...primitiveProps } = props;\n const Comp = asChild ? Slot : node;\n if (typeof window !== \"undefined\") {\n window[Symbol.for(\"radix-ui\")] = true;\n }\n return /* @__PURE__ */ jsx(Comp, { ...primitiveProps, ref: forwardedRef });\n });\n Node.displayName = `Primitive.${node}`;\n return { ...primitive, [node]: Node };\n}, {});\nfunction dispatchDiscreteCustomEvent(target, event) {\n if (target) ReactDOM.flushSync(() => target.dispatchEvent(event));\n}\nvar Root = Primitive;\nexport {\n Primitive,\n Root,\n dispatchDiscreteCustomEvent\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// packages/react/collection/src/collection.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createCollection(name) {\n const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = createContextScope(PROVIDER_NAME);\n const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n { collectionRef: { current: null }, itemMap: /* @__PURE__ */ new Map() }\n );\n const CollectionProvider = (props) => {\n const { scope, children } = props;\n const ref = React.useRef(null);\n const itemMap = React.useRef(/* @__PURE__ */ new Map()).current;\n return /* @__PURE__ */ jsx(CollectionProviderImpl, { scope, itemMap, collectionRef: ref, children });\n };\n CollectionProvider.displayName = PROVIDER_NAME;\n const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);\n return /* @__PURE__ */ jsx(Slot, { ref: composedRefs, children });\n }\n );\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n React.useEffect(() => {\n context.itemMap.set(ref, { ref, ...itemData });\n return () => void context.itemMap.delete(ref);\n });\n return /* @__PURE__ */ jsx(Slot, { ...{ [ITEM_DATA_ATTR]: \"\" }, ref: composedRefs, children });\n }\n );\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n function useCollection(scope) {\n const context = useCollectionContext(name + \"CollectionConsumer\", scope);\n const getItems = React.useCallback(() => {\n const collectionNode = context.collectionRef.current;\n if (!collectionNode) return [];\n const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));\n const items = Array.from(context.itemMap.values());\n const orderedItems = items.sort(\n (a, b) => orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current)\n );\n return orderedItems;\n }, [context.collectionRef, context.itemMap]);\n return getItems;\n }\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n useCollection,\n createCollectionScope\n ];\n}\nexport {\n createCollection\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// packages/react/slider/src/slider.tsx\nimport * as React from \"react\";\nimport { clamp } from \"@radix-ui/number\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar PAGE_KEYS = [\"PageUp\", \"PageDown\"];\nvar ARROW_KEYS = [\"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\"];\nvar BACK_KEYS = {\n \"from-left\": [\"Home\", \"PageDown\", \"ArrowDown\", \"ArrowLeft\"],\n \"from-right\": [\"Home\", \"PageDown\", \"ArrowDown\", \"ArrowRight\"],\n \"from-bottom\": [\"Home\", \"PageDown\", \"ArrowDown\", \"ArrowLeft\"],\n \"from-top\": [\"Home\", \"PageDown\", \"ArrowUp\", \"ArrowLeft\"]\n};\nvar SLIDER_NAME = \"Slider\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(SLIDER_NAME);\nvar [createSliderContext, createSliderScope] = createContextScope(SLIDER_NAME, [\n createCollectionScope\n]);\nvar [SliderProvider, useSliderContext] = createSliderContext(SLIDER_NAME);\nvar Slider = React.forwardRef(\n (props, forwardedRef) => {\n const {\n name,\n min = 0,\n max = 100,\n step = 1,\n orientation = \"horizontal\",\n disabled = false,\n minStepsBetweenThumbs = 0,\n defaultValue = [min],\n value,\n onValueChange = () => {\n },\n onValueCommit = () => {\n },\n inverted = false,\n form,\n ...sliderProps\n } = props;\n const thumbRefs = React.useRef(/* @__PURE__ */ new Set());\n const valueIndexToChangeRef = React.useRef(0);\n const isHorizontal = orientation === \"horizontal\";\n const SliderOrientation = isHorizontal ? SliderHorizontal : SliderVertical;\n const [values = [], setValues] = useControllableState({\n prop: value,\n defaultProp: defaultValue,\n onChange: (value2) => {\n const thumbs = [...thumbRefs.current];\n thumbs[valueIndexToChangeRef.current]?.focus();\n onValueChange(value2);\n }\n });\n const valuesBeforeSlideStartRef = React.useRef(values);\n function handleSlideStart(value2) {\n const closestIndex = getClosestValueIndex(values, value2);\n updateValues(value2, closestIndex);\n }\n function handleSlideMove(value2) {\n updateValues(value2, valueIndexToChangeRef.current);\n }\n function handleSlideEnd() {\n const prevValue = valuesBeforeSlideStartRef.current[valueIndexToChangeRef.current];\n const nextValue = values[valueIndexToChangeRef.current];\n const hasChanged = nextValue !== prevValue;\n if (hasChanged) onValueCommit(values);\n }\n function updateValues(value2, atIndex, { commit } = { commit: false }) {\n const decimalCount = getDecimalCount(step);\n const snapToStep = roundValue(Math.round((value2 - min) / step) * step + min, decimalCount);\n const nextValue = clamp(snapToStep, [min, max]);\n setValues((prevValues = []) => {\n const nextValues = getNextSortedValues(prevValues, nextValue, atIndex);\n if (hasMinStepsBetweenValues(nextValues, minStepsBetweenThumbs * step)) {\n valueIndexToChangeRef.current = nextValues.indexOf(nextValue);\n const hasChanged = String(nextValues) !== String(prevValues);\n if (hasChanged && commit) onValueCommit(nextValues);\n return hasChanged ? nextValues : prevValues;\n } else {\n return prevValues;\n }\n });\n }\n return /* @__PURE__ */ jsx(\n SliderProvider,\n {\n scope: props.__scopeSlider,\n name,\n disabled,\n min,\n max,\n valueIndexToChangeRef,\n thumbs: thumbRefs.current,\n values,\n orientation,\n form,\n children: /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeSlider, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeSlider, children: /* @__PURE__ */ jsx(\n SliderOrientation,\n {\n \"aria-disabled\": disabled,\n \"data-disabled\": disabled ? \"\" : void 0,\n ...sliderProps,\n ref: forwardedRef,\n onPointerDown: composeEventHandlers(sliderProps.onPointerDown, () => {\n if (!disabled) valuesBeforeSlideStartRef.current = values;\n }),\n min,\n max,\n inverted,\n onSlideStart: disabled ? void 0 : handleSlideStart,\n onSlideMove: disabled ? void 0 : handleSlideMove,\n onSlideEnd: disabled ? void 0 : handleSlideEnd,\n onHomeKeyDown: () => !disabled && updateValues(min, 0, { commit: true }),\n onEndKeyDown: () => !disabled && updateValues(max, values.length - 1, { commit: true }),\n onStepKeyDown: ({ event, direction: stepDirection }) => {\n if (!disabled) {\n const isPageKey = PAGE_KEYS.includes(event.key);\n const isSkipKey = isPageKey || event.shiftKey && ARROW_KEYS.includes(event.key);\n const multiplier = isSkipKey ? 10 : 1;\n const atIndex = valueIndexToChangeRef.current;\n const value2 = values[atIndex];\n const stepInDirection = step * multiplier * stepDirection;\n updateValues(value2 + stepInDirection, atIndex, { commit: true });\n }\n }\n }\n ) }) })\n }\n );\n }\n);\nSlider.displayName = SLIDER_NAME;\nvar [SliderOrientationProvider, useSliderOrientationContext] = createSliderContext(SLIDER_NAME, {\n startEdge: \"left\",\n endEdge: \"right\",\n size: \"width\",\n direction: 1\n});\nvar SliderHorizontal = React.forwardRef(\n (props, forwardedRef) => {\n const {\n min,\n max,\n dir,\n inverted,\n onSlideStart,\n onSlideMove,\n onSlideEnd,\n onStepKeyDown,\n ...sliderProps\n } = props;\n const [slider, setSlider] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setSlider(node));\n const rectRef = React.useRef(void 0);\n const direction = useDirection(dir);\n const isDirectionLTR = direction === \"ltr\";\n const isSlidingFromLeft = isDirectionLTR && !inverted || !isDirectionLTR && inverted;\n function getValueFromPointer(pointerPosition) {\n const rect = rectRef.current || slider.getBoundingClientRect();\n const input = [0, rect.width];\n const output = isSlidingFromLeft ? [min, max] : [max, min];\n const value = linearScale(input, output);\n rectRef.current = rect;\n return value(pointerPosition - rect.left);\n }\n return /* @__PURE__ */ jsx(\n SliderOrientationProvider,\n {\n scope: props.__scopeSlider,\n startEdge: isSlidingFromLeft ? \"left\" : \"right\",\n endEdge: isSlidingFromLeft ? \"right\" : \"left\",\n direction: isSlidingFromLeft ? 1 : -1,\n size: \"width\",\n children: /* @__PURE__ */ jsx(\n SliderImpl,\n {\n dir: direction,\n \"data-orientation\": \"horizontal\",\n ...sliderProps,\n ref: composedRefs,\n style: {\n ...sliderProps.style,\n [\"--radix-slider-thumb-transform\"]: \"translateX(-50%)\"\n },\n onSlideStart: (event) => {\n const value = getValueFromPointer(event.clientX);\n onSlideStart?.(value);\n },\n onSlideMove: (event) => {\n const value = getValueFromPointer(event.clientX);\n onSlideMove?.(value);\n },\n onSlideEnd: () => {\n rectRef.current = void 0;\n onSlideEnd?.();\n },\n onStepKeyDown: (event) => {\n const slideDirection = isSlidingFromLeft ? \"from-left\" : \"from-right\";\n const isBackKey = BACK_KEYS[slideDirection].includes(event.key);\n onStepKeyDown?.({ event, direction: isBackKey ? -1 : 1 });\n }\n }\n )\n }\n );\n }\n);\nvar SliderVertical = React.forwardRef(\n (props, forwardedRef) => {\n const {\n min,\n max,\n inverted,\n onSlideStart,\n onSlideMove,\n onSlideEnd,\n onStepKeyDown,\n ...sliderProps\n } = props;\n const sliderRef = React.useRef(null);\n const ref = useComposedRefs(forwardedRef, sliderRef);\n const rectRef = React.useRef(void 0);\n const isSlidingFromBottom = !inverted;\n function getValueFromPointer(pointerPosition) {\n const rect = rectRef.current || sliderRef.current.getBoundingClientRect();\n const input = [0, rect.height];\n const output = isSlidingFromBottom ? [max, min] : [min, max];\n const value = linearScale(input, output);\n rectRef.current = rect;\n return value(pointerPosition - rect.top);\n }\n return /* @__PURE__ */ jsx(\n SliderOrientationProvider,\n {\n scope: props.__scopeSlider,\n startEdge: isSlidingFromBottom ? \"bottom\" : \"top\",\n endEdge: isSlidingFromBottom ? \"top\" : \"bottom\",\n size: \"height\",\n direction: isSlidingFromBottom ? 1 : -1,\n children: /* @__PURE__ */ jsx(\n SliderImpl,\n {\n \"data-orientation\": \"vertical\",\n ...sliderProps,\n ref,\n style: {\n ...sliderProps.style,\n [\"--radix-slider-thumb-transform\"]: \"translateY(50%)\"\n },\n onSlideStart: (event) => {\n const value = getValueFromPointer(event.clientY);\n onSlideStart?.(value);\n },\n onSlideMove: (event) => {\n const value = getValueFromPointer(event.clientY);\n onSlideMove?.(value);\n },\n onSlideEnd: () => {\n rectRef.current = void 0;\n onSlideEnd?.();\n },\n onStepKeyDown: (event) => {\n const slideDirection = isSlidingFromBottom ? \"from-bottom\" : \"from-top\";\n const isBackKey = BACK_KEYS[slideDirection].includes(event.key);\n onStepKeyDown?.({ event, direction: isBackKey ? -1 : 1 });\n }\n }\n )\n }\n );\n }\n);\nvar SliderImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSlider,\n onSlideStart,\n onSlideMove,\n onSlideEnd,\n onHomeKeyDown,\n onEndKeyDown,\n onStepKeyDown,\n ...sliderProps\n } = props;\n const context = useSliderContext(SLIDER_NAME, __scopeSlider);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n ...sliderProps,\n ref: forwardedRef,\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if (event.key === \"Home\") {\n onHomeKeyDown(event);\n event.preventDefault();\n } else if (event.key === \"End\") {\n onEndKeyDown(event);\n event.preventDefault();\n } else if (PAGE_KEYS.concat(ARROW_KEYS).includes(event.key)) {\n onStepKeyDown(event);\n event.preventDefault();\n }\n }),\n onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {\n const target = event.target;\n target.setPointerCapture(event.pointerId);\n event.preventDefault();\n if (context.thumbs.has(target)) {\n target.focus();\n } else {\n onSlideStart(event);\n }\n }),\n onPointerMove: composeEventHandlers(props.onPointerMove, (event) => {\n const target = event.target;\n if (target.hasPointerCapture(event.pointerId)) onSlideMove(event);\n }),\n onPointerUp: composeEventHandlers(props.onPointerUp, (event) => {\n const target = event.target;\n if (target.hasPointerCapture(event.pointerId)) {\n target.releasePointerCapture(event.pointerId);\n onSlideEnd(event);\n }\n })\n }\n );\n }\n);\nvar TRACK_NAME = \"SliderTrack\";\nvar SliderTrack = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSlider, ...trackProps } = props;\n const context = useSliderContext(TRACK_NAME, __scopeSlider);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-disabled\": context.disabled ? \"\" : void 0,\n \"data-orientation\": context.orientation,\n ...trackProps,\n ref: forwardedRef\n }\n );\n }\n);\nSliderTrack.displayName = TRACK_NAME;\nvar RANGE_NAME = \"SliderRange\";\nvar SliderRange = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSlider, ...rangeProps } = props;\n const context = useSliderContext(RANGE_NAME, __scopeSlider);\n const orientation = useSliderOrientationContext(RANGE_NAME, __scopeSlider);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const valuesCount = context.values.length;\n const percentages = context.values.map(\n (value) => convertValueToPercentage(value, context.min, context.max)\n );\n const offsetStart = valuesCount > 1 ? Math.min(...percentages) : 0;\n const offsetEnd = 100 - Math.max(...percentages);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-orientation\": context.orientation,\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...rangeProps,\n ref: composedRefs,\n style: {\n ...props.style,\n [orientation.startEdge]: offsetStart + \"%\",\n [orientation.endEdge]: offsetEnd + \"%\"\n }\n }\n );\n }\n);\nSliderRange.displayName = RANGE_NAME;\nvar THUMB_NAME = \"SliderThumb\";\nvar SliderThumb = React.forwardRef(\n (props, forwardedRef) => {\n const getItems = useCollection(props.__scopeSlider);\n const [thumb, setThumb] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setThumb(node));\n const index = React.useMemo(\n () => thumb ? getItems().findIndex((item) => item.ref.current === thumb) : -1,\n [getItems, thumb]\n );\n return /* @__PURE__ */ jsx(SliderThumbImpl, { ...props, ref: composedRefs, index });\n }\n);\nvar SliderThumbImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSlider, index, name, ...thumbProps } = props;\n const context = useSliderContext(THUMB_NAME, __scopeSlider);\n const orientation = useSliderOrientationContext(THUMB_NAME, __scopeSlider);\n const [thumb, setThumb] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setThumb(node));\n const isFormControl = thumb ? context.form || !!thumb.closest(\"form\") : true;\n const size = useSize(thumb);\n const value = context.values[index];\n const percent = value === void 0 ? 0 : convertValueToPercentage(value, context.min, context.max);\n const label = getLabel(index, context.values.length);\n const orientationSize = size?.[orientation.size];\n const thumbInBoundsOffset = orientationSize ? getThumbInBoundsOffset(orientationSize, percent, orientation.direction) : 0;\n React.useEffect(() => {\n if (thumb) {\n context.thumbs.add(thumb);\n return () => {\n context.thumbs.delete(thumb);\n };\n }\n }, [thumb, context.thumbs]);\n return /* @__PURE__ */ jsxs(\n \"span\",\n {\n style: {\n transform: \"var(--radix-slider-thumb-transform)\",\n position: \"absolute\",\n [orientation.startEdge]: `calc(${percent}% + ${thumbInBoundsOffset}px)`\n },\n children: [\n /* @__PURE__ */ jsx(Collection.ItemSlot, { scope: props.__scopeSlider, children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n role: \"slider\",\n \"aria-label\": props[\"aria-label\"] || label,\n \"aria-valuemin\": context.min,\n \"aria-valuenow\": value,\n \"aria-valuemax\": context.max,\n \"aria-orientation\": context.orientation,\n \"data-orientation\": context.orientation,\n \"data-disabled\": context.disabled ? \"\" : void 0,\n tabIndex: context.disabled ? void 0 : 0,\n ...thumbProps,\n ref: composedRefs,\n style: value === void 0 ? { display: \"none\" } : props.style,\n onFocus: composeEventHandlers(props.onFocus, () => {\n context.valueIndexToChangeRef.current = index;\n })\n }\n ) }),\n isFormControl && /* @__PURE__ */ jsx(\n BubbleInput,\n {\n name: name ?? (context.name ? context.name + (context.values.length > 1 ? \"[]\" : \"\") : void 0),\n form: context.form,\n value\n },\n index\n )\n ]\n }\n );\n }\n);\nSliderThumb.displayName = THUMB_NAME;\nvar BubbleInput = (props) => {\n const { value, ...inputProps } = props;\n const ref = React.useRef(null);\n const prevValue = usePrevious(value);\n React.useEffect(() => {\n const input = ref.current;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(inputProto, \"value\");\n const setValue = descriptor.set;\n if (prevValue !== value && setValue) {\n const event = new Event(\"input\", { bubbles: true });\n setValue.call(input, value);\n input.dispatchEvent(event);\n }\n }, [prevValue, value]);\n return /* @__PURE__ */ jsx(\"input\", { style: { display: \"none\" }, ...inputProps, ref, defaultValue: value });\n};\nfunction getNextSortedValues(prevValues = [], nextValue, atIndex) {\n const nextValues = [...prevValues];\n nextValues[atIndex] = nextValue;\n return nextValues.sort((a, b) => a - b);\n}\nfunction convertValueToPercentage(value, min, max) {\n const maxSteps = max - min;\n const percentPerStep = 100 / maxSteps;\n const percentage = percentPerStep * (value - min);\n return clamp(percentage, [0, 100]);\n}\nfunction getLabel(index, totalValues) {\n if (totalValues > 2) {\n return `Value ${index + 1} of ${totalValues}`;\n } else if (totalValues === 2) {\n return [\"Minimum\", \"Maximum\"][index];\n } else {\n return void 0;\n }\n}\nfunction getClosestValueIndex(values, nextValue) {\n if (values.length === 1) return 0;\n const distances = values.map((value) => Math.abs(value - nextValue));\n const closestDistance = Math.min(...distances);\n return distances.indexOf(closestDistance);\n}\nfunction getThumbInBoundsOffset(width, left, direction) {\n const halfWidth = width / 2;\n const halfPercent = 50;\n const offset = linearScale([0, halfPercent], [0, halfWidth]);\n return (halfWidth - offset(left) * direction) * direction;\n}\nfunction getStepsBetweenValues(values) {\n return values.slice(0, -1).map((value, index) => values[index + 1] - value);\n}\nfunction hasMinStepsBetweenValues(values, minStepsBetweenValues) {\n if (minStepsBetweenValues > 0) {\n const stepsBetweenValues = getStepsBetweenValues(values);\n const actualMinStepsBetweenValues = Math.min(...stepsBetweenValues);\n return actualMinStepsBetweenValues >= minStepsBetweenValues;\n }\n return true;\n}\nfunction linearScale(input, output) {\n return (value) => {\n if (input[0] === input[1] || output[0] === output[1]) return output[0];\n const ratio = (output[1] - output[0]) / (input[1] - input[0]);\n return output[0] + ratio * (value - input[0]);\n };\n}\nfunction getDecimalCount(value) {\n return (String(value).split(\".\")[1] || \"\").length;\n}\nfunction roundValue(value, decimalCount) {\n const rounder = Math.pow(10, decimalCount);\n return Math.round(value * rounder) / rounder;\n}\nvar Root = Slider;\nvar Track = SliderTrack;\nvar Range = SliderRange;\nvar Thumb = SliderThumb;\nexport {\n Range,\n Root,\n Slider,\n SliderRange,\n SliderThumb,\n SliderTrack,\n Thumb,\n Track,\n createSliderScope\n};\n//# sourceMappingURL=index.mjs.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { ForwardedRef, forwardRef, useId } from \"react\";\nimport { Range, Root, Thumb, Track } from \"@radix-ui/react-slider\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./slider.module.scss\";\nconst cx = c.bind(styles);\n\ntype SliderValue = [number] | [number, number];\nexport const SLIDER_ORIENTATION = [\"horizontal\", \"vertical\"] as const;\n\nexport type SliderProps<T extends SliderValue> = {\n [\"data-testid\"]?: string;\n /* The aria-label is set to each thumb. */\n [\"aria-label\"]: string;\n /* Human-readable text alternative for aria-valuenow (aria-valuenow is set to `value` by radix under the hood). Use when the numeric value alone doesn't clearly represent the actual value. */\n [\"aria-valuetext\"]: string;\n className?: string;\n /**\n * The value of the slider when initially rendered. Use when you do not need to control the state of the slider. \n `T = <T extends [number] | [number, number]>`\n */\n defaultValue?: T;\n /* The id of the slider. */\n id?: string;\n /* The maximum value for the range. */\n max?: number;\n /* The minimum value for the range. */\n min?: number;\n /* The minimum permitted steps between multiple thumbs. */\n minStepsBetweenThumbs?: number;\n /* The name of the slider. Submitted with its owning form as part of a name/value pair. */\n name?: string;\n /* The orientation of the slider. */\n orientation?: (typeof SLIDER_ORIENTATION)[number];\n /* The stepping interval. */\n step?: number;\n /* The controlled value of the slider. Must be used in conjunction with onValueChange. */\n value?: T;\n /* Event handler called when the value changes. */\n onValueChange?(value: T): void;\n};\n\nconst rootClassName = \"purpur-slider\";\n\nconst getKey = (index: number) => String(index);\n\nconst SliderComponent = <T extends SliderValue>(\n {\n \"aria-label\": ariaLabel,\n \"aria-valuetext\": ariaValueText,\n className,\n defaultValue,\n id,\n value,\n ...props\n }: SliderProps<T>,\n ref: ForwardedRef<HTMLButtonElement>\n) => {\n const internalId = useId();\n const internalValue = value || defaultValue;\n\n return (\n <Root\n {...props}\n id={id || internalId}\n ref={ref}\n className={cx(rootClassName, className)}\n value={value}\n defaultValue={defaultValue}\n >\n <Track className={cx(`${rootClassName}__track`)}>\n <Range className={cx(`${rootClassName}__range`)} />\n </Track>\n {internalValue?.map((_, index) => (\n <Thumb\n key={getKey(index)}\n className={cx(`${rootClassName}__thumb`)}\n aria-label={ariaLabel}\n aria-valuetext={ariaValueText}\n />\n ))}\n </Root>\n );\n};\n\nexport const Slider = forwardRef(SliderComponent);\n\nSlider.displayName = \"Slider\";\n"],"names":["clamp","value","min","max","composeEventHandlers","originalEventHandler","ourEventHandler","checkForDefaultPrevented","event","setRef","ref","composeRefs","refs","node","hasCleanup","cleanups","cleanup","i","useComposedRefs","React","createContextScope","scopeName","createContextScopeDeps","defaultContexts","createContext3","rootComponentName","defaultContext","BaseContext","index","Provider","props","scope","children","context","Context","_a","jsx","useContext2","consumerName","createScope","scopeContexts","contexts","composeContextScopes","scopes","baseScope","scopeHooks","createScope2","overrideScopes","nextScopes","nextScopes2","useScope","currentScope","useCallbackRef","callback","callbackRef","args","useControllableState","prop","defaultProp","onChange","uncontrolledProp","setUncontrolledProp","useUncontrolledState","isControlled","handleChange","setValue","nextValue","value2","uncontrolledState","prevValueRef","DirectionContext","useDirection","localDir","globalDir","usePrevious","useLayoutEffect2","useSize","element","size","setSize","useLayoutEffect","resizeObserver","entries","entry","width","height","borderSizeEntry","borderSize","Slot","forwardedRef","slotProps","childrenArray","slottable","isSlottable","newElement","newChildren","child","SlotClone","childrenRef","getElementRef","props2","mergeProps","Slottable","Fragment2","childProps","overrideProps","propName","slotPropValue","childPropValue","getter","mayWarn","_b","NODES","Primitive","primitive","Node","asChild","primitiveProps","Comp","createCollection","name","PROVIDER_NAME","createCollectionContext","createCollectionScope","CollectionProviderImpl","useCollectionContext","CollectionProvider","itemMap","COLLECTION_SLOT_NAME","CollectionSlot","composedRefs","ITEM_SLOT_NAME","ITEM_DATA_ATTR","CollectionItemSlot","itemData","useCollection","collectionNode","orderedNodes","a","b","PAGE_KEYS","ARROW_KEYS","BACK_KEYS","SLIDER_NAME","Collection","createSliderContext","createSliderScope","SliderProvider","useSliderContext","Slider","step","orientation","disabled","minStepsBetweenThumbs","defaultValue","onValueChange","onValueCommit","inverted","form","sliderProps","thumbRefs","valueIndexToChangeRef","SliderOrientation","SliderHorizontal","SliderVertical","values","setValues","valuesBeforeSlideStartRef","handleSlideStart","closestIndex","getClosestValueIndex","updateValues","handleSlideMove","handleSlideEnd","prevValue","atIndex","commit","decimalCount","getDecimalCount","snapToStep","roundValue","prevValues","nextValues","getNextSortedValues","hasMinStepsBetweenValues","hasChanged","stepDirection","multiplier","stepInDirection","SliderOrientationProvider","useSliderOrientationContext","dir","onSlideStart","onSlideMove","onSlideEnd","onStepKeyDown","slider","setSlider","rectRef","direction","isDirectionLTR","isSlidingFromLeft","getValueFromPointer","pointerPosition","rect","input","linearScale","SliderImpl","isBackKey","sliderRef","isSlidingFromBottom","__scopeSlider","onHomeKeyDown","onEndKeyDown","target","TRACK_NAME","SliderTrack","trackProps","RANGE_NAME","SliderRange","rangeProps","valuesCount","percentages","convertValueToPercentage","offsetStart","offsetEnd","THUMB_NAME","SliderThumb","getItems","thumb","setThumb","item","SliderThumbImpl","thumbProps","isFormControl","percent","label","getLabel","orientationSize","thumbInBoundsOffset","getThumbInBoundsOffset","jsxs","BubbleInput","inputProps","inputProto","percentage","totalValues","distances","closestDistance","left","halfWidth","offset","getStepsBetweenValues","minStepsBetweenValues","stepsBetweenValues","output","ratio","rounder","Root","Track","Range","Thumb","hasOwn","classNames","classes","arg","appendClass","parseValue","key","newClass","module","cx","c","styles","SLIDER_ORIENTATION","rootClassName","getKey","SliderComponent","ariaLabel","ariaValueText","className","id","internalId","useId","internalValue","_","forwardRef"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]}
1
+ {"version":3,"file":"slider.cjs.js","sources":["../../../common/temp/node_modules/.pnpm/@radix-ui+number@1.1.0/node_modules/@radix-ui/number/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+primitive@1.1.1/node_modules/@radix-ui/primitive/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-compose-refs@1.1.1_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-compose-refs/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-context@1.1.1_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-context/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-use-callback-ref@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-use-controllable-state@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-direction@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-direction/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-use-previous@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-previous/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-use-layout-effect@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-use-size@1.1.0_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-size/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-slot@1.1.2_@types+react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-slot/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-primitive@2.0.2_@types+react-dom@19.0.4_@types+react@19.0.10_react-dom@19.0.0_react@19.0.0/node_modules/@radix-ui/react-primitive/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-collection@1.1.2_@types+react-dom@19.0.4_@types+react@19.0.10_react-dom@19.0.0_react@19.0.0/node_modules/@radix-ui/react-collection/dist/index.mjs","../../../common/temp/node_modules/.pnpm/@radix-ui+react-slider@1.2.3_@types+react-dom@19.0.4_@types+react@19.0.10_react-dom@19.0.0_react@19.0.0/node_modules/@radix-ui/react-slider/dist/index.mjs","../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../src/slider.tsx"],"sourcesContent":["// packages/core/number/src/number.ts\nfunction clamp(value, [min, max]) {\n return Math.min(max, Math.max(min, value));\n}\nexport {\n clamp\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/core/primitive/src/primitive.tsx\nfunction composeEventHandlers(originalEventHandler, ourEventHandler, { checkForDefaultPrevented = true } = {}) {\n return function handleEvent(event) {\n originalEventHandler?.(event);\n if (checkForDefaultPrevented === false || !event.defaultPrevented) {\n return ourEventHandler?.(event);\n }\n };\n}\nexport {\n composeEventHandlers\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/compose-refs/src/composeRefs.tsx\nimport * as React from \"react\";\nfunction setRef(ref, value) {\n if (typeof ref === \"function\") {\n return ref(value);\n } else if (ref !== null && ref !== void 0) {\n ref.current = value;\n }\n}\nfunction composeRefs(...refs) {\n return (node) => {\n let hasCleanup = false;\n const cleanups = refs.map((ref) => {\n const cleanup = setRef(ref, node);\n if (!hasCleanup && typeof cleanup == \"function\") {\n hasCleanup = true;\n }\n return cleanup;\n });\n if (hasCleanup) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (typeof cleanup == \"function\") {\n cleanup();\n } else {\n setRef(refs[i], null);\n }\n }\n };\n }\n };\n}\nfunction useComposedRefs(...refs) {\n return React.useCallback(composeRefs(...refs), refs);\n}\nexport {\n composeRefs,\n useComposedRefs\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/context/src/createContext.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createContext2(rootComponentName, defaultContext) {\n const Context = React.createContext(defaultContext);\n const Provider = (props) => {\n const { children, ...context } = props;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName) {\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n}\nfunction createContextScope(scopeName, createContextScopeDeps = []) {\n let defaultContexts = [];\n function createContext3(rootComponentName, defaultContext) {\n const BaseContext = React.createContext(defaultContext);\n const index = defaultContexts.length;\n defaultContexts = [...defaultContexts, defaultContext];\n const Provider = (props) => {\n const { scope, children, ...context } = props;\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName, scope) {\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n }\n const createScope = () => {\n const scopeContexts = defaultContexts.map((defaultContext) => {\n return React.createContext(defaultContext);\n });\n return function useScope(scope) {\n const contexts = scope?.[scopeName] || scopeContexts;\n return React.useMemo(\n () => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),\n [scope, contexts]\n );\n };\n };\n createScope.scopeName = scopeName;\n return [createContext3, composeContextScopes(createScope, ...createContextScopeDeps)];\n}\nfunction composeContextScopes(...scopes) {\n const baseScope = scopes[0];\n if (scopes.length === 1) return baseScope;\n const createScope = () => {\n const scopeHooks = scopes.map((createScope2) => ({\n useScope: createScope2(),\n scopeName: createScope2.scopeName\n }));\n return function useComposedScopes(overrideScopes) {\n const nextScopes = scopeHooks.reduce((nextScopes2, { useScope, scopeName }) => {\n const scopeProps = useScope(overrideScopes);\n const currentScope = scopeProps[`__scope${scopeName}`];\n return { ...nextScopes2, ...currentScope };\n }, {});\n return React.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);\n };\n };\n createScope.scopeName = baseScope.scopeName;\n return createScope;\n}\nexport {\n createContext2 as createContext,\n createContextScope\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-callback-ref/src/useCallbackRef.tsx\nimport * as React from \"react\";\nfunction useCallbackRef(callback) {\n const callbackRef = React.useRef(callback);\n React.useEffect(() => {\n callbackRef.current = callback;\n });\n return React.useMemo(() => (...args) => callbackRef.current?.(...args), []);\n}\nexport {\n useCallbackRef\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-controllable-state/src/useControllableState.tsx\nimport * as React from \"react\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nfunction useControllableState({\n prop,\n defaultProp,\n onChange = () => {\n }\n}) {\n const [uncontrolledProp, setUncontrolledProp] = useUncontrolledState({ defaultProp, onChange });\n const isControlled = prop !== void 0;\n const value = isControlled ? prop : uncontrolledProp;\n const handleChange = useCallbackRef(onChange);\n const setValue = React.useCallback(\n (nextValue) => {\n if (isControlled) {\n const setter = nextValue;\n const value2 = typeof nextValue === \"function\" ? setter(prop) : nextValue;\n if (value2 !== prop) handleChange(value2);\n } else {\n setUncontrolledProp(nextValue);\n }\n },\n [isControlled, prop, setUncontrolledProp, handleChange]\n );\n return [value, setValue];\n}\nfunction useUncontrolledState({\n defaultProp,\n onChange\n}) {\n const uncontrolledState = React.useState(defaultProp);\n const [value] = uncontrolledState;\n const prevValueRef = React.useRef(value);\n const handleChange = useCallbackRef(onChange);\n React.useEffect(() => {\n if (prevValueRef.current !== value) {\n handleChange(value);\n prevValueRef.current = value;\n }\n }, [value, prevValueRef, handleChange]);\n return uncontrolledState;\n}\nexport {\n useControllableState\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/direction/src/Direction.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nvar DirectionContext = React.createContext(void 0);\nvar DirectionProvider = (props) => {\n const { dir, children } = props;\n return /* @__PURE__ */ jsx(DirectionContext.Provider, { value: dir, children });\n};\nfunction useDirection(localDir) {\n const globalDir = React.useContext(DirectionContext);\n return localDir || globalDir || \"ltr\";\n}\nvar Provider = DirectionProvider;\nexport {\n DirectionProvider,\n Provider,\n useDirection\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-previous/src/usePrevious.tsx\nimport * as React from \"react\";\nfunction usePrevious(value) {\n const ref = React.useRef({ value, previous: value });\n return React.useMemo(() => {\n if (ref.current.value !== value) {\n ref.current.previous = ref.current.value;\n ref.current.value = value;\n }\n return ref.current.previous;\n }, [value]);\n}\nexport {\n usePrevious\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-layout-effect/src/useLayoutEffect.tsx\nimport * as React from \"react\";\nvar useLayoutEffect2 = Boolean(globalThis?.document) ? React.useLayoutEffect : () => {\n};\nexport {\n useLayoutEffect2 as useLayoutEffect\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-size/src/useSize.tsx\nimport * as React from \"react\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nfunction useSize(element) {\n const [size, setSize] = React.useState(void 0);\n useLayoutEffect(() => {\n if (element) {\n setSize({ width: element.offsetWidth, height: element.offsetHeight });\n const resizeObserver = new ResizeObserver((entries) => {\n if (!Array.isArray(entries)) {\n return;\n }\n if (!entries.length) {\n return;\n }\n const entry = entries[0];\n let width;\n let height;\n if (\"borderBoxSize\" in entry) {\n const borderSizeEntry = entry[\"borderBoxSize\"];\n const borderSize = Array.isArray(borderSizeEntry) ? borderSizeEntry[0] : borderSizeEntry;\n width = borderSize[\"inlineSize\"];\n height = borderSize[\"blockSize\"];\n } else {\n width = element.offsetWidth;\n height = element.offsetHeight;\n }\n setSize({ width, height });\n });\n resizeObserver.observe(element, { box: \"border-box\" });\n return () => resizeObserver.unobserve(element);\n } else {\n setSize(void 0);\n }\n }, [element]);\n return size;\n}\nexport {\n useSize\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/slot/src/slot.tsx\nimport * as React from \"react\";\nimport { composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { Fragment as Fragment2, jsx } from \"react/jsx-runtime\";\nvar Slot = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n const childrenArray = React.Children.toArray(children);\n const slottable = childrenArray.find(isSlottable);\n if (slottable) {\n const newElement = slottable.props.children;\n const newChildren = childrenArray.map((child) => {\n if (child === slottable) {\n if (React.Children.count(newElement) > 1) return React.Children.only(null);\n return React.isValidElement(newElement) ? newElement.props.children : null;\n } else {\n return child;\n }\n });\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React.isValidElement(newElement) ? React.cloneElement(newElement, void 0, newChildren) : null });\n }\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });\n});\nSlot.displayName = \"Slot\";\nvar SlotClone = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n if (React.isValidElement(children)) {\n const childrenRef = getElementRef(children);\n const props2 = mergeProps(slotProps, children.props);\n if (children.type !== React.Fragment) {\n props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;\n }\n return React.cloneElement(children, props2);\n }\n return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n});\nSlotClone.displayName = \"SlotClone\";\nvar Slottable = ({ children }) => {\n return /* @__PURE__ */ jsx(Fragment2, { children });\n};\nfunction isSlottable(child) {\n return React.isValidElement(child) && child.type === Slottable;\n}\nfunction mergeProps(slotProps, childProps) {\n const overrideProps = { ...childProps };\n for (const propName in childProps) {\n const slotPropValue = slotProps[propName];\n const childPropValue = childProps[propName];\n const isHandler = /^on[A-Z]/.test(propName);\n if (isHandler) {\n if (slotPropValue && childPropValue) {\n overrideProps[propName] = (...args) => {\n childPropValue(...args);\n slotPropValue(...args);\n };\n } else if (slotPropValue) {\n overrideProps[propName] = slotPropValue;\n }\n } else if (propName === \"style\") {\n overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n } else if (propName === \"className\") {\n overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(\" \");\n }\n }\n return { ...slotProps, ...overrideProps };\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nvar Root = Slot;\nexport {\n Root,\n Slot,\n Slottable\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/primitive/src/primitive.tsx\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nvar NODES = [\n \"a\",\n \"button\",\n \"div\",\n \"form\",\n \"h2\",\n \"h3\",\n \"img\",\n \"input\",\n \"label\",\n \"li\",\n \"nav\",\n \"ol\",\n \"p\",\n \"span\",\n \"svg\",\n \"ul\"\n];\nvar Primitive = NODES.reduce((primitive, node) => {\n const Node = React.forwardRef((props, forwardedRef) => {\n const { asChild, ...primitiveProps } = props;\n const Comp = asChild ? Slot : node;\n if (typeof window !== \"undefined\") {\n window[Symbol.for(\"radix-ui\")] = true;\n }\n return /* @__PURE__ */ jsx(Comp, { ...primitiveProps, ref: forwardedRef });\n });\n Node.displayName = `Primitive.${node}`;\n return { ...primitive, [node]: Node };\n}, {});\nfunction dispatchDiscreteCustomEvent(target, event) {\n if (target) ReactDOM.flushSync(() => target.dispatchEvent(event));\n}\nvar Root = Primitive;\nexport {\n Primitive,\n Root,\n dispatchDiscreteCustomEvent\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// packages/react/collection/src/collection.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createCollection(name) {\n const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = createContextScope(PROVIDER_NAME);\n const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n { collectionRef: { current: null }, itemMap: /* @__PURE__ */ new Map() }\n );\n const CollectionProvider = (props) => {\n const { scope, children } = props;\n const ref = React.useRef(null);\n const itemMap = React.useRef(/* @__PURE__ */ new Map()).current;\n return /* @__PURE__ */ jsx(CollectionProviderImpl, { scope, itemMap, collectionRef: ref, children });\n };\n CollectionProvider.displayName = PROVIDER_NAME;\n const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);\n return /* @__PURE__ */ jsx(Slot, { ref: composedRefs, children });\n }\n );\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n React.useEffect(() => {\n context.itemMap.set(ref, { ref, ...itemData });\n return () => void context.itemMap.delete(ref);\n });\n return /* @__PURE__ */ jsx(Slot, { ...{ [ITEM_DATA_ATTR]: \"\" }, ref: composedRefs, children });\n }\n );\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n function useCollection(scope) {\n const context = useCollectionContext(name + \"CollectionConsumer\", scope);\n const getItems = React.useCallback(() => {\n const collectionNode = context.collectionRef.current;\n if (!collectionNode) return [];\n const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));\n const items = Array.from(context.itemMap.values());\n const orderedItems = items.sort(\n (a, b) => orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current)\n );\n return orderedItems;\n }, [context.collectionRef, context.itemMap]);\n return getItems;\n }\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n useCollection,\n createCollectionScope\n ];\n}\nexport {\n createCollection\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// packages/react/slider/src/slider.tsx\nimport * as React from \"react\";\nimport { clamp } from \"@radix-ui/number\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar PAGE_KEYS = [\"PageUp\", \"PageDown\"];\nvar ARROW_KEYS = [\"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\"];\nvar BACK_KEYS = {\n \"from-left\": [\"Home\", \"PageDown\", \"ArrowDown\", \"ArrowLeft\"],\n \"from-right\": [\"Home\", \"PageDown\", \"ArrowDown\", \"ArrowRight\"],\n \"from-bottom\": [\"Home\", \"PageDown\", \"ArrowDown\", \"ArrowLeft\"],\n \"from-top\": [\"Home\", \"PageDown\", \"ArrowUp\", \"ArrowLeft\"]\n};\nvar SLIDER_NAME = \"Slider\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(SLIDER_NAME);\nvar [createSliderContext, createSliderScope] = createContextScope(SLIDER_NAME, [\n createCollectionScope\n]);\nvar [SliderProvider, useSliderContext] = createSliderContext(SLIDER_NAME);\nvar Slider = React.forwardRef(\n (props, forwardedRef) => {\n const {\n name,\n min = 0,\n max = 100,\n step = 1,\n orientation = \"horizontal\",\n disabled = false,\n minStepsBetweenThumbs = 0,\n defaultValue = [min],\n value,\n onValueChange = () => {\n },\n onValueCommit = () => {\n },\n inverted = false,\n form,\n ...sliderProps\n } = props;\n const thumbRefs = React.useRef(/* @__PURE__ */ new Set());\n const valueIndexToChangeRef = React.useRef(0);\n const isHorizontal = orientation === \"horizontal\";\n const SliderOrientation = isHorizontal ? SliderHorizontal : SliderVertical;\n const [values = [], setValues] = useControllableState({\n prop: value,\n defaultProp: defaultValue,\n onChange: (value2) => {\n const thumbs = [...thumbRefs.current];\n thumbs[valueIndexToChangeRef.current]?.focus();\n onValueChange(value2);\n }\n });\n const valuesBeforeSlideStartRef = React.useRef(values);\n function handleSlideStart(value2) {\n const closestIndex = getClosestValueIndex(values, value2);\n updateValues(value2, closestIndex);\n }\n function handleSlideMove(value2) {\n updateValues(value2, valueIndexToChangeRef.current);\n }\n function handleSlideEnd() {\n const prevValue = valuesBeforeSlideStartRef.current[valueIndexToChangeRef.current];\n const nextValue = values[valueIndexToChangeRef.current];\n const hasChanged = nextValue !== prevValue;\n if (hasChanged) onValueCommit(values);\n }\n function updateValues(value2, atIndex, { commit } = { commit: false }) {\n const decimalCount = getDecimalCount(step);\n const snapToStep = roundValue(Math.round((value2 - min) / step) * step + min, decimalCount);\n const nextValue = clamp(snapToStep, [min, max]);\n setValues((prevValues = []) => {\n const nextValues = getNextSortedValues(prevValues, nextValue, atIndex);\n if (hasMinStepsBetweenValues(nextValues, minStepsBetweenThumbs * step)) {\n valueIndexToChangeRef.current = nextValues.indexOf(nextValue);\n const hasChanged = String(nextValues) !== String(prevValues);\n if (hasChanged && commit) onValueCommit(nextValues);\n return hasChanged ? nextValues : prevValues;\n } else {\n return prevValues;\n }\n });\n }\n return /* @__PURE__ */ jsx(\n SliderProvider,\n {\n scope: props.__scopeSlider,\n name,\n disabled,\n min,\n max,\n valueIndexToChangeRef,\n thumbs: thumbRefs.current,\n values,\n orientation,\n form,\n children: /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeSlider, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeSlider, children: /* @__PURE__ */ jsx(\n SliderOrientation,\n {\n \"aria-disabled\": disabled,\n \"data-disabled\": disabled ? \"\" : void 0,\n ...sliderProps,\n ref: forwardedRef,\n onPointerDown: composeEventHandlers(sliderProps.onPointerDown, () => {\n if (!disabled) valuesBeforeSlideStartRef.current = values;\n }),\n min,\n max,\n inverted,\n onSlideStart: disabled ? void 0 : handleSlideStart,\n onSlideMove: disabled ? void 0 : handleSlideMove,\n onSlideEnd: disabled ? void 0 : handleSlideEnd,\n onHomeKeyDown: () => !disabled && updateValues(min, 0, { commit: true }),\n onEndKeyDown: () => !disabled && updateValues(max, values.length - 1, { commit: true }),\n onStepKeyDown: ({ event, direction: stepDirection }) => {\n if (!disabled) {\n const isPageKey = PAGE_KEYS.includes(event.key);\n const isSkipKey = isPageKey || event.shiftKey && ARROW_KEYS.includes(event.key);\n const multiplier = isSkipKey ? 10 : 1;\n const atIndex = valueIndexToChangeRef.current;\n const value2 = values[atIndex];\n const stepInDirection = step * multiplier * stepDirection;\n updateValues(value2 + stepInDirection, atIndex, { commit: true });\n }\n }\n }\n ) }) })\n }\n );\n }\n);\nSlider.displayName = SLIDER_NAME;\nvar [SliderOrientationProvider, useSliderOrientationContext] = createSliderContext(SLIDER_NAME, {\n startEdge: \"left\",\n endEdge: \"right\",\n size: \"width\",\n direction: 1\n});\nvar SliderHorizontal = React.forwardRef(\n (props, forwardedRef) => {\n const {\n min,\n max,\n dir,\n inverted,\n onSlideStart,\n onSlideMove,\n onSlideEnd,\n onStepKeyDown,\n ...sliderProps\n } = props;\n const [slider, setSlider] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setSlider(node));\n const rectRef = React.useRef(void 0);\n const direction = useDirection(dir);\n const isDirectionLTR = direction === \"ltr\";\n const isSlidingFromLeft = isDirectionLTR && !inverted || !isDirectionLTR && inverted;\n function getValueFromPointer(pointerPosition) {\n const rect = rectRef.current || slider.getBoundingClientRect();\n const input = [0, rect.width];\n const output = isSlidingFromLeft ? [min, max] : [max, min];\n const value = linearScale(input, output);\n rectRef.current = rect;\n return value(pointerPosition - rect.left);\n }\n return /* @__PURE__ */ jsx(\n SliderOrientationProvider,\n {\n scope: props.__scopeSlider,\n startEdge: isSlidingFromLeft ? \"left\" : \"right\",\n endEdge: isSlidingFromLeft ? \"right\" : \"left\",\n direction: isSlidingFromLeft ? 1 : -1,\n size: \"width\",\n children: /* @__PURE__ */ jsx(\n SliderImpl,\n {\n dir: direction,\n \"data-orientation\": \"horizontal\",\n ...sliderProps,\n ref: composedRefs,\n style: {\n ...sliderProps.style,\n [\"--radix-slider-thumb-transform\"]: \"translateX(-50%)\"\n },\n onSlideStart: (event) => {\n const value = getValueFromPointer(event.clientX);\n onSlideStart?.(value);\n },\n onSlideMove: (event) => {\n const value = getValueFromPointer(event.clientX);\n onSlideMove?.(value);\n },\n onSlideEnd: () => {\n rectRef.current = void 0;\n onSlideEnd?.();\n },\n onStepKeyDown: (event) => {\n const slideDirection = isSlidingFromLeft ? \"from-left\" : \"from-right\";\n const isBackKey = BACK_KEYS[slideDirection].includes(event.key);\n onStepKeyDown?.({ event, direction: isBackKey ? -1 : 1 });\n }\n }\n )\n }\n );\n }\n);\nvar SliderVertical = React.forwardRef(\n (props, forwardedRef) => {\n const {\n min,\n max,\n inverted,\n onSlideStart,\n onSlideMove,\n onSlideEnd,\n onStepKeyDown,\n ...sliderProps\n } = props;\n const sliderRef = React.useRef(null);\n const ref = useComposedRefs(forwardedRef, sliderRef);\n const rectRef = React.useRef(void 0);\n const isSlidingFromBottom = !inverted;\n function getValueFromPointer(pointerPosition) {\n const rect = rectRef.current || sliderRef.current.getBoundingClientRect();\n const input = [0, rect.height];\n const output = isSlidingFromBottom ? [max, min] : [min, max];\n const value = linearScale(input, output);\n rectRef.current = rect;\n return value(pointerPosition - rect.top);\n }\n return /* @__PURE__ */ jsx(\n SliderOrientationProvider,\n {\n scope: props.__scopeSlider,\n startEdge: isSlidingFromBottom ? \"bottom\" : \"top\",\n endEdge: isSlidingFromBottom ? \"top\" : \"bottom\",\n size: \"height\",\n direction: isSlidingFromBottom ? 1 : -1,\n children: /* @__PURE__ */ jsx(\n SliderImpl,\n {\n \"data-orientation\": \"vertical\",\n ...sliderProps,\n ref,\n style: {\n ...sliderProps.style,\n [\"--radix-slider-thumb-transform\"]: \"translateY(50%)\"\n },\n onSlideStart: (event) => {\n const value = getValueFromPointer(event.clientY);\n onSlideStart?.(value);\n },\n onSlideMove: (event) => {\n const value = getValueFromPointer(event.clientY);\n onSlideMove?.(value);\n },\n onSlideEnd: () => {\n rectRef.current = void 0;\n onSlideEnd?.();\n },\n onStepKeyDown: (event) => {\n const slideDirection = isSlidingFromBottom ? \"from-bottom\" : \"from-top\";\n const isBackKey = BACK_KEYS[slideDirection].includes(event.key);\n onStepKeyDown?.({ event, direction: isBackKey ? -1 : 1 });\n }\n }\n )\n }\n );\n }\n);\nvar SliderImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSlider,\n onSlideStart,\n onSlideMove,\n onSlideEnd,\n onHomeKeyDown,\n onEndKeyDown,\n onStepKeyDown,\n ...sliderProps\n } = props;\n const context = useSliderContext(SLIDER_NAME, __scopeSlider);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n ...sliderProps,\n ref: forwardedRef,\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if (event.key === \"Home\") {\n onHomeKeyDown(event);\n event.preventDefault();\n } else if (event.key === \"End\") {\n onEndKeyDown(event);\n event.preventDefault();\n } else if (PAGE_KEYS.concat(ARROW_KEYS).includes(event.key)) {\n onStepKeyDown(event);\n event.preventDefault();\n }\n }),\n onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {\n const target = event.target;\n target.setPointerCapture(event.pointerId);\n event.preventDefault();\n if (context.thumbs.has(target)) {\n target.focus();\n } else {\n onSlideStart(event);\n }\n }),\n onPointerMove: composeEventHandlers(props.onPointerMove, (event) => {\n const target = event.target;\n if (target.hasPointerCapture(event.pointerId)) onSlideMove(event);\n }),\n onPointerUp: composeEventHandlers(props.onPointerUp, (event) => {\n const target = event.target;\n if (target.hasPointerCapture(event.pointerId)) {\n target.releasePointerCapture(event.pointerId);\n onSlideEnd(event);\n }\n })\n }\n );\n }\n);\nvar TRACK_NAME = \"SliderTrack\";\nvar SliderTrack = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSlider, ...trackProps } = props;\n const context = useSliderContext(TRACK_NAME, __scopeSlider);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-disabled\": context.disabled ? \"\" : void 0,\n \"data-orientation\": context.orientation,\n ...trackProps,\n ref: forwardedRef\n }\n );\n }\n);\nSliderTrack.displayName = TRACK_NAME;\nvar RANGE_NAME = \"SliderRange\";\nvar SliderRange = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSlider, ...rangeProps } = props;\n const context = useSliderContext(RANGE_NAME, __scopeSlider);\n const orientation = useSliderOrientationContext(RANGE_NAME, __scopeSlider);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const valuesCount = context.values.length;\n const percentages = context.values.map(\n (value) => convertValueToPercentage(value, context.min, context.max)\n );\n const offsetStart = valuesCount > 1 ? Math.min(...percentages) : 0;\n const offsetEnd = 100 - Math.max(...percentages);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n \"data-orientation\": context.orientation,\n \"data-disabled\": context.disabled ? \"\" : void 0,\n ...rangeProps,\n ref: composedRefs,\n style: {\n ...props.style,\n [orientation.startEdge]: offsetStart + \"%\",\n [orientation.endEdge]: offsetEnd + \"%\"\n }\n }\n );\n }\n);\nSliderRange.displayName = RANGE_NAME;\nvar THUMB_NAME = \"SliderThumb\";\nvar SliderThumb = React.forwardRef(\n (props, forwardedRef) => {\n const getItems = useCollection(props.__scopeSlider);\n const [thumb, setThumb] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setThumb(node));\n const index = React.useMemo(\n () => thumb ? getItems().findIndex((item) => item.ref.current === thumb) : -1,\n [getItems, thumb]\n );\n return /* @__PURE__ */ jsx(SliderThumbImpl, { ...props, ref: composedRefs, index });\n }\n);\nvar SliderThumbImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSlider, index, name, ...thumbProps } = props;\n const context = useSliderContext(THUMB_NAME, __scopeSlider);\n const orientation = useSliderOrientationContext(THUMB_NAME, __scopeSlider);\n const [thumb, setThumb] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setThumb(node));\n const isFormControl = thumb ? context.form || !!thumb.closest(\"form\") : true;\n const size = useSize(thumb);\n const value = context.values[index];\n const percent = value === void 0 ? 0 : convertValueToPercentage(value, context.min, context.max);\n const label = getLabel(index, context.values.length);\n const orientationSize = size?.[orientation.size];\n const thumbInBoundsOffset = orientationSize ? getThumbInBoundsOffset(orientationSize, percent, orientation.direction) : 0;\n React.useEffect(() => {\n if (thumb) {\n context.thumbs.add(thumb);\n return () => {\n context.thumbs.delete(thumb);\n };\n }\n }, [thumb, context.thumbs]);\n return /* @__PURE__ */ jsxs(\n \"span\",\n {\n style: {\n transform: \"var(--radix-slider-thumb-transform)\",\n position: \"absolute\",\n [orientation.startEdge]: `calc(${percent}% + ${thumbInBoundsOffset}px)`\n },\n children: [\n /* @__PURE__ */ jsx(Collection.ItemSlot, { scope: props.__scopeSlider, children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n role: \"slider\",\n \"aria-label\": props[\"aria-label\"] || label,\n \"aria-valuemin\": context.min,\n \"aria-valuenow\": value,\n \"aria-valuemax\": context.max,\n \"aria-orientation\": context.orientation,\n \"data-orientation\": context.orientation,\n \"data-disabled\": context.disabled ? \"\" : void 0,\n tabIndex: context.disabled ? void 0 : 0,\n ...thumbProps,\n ref: composedRefs,\n style: value === void 0 ? { display: \"none\" } : props.style,\n onFocus: composeEventHandlers(props.onFocus, () => {\n context.valueIndexToChangeRef.current = index;\n })\n }\n ) }),\n isFormControl && /* @__PURE__ */ jsx(\n BubbleInput,\n {\n name: name ?? (context.name ? context.name + (context.values.length > 1 ? \"[]\" : \"\") : void 0),\n form: context.form,\n value\n },\n index\n )\n ]\n }\n );\n }\n);\nSliderThumb.displayName = THUMB_NAME;\nvar BubbleInput = (props) => {\n const { value, ...inputProps } = props;\n const ref = React.useRef(null);\n const prevValue = usePrevious(value);\n React.useEffect(() => {\n const input = ref.current;\n const inputProto = window.HTMLInputElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(inputProto, \"value\");\n const setValue = descriptor.set;\n if (prevValue !== value && setValue) {\n const event = new Event(\"input\", { bubbles: true });\n setValue.call(input, value);\n input.dispatchEvent(event);\n }\n }, [prevValue, value]);\n return /* @__PURE__ */ jsx(\"input\", { style: { display: \"none\" }, ...inputProps, ref, defaultValue: value });\n};\nfunction getNextSortedValues(prevValues = [], nextValue, atIndex) {\n const nextValues = [...prevValues];\n nextValues[atIndex] = nextValue;\n return nextValues.sort((a, b) => a - b);\n}\nfunction convertValueToPercentage(value, min, max) {\n const maxSteps = max - min;\n const percentPerStep = 100 / maxSteps;\n const percentage = percentPerStep * (value - min);\n return clamp(percentage, [0, 100]);\n}\nfunction getLabel(index, totalValues) {\n if (totalValues > 2) {\n return `Value ${index + 1} of ${totalValues}`;\n } else if (totalValues === 2) {\n return [\"Minimum\", \"Maximum\"][index];\n } else {\n return void 0;\n }\n}\nfunction getClosestValueIndex(values, nextValue) {\n if (values.length === 1) return 0;\n const distances = values.map((value) => Math.abs(value - nextValue));\n const closestDistance = Math.min(...distances);\n return distances.indexOf(closestDistance);\n}\nfunction getThumbInBoundsOffset(width, left, direction) {\n const halfWidth = width / 2;\n const halfPercent = 50;\n const offset = linearScale([0, halfPercent], [0, halfWidth]);\n return (halfWidth - offset(left) * direction) * direction;\n}\nfunction getStepsBetweenValues(values) {\n return values.slice(0, -1).map((value, index) => values[index + 1] - value);\n}\nfunction hasMinStepsBetweenValues(values, minStepsBetweenValues) {\n if (minStepsBetweenValues > 0) {\n const stepsBetweenValues = getStepsBetweenValues(values);\n const actualMinStepsBetweenValues = Math.min(...stepsBetweenValues);\n return actualMinStepsBetweenValues >= minStepsBetweenValues;\n }\n return true;\n}\nfunction linearScale(input, output) {\n return (value) => {\n if (input[0] === input[1] || output[0] === output[1]) return output[0];\n const ratio = (output[1] - output[0]) / (input[1] - input[0]);\n return output[0] + ratio * (value - input[0]);\n };\n}\nfunction getDecimalCount(value) {\n return (String(value).split(\".\")[1] || \"\").length;\n}\nfunction roundValue(value, decimalCount) {\n const rounder = Math.pow(10, decimalCount);\n return Math.round(value * rounder) / rounder;\n}\nvar Root = Slider;\nvar Track = SliderTrack;\nvar Range = SliderRange;\nvar Thumb = SliderThumb;\nexport {\n Range,\n Root,\n Slider,\n SliderRange,\n SliderThumb,\n SliderTrack,\n Thumb,\n Track,\n createSliderScope\n};\n//# sourceMappingURL=index.mjs.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { ForwardedRef, forwardRef, useId } from \"react\";\nimport { Range, Root, Thumb, Track } from \"@radix-ui/react-slider\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./slider.module.scss\";\nconst cx = c.bind(styles);\n\ntype SliderValue = [number] | [number, number];\nexport const SLIDER_ORIENTATION = [\"horizontal\", \"vertical\"] as const;\n\nexport type SliderProps<T extends SliderValue> = {\n [\"data-testid\"]?: string;\n /* The aria-label is set to each thumb. */\n [\"aria-label\"]: string;\n /* Human-readable text alternative for aria-valuenow (aria-valuenow is set to `value` by radix under the hood). Use when the numeric value alone doesn't clearly represent the actual value. */\n [\"aria-valuetext\"]: string;\n className?: string;\n /**\n * The value of the slider when initially rendered. Use when you do not need to control the state of the slider. \n `T = <T extends [number] | [number, number]>`\n */\n defaultValue?: T;\n /* The id of the slider. */\n id?: string;\n /* The maximum value for the range. */\n max?: number;\n /* The minimum value for the range. */\n min?: number;\n /* The minimum permitted steps between multiple thumbs. */\n minStepsBetweenThumbs?: number;\n /* The name of the slider. Submitted with its owning form as part of a name/value pair. */\n name?: string;\n /* The orientation of the slider. */\n orientation?: (typeof SLIDER_ORIENTATION)[number];\n /* The stepping interval. */\n step?: number;\n /* The controlled value of the slider. Must be used in conjunction with onValueChange. */\n value?: T;\n /* Event handler called when the value changes. */\n onValueChange?(value: T): void;\n};\n\nconst rootClassName = \"purpur-slider\";\n\nconst getKey = (index: number) => String(index);\n\nconst SliderComponent = <T extends SliderValue>(\n {\n \"aria-label\": ariaLabel,\n \"aria-valuetext\": ariaValueText,\n className,\n defaultValue,\n id,\n value,\n ...props\n }: SliderProps<T>,\n ref: ForwardedRef<HTMLButtonElement>\n) => {\n const internalId = useId();\n const internalValue = value || defaultValue;\n\n return (\n <Root\n {...props}\n id={id || internalId}\n ref={ref}\n className={cx(rootClassName, className)}\n value={value}\n defaultValue={defaultValue}\n >\n <Track className={cx(`${rootClassName}__track`)}>\n <Range className={cx(`${rootClassName}__range`)} />\n </Track>\n {internalValue?.map((_, index) => (\n <Thumb\n key={getKey(index)}\n className={cx(`${rootClassName}__thumb`)}\n aria-label={ariaLabel}\n aria-valuetext={ariaValueText}\n />\n ))}\n </Root>\n );\n};\n\nexport const Slider = forwardRef(SliderComponent);\n\nSlider.displayName = \"Slider\";\n"],"names":["clamp","value","min","max","composeEventHandlers","originalEventHandler","ourEventHandler","checkForDefaultPrevented","event","setRef","ref","composeRefs","refs","node","hasCleanup","cleanups","cleanup","i","useComposedRefs","React","createContextScope","scopeName","createContextScopeDeps","defaultContexts","createContext3","rootComponentName","defaultContext","BaseContext","index","Provider","props","scope","children","context","Context","_a","jsx","useContext2","consumerName","createScope","scopeContexts","contexts","composeContextScopes","scopes","baseScope","scopeHooks","createScope2","overrideScopes","nextScopes","nextScopes2","useScope","currentScope","useCallbackRef","callback","callbackRef","args","useControllableState","prop","defaultProp","onChange","uncontrolledProp","setUncontrolledProp","useUncontrolledState","isControlled","handleChange","setValue","nextValue","value2","uncontrolledState","prevValueRef","DirectionContext","useDirection","localDir","globalDir","usePrevious","useLayoutEffect2","useSize","element","size","setSize","useLayoutEffect","resizeObserver","entries","entry","width","height","borderSizeEntry","borderSize","Slot","forwardedRef","slotProps","childrenArray","slottable","isSlottable","newElement","newChildren","child","SlotClone","childrenRef","getElementRef","props2","mergeProps","Slottable","Fragment2","childProps","overrideProps","propName","slotPropValue","childPropValue","getter","mayWarn","_b","NODES","Primitive","primitive","Node","asChild","primitiveProps","Comp","createCollection","name","PROVIDER_NAME","createCollectionContext","createCollectionScope","CollectionProviderImpl","useCollectionContext","CollectionProvider","itemMap","COLLECTION_SLOT_NAME","CollectionSlot","composedRefs","ITEM_SLOT_NAME","ITEM_DATA_ATTR","CollectionItemSlot","itemData","useCollection","collectionNode","orderedNodes","a","b","PAGE_KEYS","ARROW_KEYS","BACK_KEYS","SLIDER_NAME","Collection","createSliderContext","createSliderScope","SliderProvider","useSliderContext","Slider","step","orientation","disabled","minStepsBetweenThumbs","defaultValue","onValueChange","onValueCommit","inverted","form","sliderProps","thumbRefs","valueIndexToChangeRef","SliderOrientation","SliderHorizontal","SliderVertical","values","setValues","valuesBeforeSlideStartRef","handleSlideStart","closestIndex","getClosestValueIndex","updateValues","handleSlideMove","handleSlideEnd","prevValue","atIndex","commit","decimalCount","getDecimalCount","snapToStep","roundValue","prevValues","nextValues","getNextSortedValues","hasMinStepsBetweenValues","hasChanged","stepDirection","multiplier","stepInDirection","SliderOrientationProvider","useSliderOrientationContext","dir","onSlideStart","onSlideMove","onSlideEnd","onStepKeyDown","slider","setSlider","rectRef","direction","isDirectionLTR","isSlidingFromLeft","getValueFromPointer","pointerPosition","rect","input","linearScale","SliderImpl","isBackKey","sliderRef","isSlidingFromBottom","__scopeSlider","onHomeKeyDown","onEndKeyDown","target","TRACK_NAME","SliderTrack","trackProps","RANGE_NAME","SliderRange","rangeProps","valuesCount","percentages","convertValueToPercentage","offsetStart","offsetEnd","THUMB_NAME","SliderThumb","getItems","thumb","setThumb","item","SliderThumbImpl","thumbProps","isFormControl","percent","label","getLabel","orientationSize","thumbInBoundsOffset","getThumbInBoundsOffset","jsxs","BubbleInput","inputProps","inputProto","percentage","totalValues","distances","closestDistance","left","halfWidth","offset","getStepsBetweenValues","minStepsBetweenValues","stepsBetweenValues","output","ratio","rounder","Root","Track","Range","Thumb","hasOwn","classNames","classes","arg","appendClass","parseValue","key","newClass","module","cx","c","styles","SLIDER_ORIENTATION","rootClassName","getKey","SliderComponent","ariaLabel","ariaValueText","className","id","internalId","useId","internalValue","_","forwardRef"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]}