@drjoshcsimmons/scl 0.1.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.
Files changed (301) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +73 -0
  3. package/dist/components/ui/accordion/accordion.d.ts +8 -0
  4. package/dist/components/ui/accordion/accordion.d.ts.map +1 -0
  5. package/dist/components/ui/accordion/index.d.ts +2 -0
  6. package/dist/components/ui/accordion/index.d.ts.map +1 -0
  7. package/dist/components/ui/alert/alert.d.ts +9 -0
  8. package/dist/components/ui/alert/alert.d.ts.map +1 -0
  9. package/dist/components/ui/alert/index.d.ts +2 -0
  10. package/dist/components/ui/alert/index.d.ts.map +1 -0
  11. package/dist/components/ui/alert-dialog/alert-dialog.d.ts +21 -0
  12. package/dist/components/ui/alert-dialog/alert-dialog.d.ts.map +1 -0
  13. package/dist/components/ui/alert-dialog/index.d.ts +2 -0
  14. package/dist/components/ui/alert-dialog/index.d.ts.map +1 -0
  15. package/dist/components/ui/avatar/avatar.d.ts +7 -0
  16. package/dist/components/ui/avatar/avatar.d.ts.map +1 -0
  17. package/dist/components/ui/avatar/index.d.ts +2 -0
  18. package/dist/components/ui/avatar/index.d.ts.map +1 -0
  19. package/dist/components/ui/badge/badge.d.ts +10 -0
  20. package/dist/components/ui/badge/badge.d.ts.map +1 -0
  21. package/dist/components/ui/badge/index.d.ts +2 -0
  22. package/dist/components/ui/badge/index.d.ts.map +1 -0
  23. package/dist/components/ui/button/button.d.ts +12 -0
  24. package/dist/components/ui/button/button.d.ts.map +1 -0
  25. package/dist/components/ui/button/index.d.ts +2 -0
  26. package/dist/components/ui/button/index.d.ts.map +1 -0
  27. package/dist/components/ui/card/card.d.ts +9 -0
  28. package/dist/components/ui/card/card.d.ts.map +1 -0
  29. package/dist/components/ui/card/index.d.ts +2 -0
  30. package/dist/components/ui/card/index.d.ts.map +1 -0
  31. package/dist/components/ui/checkbox/checkbox.d.ts +5 -0
  32. package/dist/components/ui/checkbox/checkbox.d.ts.map +1 -0
  33. package/dist/components/ui/checkbox/index.d.ts +2 -0
  34. package/dist/components/ui/checkbox/index.d.ts.map +1 -0
  35. package/dist/components/ui/collapsible/collapsible.d.ts +6 -0
  36. package/dist/components/ui/collapsible/collapsible.d.ts.map +1 -0
  37. package/dist/components/ui/collapsible/index.d.ts +2 -0
  38. package/dist/components/ui/collapsible/index.d.ts.map +1 -0
  39. package/dist/components/ui/dialog/dialog.d.ts +20 -0
  40. package/dist/components/ui/dialog/dialog.d.ts.map +1 -0
  41. package/dist/components/ui/dialog/index.d.ts +2 -0
  42. package/dist/components/ui/dialog/index.d.ts.map +1 -0
  43. package/dist/components/ui/dithered-image/dithered-image.d.ts +17 -0
  44. package/dist/components/ui/dithered-image/dithered-image.d.ts.map +1 -0
  45. package/dist/components/ui/dithered-image/index.d.ts +3 -0
  46. package/dist/components/ui/dithered-image/index.d.ts.map +1 -0
  47. package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts +28 -0
  48. package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts.map +1 -0
  49. package/dist/components/ui/dropdown-menu/index.d.ts +2 -0
  50. package/dist/components/ui/dropdown-menu/index.d.ts.map +1 -0
  51. package/dist/components/ui/input/index.d.ts +2 -0
  52. package/dist/components/ui/input/index.d.ts.map +1 -0
  53. package/dist/components/ui/input/input.d.ts +5 -0
  54. package/dist/components/ui/input/input.d.ts.map +1 -0
  55. package/dist/components/ui/label/index.d.ts +2 -0
  56. package/dist/components/ui/label/index.d.ts.map +1 -0
  57. package/dist/components/ui/label/label.d.ts +6 -0
  58. package/dist/components/ui/label/label.d.ts.map +1 -0
  59. package/dist/components/ui/popover/index.d.ts +2 -0
  60. package/dist/components/ui/popover/index.d.ts.map +1 -0
  61. package/dist/components/ui/popover/popover.d.ts +8 -0
  62. package/dist/components/ui/popover/popover.d.ts.map +1 -0
  63. package/dist/components/ui/progress/index.d.ts +2 -0
  64. package/dist/components/ui/progress/index.d.ts.map +1 -0
  65. package/dist/components/ui/progress/progress.d.ts +19 -0
  66. package/dist/components/ui/progress/progress.d.ts.map +1 -0
  67. package/dist/components/ui/radio-group/index.d.ts +2 -0
  68. package/dist/components/ui/radio-group/index.d.ts.map +1 -0
  69. package/dist/components/ui/radio-group/radio-group.d.ts +6 -0
  70. package/dist/components/ui/radio-group/radio-group.d.ts.map +1 -0
  71. package/dist/components/ui/scroll-area/index.d.ts +2 -0
  72. package/dist/components/ui/scroll-area/index.d.ts.map +1 -0
  73. package/dist/components/ui/scroll-area/scroll-area.d.ts +6 -0
  74. package/dist/components/ui/scroll-area/scroll-area.d.ts.map +1 -0
  75. package/dist/components/ui/select/index.d.ts +2 -0
  76. package/dist/components/ui/select/index.d.ts.map +1 -0
  77. package/dist/components/ui/select/select.d.ts +14 -0
  78. package/dist/components/ui/select/select.d.ts.map +1 -0
  79. package/dist/components/ui/separator/index.d.ts +2 -0
  80. package/dist/components/ui/separator/index.d.ts.map +1 -0
  81. package/dist/components/ui/separator/separator.d.ts +5 -0
  82. package/dist/components/ui/separator/separator.d.ts.map +1 -0
  83. package/dist/components/ui/sheet/index.d.ts +2 -0
  84. package/dist/components/ui/sheet/index.d.ts.map +1 -0
  85. package/dist/components/ui/sheet/sheet.d.ts +26 -0
  86. package/dist/components/ui/sheet/sheet.d.ts.map +1 -0
  87. package/dist/components/ui/skeleton/index.d.ts +2 -0
  88. package/dist/components/ui/skeleton/index.d.ts.map +1 -0
  89. package/dist/components/ui/skeleton/skeleton.d.ts +3 -0
  90. package/dist/components/ui/skeleton/skeleton.d.ts.map +1 -0
  91. package/dist/components/ui/slider/index.d.ts +2 -0
  92. package/dist/components/ui/slider/index.d.ts.map +1 -0
  93. package/dist/components/ui/slider/slider.d.ts +5 -0
  94. package/dist/components/ui/slider/slider.d.ts.map +1 -0
  95. package/dist/components/ui/statusline/index.d.ts +2 -0
  96. package/dist/components/ui/statusline/index.d.ts.map +1 -0
  97. package/dist/components/ui/statusline/statusline.d.ts +40 -0
  98. package/dist/components/ui/statusline/statusline.d.ts.map +1 -0
  99. package/dist/components/ui/switch/index.d.ts +2 -0
  100. package/dist/components/ui/switch/index.d.ts.map +1 -0
  101. package/dist/components/ui/switch/switch.d.ts +5 -0
  102. package/dist/components/ui/switch/switch.d.ts.map +1 -0
  103. package/dist/components/ui/table/index.d.ts +2 -0
  104. package/dist/components/ui/table/index.d.ts.map +1 -0
  105. package/dist/components/ui/table/table.d.ts +11 -0
  106. package/dist/components/ui/table/table.d.ts.map +1 -0
  107. package/dist/components/ui/tabs/index.d.ts +2 -0
  108. package/dist/components/ui/tabs/index.d.ts.map +1 -0
  109. package/dist/components/ui/tabs/tabs.d.ts +8 -0
  110. package/dist/components/ui/tabs/tabs.d.ts.map +1 -0
  111. package/dist/components/ui/terminal-textarea/index.d.ts +2 -0
  112. package/dist/components/ui/terminal-textarea/index.d.ts.map +1 -0
  113. package/dist/components/ui/terminal-textarea/terminal-textarea.d.ts +27 -0
  114. package/dist/components/ui/terminal-textarea/terminal-textarea.d.ts.map +1 -0
  115. package/dist/components/ui/textarea/index.d.ts +2 -0
  116. package/dist/components/ui/textarea/index.d.ts.map +1 -0
  117. package/dist/components/ui/textarea/textarea.d.ts +5 -0
  118. package/dist/components/ui/textarea/textarea.d.ts.map +1 -0
  119. package/dist/components/ui/toggle/index.d.ts +2 -0
  120. package/dist/components/ui/toggle/index.d.ts.map +1 -0
  121. package/dist/components/ui/toggle/toggle.d.ts +13 -0
  122. package/dist/components/ui/toggle/toggle.d.ts.map +1 -0
  123. package/dist/components/ui/tooltip/index.d.ts +2 -0
  124. package/dist/components/ui/tooltip/index.d.ts.map +1 -0
  125. package/dist/components/ui/tooltip/tooltip.d.ts +11 -0
  126. package/dist/components/ui/tooltip/tooltip.d.ts.map +1 -0
  127. package/dist/index.d.ts +34 -0
  128. package/dist/index.d.ts.map +1 -0
  129. package/dist/index.js +165 -0
  130. package/dist/index10.js +61 -0
  131. package/dist/index100.js +32 -0
  132. package/dist/index101.js +17 -0
  133. package/dist/index102.js +137 -0
  134. package/dist/index103.js +52 -0
  135. package/dist/index104.js +11 -0
  136. package/dist/index105.js +6 -0
  137. package/dist/index106.js +183 -0
  138. package/dist/index107.js +652 -0
  139. package/dist/index108.js +109 -0
  140. package/dist/index109.js +93 -0
  141. package/dist/index11.js +27 -0
  142. package/dist/index110.js +69 -0
  143. package/dist/index111.js +161 -0
  144. package/dist/index112.js +399 -0
  145. package/dist/index113.js +1682 -0
  146. package/dist/index114.js +280 -0
  147. package/dist/index115.js +134 -0
  148. package/dist/index116.js +34 -0
  149. package/dist/index117.js +1613 -0
  150. package/dist/index118.js +300 -0
  151. package/dist/index119.js +637 -0
  152. package/dist/index12.js +7 -0
  153. package/dist/index120.js +146 -0
  154. package/dist/index121.js +23 -0
  155. package/dist/index122.js +11 -0
  156. package/dist/index123.js +40 -0
  157. package/dist/index124.js +20 -0
  158. package/dist/index125.js +8 -0
  159. package/dist/index126.js +14 -0
  160. package/dist/index127.js +208 -0
  161. package/dist/index128.js +24 -0
  162. package/dist/index129.js +402 -0
  163. package/dist/index13.js +100 -0
  164. package/dist/index130.js +1308 -0
  165. package/dist/index131.js +620 -0
  166. package/dist/index132.js +4 -0
  167. package/dist/index133.js +55 -0
  168. package/dist/index134.js +67 -0
  169. package/dist/index135.js +27 -0
  170. package/dist/index136.js +31 -0
  171. package/dist/index137.js +7 -0
  172. package/dist/index138.js +4 -0
  173. package/dist/index139.js +4 -0
  174. package/dist/index14.js +226 -0
  175. package/dist/index140.js +7 -0
  176. package/dist/index141.js +5 -0
  177. package/dist/index142.js +26 -0
  178. package/dist/index143.js +115 -0
  179. package/dist/index144.js +18 -0
  180. package/dist/index145.js +527 -0
  181. package/dist/index146.js +130 -0
  182. package/dist/index147.js +136 -0
  183. package/dist/index148.js +67 -0
  184. package/dist/index149.js +71 -0
  185. package/dist/index15.js +146 -0
  186. package/dist/index150.js +11 -0
  187. package/dist/index151.js +16 -0
  188. package/dist/index152.js +68 -0
  189. package/dist/index153.js +6 -0
  190. package/dist/index154.js +25 -0
  191. package/dist/index155.js +25 -0
  192. package/dist/index156.js +15 -0
  193. package/dist/index157.js +30 -0
  194. package/dist/index158.js +7 -0
  195. package/dist/index16.js +21 -0
  196. package/dist/index17.js +19 -0
  197. package/dist/index18.js +24 -0
  198. package/dist/index19.js +58 -0
  199. package/dist/index2.js +8 -0
  200. package/dist/index20.js +31 -0
  201. package/dist/index21.js +38 -0
  202. package/dist/index22.js +123 -0
  203. package/dist/index23.js +24 -0
  204. package/dist/index24.js +72 -0
  205. package/dist/index25.js +17 -0
  206. package/dist/index26.js +34 -0
  207. package/dist/index27.js +81 -0
  208. package/dist/index28.js +27 -0
  209. package/dist/index29.js +90 -0
  210. package/dist/index3.js +22 -0
  211. package/dist/index30.js +46 -0
  212. package/dist/index31.js +234 -0
  213. package/dist/index32.js +20 -0
  214. package/dist/index33.js +37 -0
  215. package/dist/index34.js +25 -0
  216. package/dist/index35.js +105 -0
  217. package/dist/index36.js +68 -0
  218. package/dist/index37.js +51 -0
  219. package/dist/index38.js +102 -0
  220. package/dist/index39.js +13 -0
  221. package/dist/index4.js +46 -0
  222. package/dist/index40.js +17 -0
  223. package/dist/index41.js +2265 -0
  224. package/dist/index42.js +35 -0
  225. package/dist/index43.js +20 -0
  226. package/dist/index44.js +239 -0
  227. package/dist/index45.js +13 -0
  228. package/dist/index46.js +75 -0
  229. package/dist/index47.js +251 -0
  230. package/dist/index48.js +11 -0
  231. package/dist/index49.js +338 -0
  232. package/dist/index5.js +51 -0
  233. package/dist/index50.js +62 -0
  234. package/dist/index51.js +243 -0
  235. package/dist/index52.js +862 -0
  236. package/dist/index53.js +11 -0
  237. package/dist/index54.js +120 -0
  238. package/dist/index55.js +227 -0
  239. package/dist/index56.js +13 -0
  240. package/dist/index57.js +13 -0
  241. package/dist/index58.js +238 -0
  242. package/dist/index59.js +262 -0
  243. package/dist/index6.js +51 -0
  244. package/dist/index60.js +14 -0
  245. package/dist/index61.js +24 -0
  246. package/dist/index62.js +532 -0
  247. package/dist/index63.js +6157 -0
  248. package/dist/index64.js +2635 -0
  249. package/dist/index65.js +300 -0
  250. package/dist/index66.js +674 -0
  251. package/dist/index67.js +832 -0
  252. package/dist/index68.js +27 -0
  253. package/dist/index69.js +330 -0
  254. package/dist/index7.js +42 -0
  255. package/dist/index70.js +4901 -0
  256. package/dist/index71.js +831 -0
  257. package/dist/index72.js +1260 -0
  258. package/dist/index73.js +536 -0
  259. package/dist/index74.js +127 -0
  260. package/dist/index75.js +163 -0
  261. package/dist/index76.js +33 -0
  262. package/dist/index77.js +437 -0
  263. package/dist/index78.js +132 -0
  264. package/dist/index79.js +83 -0
  265. package/dist/index8.js +31 -0
  266. package/dist/index80.js +70 -0
  267. package/dist/index81.js +48 -0
  268. package/dist/index82.js +29 -0
  269. package/dist/index83.js +9 -0
  270. package/dist/index84.js +54 -0
  271. package/dist/index85.js +36 -0
  272. package/dist/index86.js +13 -0
  273. package/dist/index87.js +10 -0
  274. package/dist/index88.js +32 -0
  275. package/dist/index89.js +57 -0
  276. package/dist/index9.js +54 -0
  277. package/dist/index90.js +13 -0
  278. package/dist/index91.js +6 -0
  279. package/dist/index92.js +15 -0
  280. package/dist/index93.js +8 -0
  281. package/dist/index94.js +27 -0
  282. package/dist/index95.js +71 -0
  283. package/dist/index96.js +127 -0
  284. package/dist/index97.js +221 -0
  285. package/dist/index98.js +16 -0
  286. package/dist/index99.js +56 -0
  287. package/dist/lib/utils.d.ts +14 -0
  288. package/dist/lib/utils.d.ts.map +1 -0
  289. package/dist/tokens/animations.d.ts +174 -0
  290. package/dist/tokens/animations.d.ts.map +1 -0
  291. package/dist/tokens/colors.d.ts +92 -0
  292. package/dist/tokens/colors.d.ts.map +1 -0
  293. package/dist/tokens/index.d.ts +403 -0
  294. package/dist/tokens/index.d.ts.map +1 -0
  295. package/dist/tokens/shadows.d.ts +15 -0
  296. package/dist/tokens/shadows.d.ts.map +1 -0
  297. package/dist/tokens/spacing.d.ts +55 -0
  298. package/dist/tokens/spacing.d.ts.map +1 -0
  299. package/dist/tokens/typography.d.ts +80 -0
  300. package/dist/tokens/typography.d.ts.map +1 -0
  301. package/package.json +128 -0
@@ -0,0 +1,163 @@
1
+ import * as v from "react";
2
+ import { composeEventHandlers as g } from "./index83.js";
3
+ import { createContextScope as x } from "./index80.js";
4
+ import { createRovingFocusGroupScope as C, Root as E, Item as F } from "./index106.js";
5
+ import { Presence as w } from "./index95.js";
6
+ import { Primitive as b } from "./index85.js";
7
+ import { useDirection as D } from "./index87.js";
8
+ import { useControllableState as V } from "./index84.js";
9
+ import { useId as G } from "./index86.js";
10
+ import { jsx as l } from "react/jsx-runtime";
11
+ var p = "Tabs", [L] = x(p, [
12
+ C
13
+ ]), h = C(), [$, T] = L(p), I = v.forwardRef(
14
+ (e, r) => {
15
+ const {
16
+ __scopeTabs: s,
17
+ value: t,
18
+ onValueChange: n,
19
+ defaultValue: c,
20
+ orientation: o = "horizontal",
21
+ dir: d,
22
+ activationMode: f = "automatic",
23
+ ...m
24
+ } = e, i = D(d), [a, u] = V({
25
+ prop: t,
26
+ onChange: n,
27
+ defaultProp: c ?? "",
28
+ caller: p
29
+ });
30
+ return /* @__PURE__ */ l(
31
+ $,
32
+ {
33
+ scope: s,
34
+ baseId: G(),
35
+ value: a,
36
+ onValueChange: u,
37
+ orientation: o,
38
+ dir: i,
39
+ activationMode: f,
40
+ children: /* @__PURE__ */ l(
41
+ b.div,
42
+ {
43
+ dir: i,
44
+ "data-orientation": o,
45
+ ...m,
46
+ ref: r
47
+ }
48
+ )
49
+ }
50
+ );
51
+ }
52
+ );
53
+ I.displayName = p;
54
+ var R = "TabsList", _ = v.forwardRef(
55
+ (e, r) => {
56
+ const { __scopeTabs: s, loop: t = !0, ...n } = e, c = T(R, s), o = h(s);
57
+ return /* @__PURE__ */ l(
58
+ E,
59
+ {
60
+ asChild: !0,
61
+ ...o,
62
+ orientation: c.orientation,
63
+ dir: c.dir,
64
+ loop: t,
65
+ children: /* @__PURE__ */ l(
66
+ b.div,
67
+ {
68
+ role: "tablist",
69
+ "aria-orientation": c.orientation,
70
+ ...n,
71
+ ref: r
72
+ }
73
+ )
74
+ }
75
+ );
76
+ }
77
+ );
78
+ _.displayName = R;
79
+ var y = "TabsTrigger", A = v.forwardRef(
80
+ (e, r) => {
81
+ const { __scopeTabs: s, value: t, disabled: n = !1, ...c } = e, o = T(y, s), d = h(s), f = P(o.baseId, t), m = S(o.baseId, t), i = t === o.value;
82
+ return /* @__PURE__ */ l(
83
+ F,
84
+ {
85
+ asChild: !0,
86
+ ...d,
87
+ focusable: !n,
88
+ active: i,
89
+ children: /* @__PURE__ */ l(
90
+ b.button,
91
+ {
92
+ type: "button",
93
+ role: "tab",
94
+ "aria-selected": i,
95
+ "aria-controls": m,
96
+ "data-state": i ? "active" : "inactive",
97
+ "data-disabled": n ? "" : void 0,
98
+ disabled: n,
99
+ id: f,
100
+ ...c,
101
+ ref: r,
102
+ onMouseDown: g(e.onMouseDown, (a) => {
103
+ !n && a.button === 0 && a.ctrlKey === !1 ? o.onValueChange(t) : a.preventDefault();
104
+ }),
105
+ onKeyDown: g(e.onKeyDown, (a) => {
106
+ [" ", "Enter"].includes(a.key) && o.onValueChange(t);
107
+ }),
108
+ onFocus: g(e.onFocus, () => {
109
+ const a = o.activationMode !== "manual";
110
+ !i && !n && a && o.onValueChange(t);
111
+ })
112
+ }
113
+ )
114
+ }
115
+ );
116
+ }
117
+ );
118
+ A.displayName = y;
119
+ var M = "TabsContent", N = v.forwardRef(
120
+ (e, r) => {
121
+ const { __scopeTabs: s, value: t, forceMount: n, children: c, ...o } = e, d = T(M, s), f = P(d.baseId, t), m = S(d.baseId, t), i = t === d.value, a = v.useRef(i);
122
+ return v.useEffect(() => {
123
+ const u = requestAnimationFrame(() => a.current = !1);
124
+ return () => cancelAnimationFrame(u);
125
+ }, []), /* @__PURE__ */ l(w, { present: n || i, children: ({ present: u }) => /* @__PURE__ */ l(
126
+ b.div,
127
+ {
128
+ "data-state": i ? "active" : "inactive",
129
+ "data-orientation": d.orientation,
130
+ role: "tabpanel",
131
+ "aria-labelledby": f,
132
+ hidden: !u,
133
+ id: m,
134
+ tabIndex: 0,
135
+ ...o,
136
+ ref: r,
137
+ style: {
138
+ ...e.style,
139
+ animationDuration: a.current ? "0s" : void 0
140
+ },
141
+ children: u && c
142
+ }
143
+ ) });
144
+ }
145
+ );
146
+ N.displayName = M;
147
+ function P(e, r) {
148
+ return `${e}-trigger-${r}`;
149
+ }
150
+ function S(e, r) {
151
+ return `${e}-content-${r}`;
152
+ }
153
+ var Q = I, U = _, W = A, X = N;
154
+ export {
155
+ X as Content,
156
+ U as List,
157
+ Q as Root,
158
+ I as Tabs,
159
+ N as TabsContent,
160
+ _ as TabsList,
161
+ A as TabsTrigger,
162
+ W as Trigger
163
+ };
@@ -0,0 +1,33 @@
1
+ import * as f from "react";
2
+ import { composeEventHandlers as m } from "./index83.js";
3
+ import { useControllableState as p } from "./index84.js";
4
+ import { Primitive as b } from "./index85.js";
5
+ import { jsx as c } from "react/jsx-runtime";
6
+ var r = "Toggle", t = f.forwardRef((e, a) => {
7
+ const { pressed: s, defaultPressed: d, onPressedChange: i, ...l } = e, [o, n] = p({
8
+ prop: s,
9
+ onChange: i,
10
+ defaultProp: d ?? !1,
11
+ caller: r
12
+ });
13
+ return /* @__PURE__ */ c(
14
+ b.button,
15
+ {
16
+ type: "button",
17
+ "aria-pressed": o,
18
+ "data-state": o ? "on" : "off",
19
+ "data-disabled": e.disabled ? "" : void 0,
20
+ ...l,
21
+ ref: a,
22
+ onClick: m(e.onClick, () => {
23
+ e.disabled || n(!o);
24
+ })
25
+ }
26
+ );
27
+ });
28
+ t.displayName = r;
29
+ var C = t;
30
+ export {
31
+ C as Root,
32
+ t as Toggle
33
+ };
@@ -0,0 +1,437 @@
1
+ import * as d from "react";
2
+ import { clamp as $ } from "./index105.js";
3
+ import { composeEventHandlers as C } from "./index83.js";
4
+ import { useComposedRefs as M } from "./index82.js";
5
+ import { createContextScope as ce } from "./index80.js";
6
+ import { useControllableState as le } from "./index84.js";
7
+ import { useDirection as de } from "./index87.js";
8
+ import { usePrevious as ue } from "./index93.js";
9
+ import { useSize as fe } from "./index94.js";
10
+ import { Primitive as K } from "./index85.js";
11
+ import { createCollection as me } from "./index81.js";
12
+ import { jsx as v, jsxs as pe } from "react/jsx-runtime";
13
+ var j = ["PageUp", "PageDown"], X = ["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"], G = {
14
+ "from-left": ["Home", "PageDown", "ArrowDown", "ArrowLeft"],
15
+ "from-right": ["Home", "PageDown", "ArrowDown", "ArrowRight"],
16
+ "from-bottom": ["Home", "PageDown", "ArrowDown", "ArrowLeft"],
17
+ "from-top": ["Home", "PageDown", "ArrowUp", "ArrowLeft"]
18
+ }, I = "Slider", [z, he, Se] = me(I), [W] = ce(I, [
19
+ Se
20
+ ]), [ge, T] = W(I), q = d.forwardRef(
21
+ (e, t) => {
22
+ const {
23
+ name: o,
24
+ min: n = 0,
25
+ max: a = 100,
26
+ step: c = 1,
27
+ orientation: r = "horizontal",
28
+ disabled: s = !1,
29
+ minStepsBetweenThumbs: l = 0,
30
+ defaultValue: h = [n],
31
+ value: S,
32
+ onValueChange: i = () => {
33
+ },
34
+ onValueCommit: u = () => {
35
+ },
36
+ inverted: w = !1,
37
+ form: P,
38
+ ...g
39
+ } = e, m = d.useRef(/* @__PURE__ */ new Set()), f = d.useRef(0), b = r === "horizontal" ? ve : we, [p = [], A] = le({
40
+ prop: S,
41
+ defaultProp: h,
42
+ onChange: (R) => {
43
+ var E;
44
+ (E = [...m.current][f.current]) == null || E.focus(), i(R);
45
+ }
46
+ }), k = d.useRef(p);
47
+ function H(R) {
48
+ const x = ye(p, R);
49
+ V(R, x);
50
+ }
51
+ function se(R) {
52
+ V(R, f.current);
53
+ }
54
+ function ae() {
55
+ const R = k.current[f.current];
56
+ p[f.current] !== R && u(p);
57
+ }
58
+ function V(R, x, { commit: E } = { commit: !1 }) {
59
+ const F = Ce(c), N = Me(Math.round((R - n) / c) * c + n, F), B = $(N, [n, a]);
60
+ A((_ = []) => {
61
+ const y = Pe(_, B, x);
62
+ if (_e(y, l * c)) {
63
+ f.current = y.indexOf(B);
64
+ const Y = String(y) !== String(_);
65
+ return Y && E && u(y), Y ? y : _;
66
+ } else
67
+ return _;
68
+ });
69
+ }
70
+ return /* @__PURE__ */ v(
71
+ ge,
72
+ {
73
+ scope: e.__scopeSlider,
74
+ name: o,
75
+ disabled: s,
76
+ min: n,
77
+ max: a,
78
+ valueIndexToChangeRef: f,
79
+ thumbs: m.current,
80
+ values: p,
81
+ orientation: r,
82
+ form: P,
83
+ children: /* @__PURE__ */ v(z.Provider, { scope: e.__scopeSlider, children: /* @__PURE__ */ v(z.Slot, { scope: e.__scopeSlider, children: /* @__PURE__ */ v(
84
+ b,
85
+ {
86
+ "aria-disabled": s,
87
+ "data-disabled": s ? "" : void 0,
88
+ ...g,
89
+ ref: t,
90
+ onPointerDown: C(g.onPointerDown, () => {
91
+ s || (k.current = p);
92
+ }),
93
+ min: n,
94
+ max: a,
95
+ inverted: w,
96
+ onSlideStart: s ? void 0 : H,
97
+ onSlideMove: s ? void 0 : se,
98
+ onSlideEnd: s ? void 0 : ae,
99
+ onHomeKeyDown: () => !s && V(n, 0, { commit: !0 }),
100
+ onEndKeyDown: () => !s && V(a, p.length - 1, { commit: !0 }),
101
+ onStepKeyDown: ({ event: R, direction: x }) => {
102
+ if (!s) {
103
+ const N = j.includes(R.key) || R.shiftKey && X.includes(R.key) ? 10 : 1, B = f.current, _ = p[B], y = c * N * x;
104
+ V(_ + y, B, { commit: !0 });
105
+ }
106
+ }
107
+ }
108
+ ) }) })
109
+ }
110
+ );
111
+ }
112
+ );
113
+ q.displayName = I;
114
+ var [J, Q] = W(I, {
115
+ startEdge: "left",
116
+ endEdge: "right",
117
+ size: "width",
118
+ direction: 1
119
+ }), ve = d.forwardRef(
120
+ (e, t) => {
121
+ const {
122
+ min: o,
123
+ max: n,
124
+ dir: a,
125
+ inverted: c,
126
+ onSlideStart: r,
127
+ onSlideMove: s,
128
+ onSlideEnd: l,
129
+ onStepKeyDown: h,
130
+ ...S
131
+ } = e, [i, u] = d.useState(null), w = M(t, (b) => u(b)), P = d.useRef(void 0), g = de(a), m = g === "ltr", f = m && !c || !m && c;
132
+ function D(b) {
133
+ const p = P.current || i.getBoundingClientRect(), A = [0, p.width], H = U(A, f ? [o, n] : [n, o]);
134
+ return P.current = p, H(b - p.left);
135
+ }
136
+ return /* @__PURE__ */ v(
137
+ J,
138
+ {
139
+ scope: e.__scopeSlider,
140
+ startEdge: f ? "left" : "right",
141
+ endEdge: f ? "right" : "left",
142
+ direction: f ? 1 : -1,
143
+ size: "width",
144
+ children: /* @__PURE__ */ v(
145
+ Z,
146
+ {
147
+ dir: g,
148
+ "data-orientation": "horizontal",
149
+ ...S,
150
+ ref: w,
151
+ style: {
152
+ ...S.style,
153
+ "--radix-slider-thumb-transform": "translateX(-50%)"
154
+ },
155
+ onSlideStart: (b) => {
156
+ const p = D(b.clientX);
157
+ r == null || r(p);
158
+ },
159
+ onSlideMove: (b) => {
160
+ const p = D(b.clientX);
161
+ s == null || s(p);
162
+ },
163
+ onSlideEnd: () => {
164
+ P.current = void 0, l == null || l();
165
+ },
166
+ onStepKeyDown: (b) => {
167
+ const A = G[f ? "from-left" : "from-right"].includes(b.key);
168
+ h == null || h({ event: b, direction: A ? -1 : 1 });
169
+ }
170
+ }
171
+ )
172
+ }
173
+ );
174
+ }
175
+ ), we = d.forwardRef(
176
+ (e, t) => {
177
+ const {
178
+ min: o,
179
+ max: n,
180
+ inverted: a,
181
+ onSlideStart: c,
182
+ onSlideMove: r,
183
+ onSlideEnd: s,
184
+ onStepKeyDown: l,
185
+ ...h
186
+ } = e, S = d.useRef(null), i = M(t, S), u = d.useRef(void 0), w = !a;
187
+ function P(g) {
188
+ const m = u.current || S.current.getBoundingClientRect(), f = [0, m.height], b = U(f, w ? [n, o] : [o, n]);
189
+ return u.current = m, b(g - m.top);
190
+ }
191
+ return /* @__PURE__ */ v(
192
+ J,
193
+ {
194
+ scope: e.__scopeSlider,
195
+ startEdge: w ? "bottom" : "top",
196
+ endEdge: w ? "top" : "bottom",
197
+ size: "height",
198
+ direction: w ? 1 : -1,
199
+ children: /* @__PURE__ */ v(
200
+ Z,
201
+ {
202
+ "data-orientation": "vertical",
203
+ ...h,
204
+ ref: i,
205
+ style: {
206
+ ...h.style,
207
+ "--radix-slider-thumb-transform": "translateY(50%)"
208
+ },
209
+ onSlideStart: (g) => {
210
+ const m = P(g.clientY);
211
+ c == null || c(m);
212
+ },
213
+ onSlideMove: (g) => {
214
+ const m = P(g.clientY);
215
+ r == null || r(m);
216
+ },
217
+ onSlideEnd: () => {
218
+ u.current = void 0, s == null || s();
219
+ },
220
+ onStepKeyDown: (g) => {
221
+ const f = G[w ? "from-bottom" : "from-top"].includes(g.key);
222
+ l == null || l({ event: g, direction: f ? -1 : 1 });
223
+ }
224
+ }
225
+ )
226
+ }
227
+ );
228
+ }
229
+ ), Z = d.forwardRef(
230
+ (e, t) => {
231
+ const {
232
+ __scopeSlider: o,
233
+ onSlideStart: n,
234
+ onSlideMove: a,
235
+ onSlideEnd: c,
236
+ onHomeKeyDown: r,
237
+ onEndKeyDown: s,
238
+ onStepKeyDown: l,
239
+ ...h
240
+ } = e, S = T(I, o);
241
+ return /* @__PURE__ */ v(
242
+ K.span,
243
+ {
244
+ ...h,
245
+ ref: t,
246
+ onKeyDown: C(e.onKeyDown, (i) => {
247
+ i.key === "Home" ? (r(i), i.preventDefault()) : i.key === "End" ? (s(i), i.preventDefault()) : j.concat(X).includes(i.key) && (l(i), i.preventDefault());
248
+ }),
249
+ onPointerDown: C(e.onPointerDown, (i) => {
250
+ const u = i.target;
251
+ u.setPointerCapture(i.pointerId), i.preventDefault(), S.thumbs.has(u) ? u.focus() : n(i);
252
+ }),
253
+ onPointerMove: C(e.onPointerMove, (i) => {
254
+ i.target.hasPointerCapture(i.pointerId) && a(i);
255
+ }),
256
+ onPointerUp: C(e.onPointerUp, (i) => {
257
+ const u = i.target;
258
+ u.hasPointerCapture(i.pointerId) && (u.releasePointerCapture(i.pointerId), c(i));
259
+ })
260
+ }
261
+ );
262
+ }
263
+ ), ee = "SliderTrack", te = d.forwardRef(
264
+ (e, t) => {
265
+ const { __scopeSlider: o, ...n } = e, a = T(ee, o);
266
+ return /* @__PURE__ */ v(
267
+ K.span,
268
+ {
269
+ "data-disabled": a.disabled ? "" : void 0,
270
+ "data-orientation": a.orientation,
271
+ ...n,
272
+ ref: t
273
+ }
274
+ );
275
+ }
276
+ );
277
+ te.displayName = ee;
278
+ var L = "SliderRange", ne = d.forwardRef(
279
+ (e, t) => {
280
+ const { __scopeSlider: o, ...n } = e, a = T(L, o), c = Q(L, o), r = d.useRef(null), s = M(t, r), l = a.values.length, h = a.values.map(
281
+ (u) => ie(u, a.min, a.max)
282
+ ), S = l > 1 ? Math.min(...h) : 0, i = 100 - Math.max(...h);
283
+ return /* @__PURE__ */ v(
284
+ K.span,
285
+ {
286
+ "data-orientation": a.orientation,
287
+ "data-disabled": a.disabled ? "" : void 0,
288
+ ...n,
289
+ ref: s,
290
+ style: {
291
+ ...e.style,
292
+ [c.startEdge]: S + "%",
293
+ [c.endEdge]: i + "%"
294
+ }
295
+ }
296
+ );
297
+ }
298
+ );
299
+ ne.displayName = L;
300
+ var O = "SliderThumb", oe = d.forwardRef(
301
+ (e, t) => {
302
+ const o = he(e.__scopeSlider), [n, a] = d.useState(null), c = M(t, (s) => a(s)), r = d.useMemo(
303
+ () => n ? o().findIndex((s) => s.ref.current === n) : -1,
304
+ [o, n]
305
+ );
306
+ return /* @__PURE__ */ v(be, { ...e, ref: c, index: r });
307
+ }
308
+ ), be = d.forwardRef(
309
+ (e, t) => {
310
+ const { __scopeSlider: o, index: n, name: a, ...c } = e, r = T(O, o), s = Q(O, o), [l, h] = d.useState(null), S = M(t, (D) => h(D)), i = l ? r.form || !!l.closest("form") : !0, u = fe(l), w = r.values[n], P = w === void 0 ? 0 : ie(w, r.min, r.max), g = xe(n, r.values.length), m = u == null ? void 0 : u[s.size], f = m ? De(m, P, s.direction) : 0;
311
+ return d.useEffect(() => {
312
+ if (l)
313
+ return r.thumbs.add(l), () => {
314
+ r.thumbs.delete(l);
315
+ };
316
+ }, [l, r.thumbs]), /* @__PURE__ */ pe(
317
+ "span",
318
+ {
319
+ style: {
320
+ transform: "var(--radix-slider-thumb-transform)",
321
+ position: "absolute",
322
+ [s.startEdge]: `calc(${P}% + ${f}px)`
323
+ },
324
+ children: [
325
+ /* @__PURE__ */ v(z.ItemSlot, { scope: e.__scopeSlider, children: /* @__PURE__ */ v(
326
+ K.span,
327
+ {
328
+ role: "slider",
329
+ "aria-label": e["aria-label"] || g,
330
+ "aria-valuemin": r.min,
331
+ "aria-valuenow": w,
332
+ "aria-valuemax": r.max,
333
+ "aria-orientation": r.orientation,
334
+ "data-orientation": r.orientation,
335
+ "data-disabled": r.disabled ? "" : void 0,
336
+ tabIndex: r.disabled ? void 0 : 0,
337
+ ...c,
338
+ ref: S,
339
+ style: w === void 0 ? { display: "none" } : e.style,
340
+ onFocus: C(e.onFocus, () => {
341
+ r.valueIndexToChangeRef.current = n;
342
+ })
343
+ }
344
+ ) }),
345
+ i && /* @__PURE__ */ v(
346
+ re,
347
+ {
348
+ name: a ?? (r.name ? r.name + (r.values.length > 1 ? "[]" : "") : void 0),
349
+ form: r.form,
350
+ value: w
351
+ },
352
+ n
353
+ )
354
+ ]
355
+ }
356
+ );
357
+ }
358
+ );
359
+ oe.displayName = O;
360
+ var Re = "RadioBubbleInput", re = d.forwardRef(
361
+ ({ __scopeSlider: e, value: t, ...o }, n) => {
362
+ const a = d.useRef(null), c = M(a, n), r = ue(t);
363
+ return d.useEffect(() => {
364
+ const s = a.current;
365
+ if (!s) return;
366
+ const l = window.HTMLInputElement.prototype, S = Object.getOwnPropertyDescriptor(l, "value").set;
367
+ if (r !== t && S) {
368
+ const i = new Event("input", { bubbles: !0 });
369
+ S.call(s, t), s.dispatchEvent(i);
370
+ }
371
+ }, [r, t]), /* @__PURE__ */ v(
372
+ K.input,
373
+ {
374
+ style: { display: "none" },
375
+ ...o,
376
+ ref: c,
377
+ defaultValue: t
378
+ }
379
+ );
380
+ }
381
+ );
382
+ re.displayName = Re;
383
+ function Pe(e = [], t, o) {
384
+ const n = [...e];
385
+ return n[o] = t, n.sort((a, c) => a - c);
386
+ }
387
+ function ie(e, t, o) {
388
+ const c = 100 / (o - t) * (e - t);
389
+ return $(c, [0, 100]);
390
+ }
391
+ function xe(e, t) {
392
+ return t > 2 ? `Value ${e + 1} of ${t}` : t === 2 ? ["Minimum", "Maximum"][e] : void 0;
393
+ }
394
+ function ye(e, t) {
395
+ if (e.length === 1) return 0;
396
+ const o = e.map((a) => Math.abs(a - t)), n = Math.min(...o);
397
+ return o.indexOf(n);
398
+ }
399
+ function De(e, t, o) {
400
+ const n = e / 2, c = U([0, 50], [0, n]);
401
+ return (n - c(t) * o) * o;
402
+ }
403
+ function Ee(e) {
404
+ return e.slice(0, -1).map((t, o) => e[o + 1] - t);
405
+ }
406
+ function _e(e, t) {
407
+ if (t > 0) {
408
+ const o = Ee(e);
409
+ return Math.min(...o) >= t;
410
+ }
411
+ return !0;
412
+ }
413
+ function U(e, t) {
414
+ return (o) => {
415
+ if (e[0] === e[1] || t[0] === t[1]) return t[0];
416
+ const n = (t[1] - t[0]) / (e[1] - e[0]);
417
+ return t[0] + n * (o - e[0]);
418
+ };
419
+ }
420
+ function Ce(e) {
421
+ return (String(e).split(".")[1] || "").length;
422
+ }
423
+ function Me(e, t) {
424
+ const o = Math.pow(10, t);
425
+ return Math.round(e * o) / o;
426
+ }
427
+ var Oe = q, Ue = te, Fe = ne, Ye = oe;
428
+ export {
429
+ Fe as Range,
430
+ Oe as Root,
431
+ q as Slider,
432
+ ne as SliderRange,
433
+ oe as SliderThumb,
434
+ te as SliderTrack,
435
+ Ye as Thumb,
436
+ Ue as Track
437
+ };