@neut/ui 0.0.4 → 0.0.6

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 (243) hide show
  1. package/dist/components/alert/Alert/Alert.d.ts +2 -0
  2. package/dist/components/alert/Alert/Alert.js +22 -0
  3. package/dist/components/alert/Alert/Alert.js.map +1 -0
  4. package/dist/components/alert/Alert/Alert.styles.d.ts +3 -0
  5. package/dist/components/alert/Alert/Alert.styles.js +13 -0
  6. package/dist/components/alert/Alert/Alert.styles.js.map +1 -0
  7. package/dist/components/alert/Alert/Alert.types.d.ts +4 -0
  8. package/dist/components/alert/Alert/index.d.ts +1 -0
  9. package/dist/components/alert/AlertAction/AlertAction.d.ts +2 -0
  10. package/dist/components/alert/AlertAction/AlertAction.js +18 -0
  11. package/dist/components/alert/AlertAction/AlertAction.js.map +1 -0
  12. package/dist/components/alert/AlertAction/AlertAction.styles.d.ts +1 -0
  13. package/dist/components/alert/AlertAction/AlertAction.styles.js +6 -0
  14. package/dist/components/alert/AlertAction/AlertAction.styles.js.map +1 -0
  15. package/dist/components/alert/AlertAction/AlertAction.types.d.ts +2 -0
  16. package/dist/components/alert/AlertAction/index.d.ts +1 -0
  17. package/dist/components/alert/AlertDescription/AlertDescription.d.ts +2 -0
  18. package/dist/components/alert/AlertDescription/AlertDescription.js +18 -0
  19. package/dist/components/alert/AlertDescription/AlertDescription.js.map +1 -0
  20. package/dist/components/alert/AlertDescription/AlertDescription.styles.d.ts +1 -0
  21. package/dist/components/alert/AlertDescription/AlertDescription.styles.js +6 -0
  22. package/dist/components/alert/AlertDescription/AlertDescription.styles.js.map +1 -0
  23. package/dist/components/alert/AlertDescription/AlertDescription.types.d.ts +2 -0
  24. package/dist/components/alert/AlertDescription/index.d.ts +1 -0
  25. package/dist/components/alert/AlertTitle/AlertTitle.d.ts +2 -0
  26. package/dist/components/alert/AlertTitle/AlertTitle.js +18 -0
  27. package/dist/components/alert/AlertTitle/AlertTitle.js.map +1 -0
  28. package/dist/components/alert/AlertTitle/AlertTitle.styles.d.ts +1 -0
  29. package/dist/components/alert/AlertTitle/AlertTitle.styles.js +6 -0
  30. package/dist/components/alert/AlertTitle/AlertTitle.styles.js.map +1 -0
  31. package/dist/components/alert/AlertTitle/AlertTitle.types.d.ts +2 -0
  32. package/dist/components/alert/AlertTitle/index.d.ts +1 -0
  33. package/dist/components/alert/index.d.ts +4 -0
  34. package/dist/components/alert/index.js +5 -0
  35. package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.d.ts +10 -0
  36. package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.js +11 -0
  37. package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.js.map +1 -0
  38. package/dist/components/alert-dialog/AlertDialog/AlertDialog.d.ts +2 -0
  39. package/dist/components/alert-dialog/AlertDialog/AlertDialog.js +23 -0
  40. package/dist/components/alert-dialog/AlertDialog/AlertDialog.js.map +1 -0
  41. package/dist/components/alert-dialog/AlertDialog/AlertDialog.styles.d.ts +0 -0
  42. package/dist/components/alert-dialog/AlertDialog/AlertDialog.types.d.ts +2 -0
  43. package/dist/components/alert-dialog/AlertDialog/index.d.ts +2 -0
  44. package/dist/components/alert-dialog/AlertDialogAction/AlertDialogAction.d.ts +2 -0
  45. package/dist/components/alert-dialog/AlertDialogAction/AlertDialogAction.js +8 -0
  46. package/dist/components/alert-dialog/AlertDialogAction/AlertDialogAction.js.map +1 -0
  47. package/dist/components/alert-dialog/AlertDialogAction/AlertDialogAction.types.d.ts +2 -0
  48. package/dist/components/alert-dialog/AlertDialogAction/index.d.ts +1 -0
  49. package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.d.ts +2 -0
  50. package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.js +16 -0
  51. package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.js.map +1 -0
  52. package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.types.d.ts +2 -0
  53. package/dist/components/alert-dialog/AlertDialogCancel/index.d.ts +1 -0
  54. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.d.ts +8 -0
  55. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.js +11 -0
  56. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.js.map +1 -0
  57. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.d.ts +2 -0
  58. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.js +65 -0
  59. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.js.map +1 -0
  60. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.styles.d.ts +1 -0
  61. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.styles.js +6 -0
  62. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.styles.js.map +1 -0
  63. package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.types.d.ts +4 -0
  64. package/dist/components/alert-dialog/AlertDialogContent/index.d.ts +2 -0
  65. package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.d.ts +2 -0
  66. package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.js +21 -0
  67. package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.js.map +1 -0
  68. package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.styles.d.ts +1 -0
  69. package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.styles.js +6 -0
  70. package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.styles.js.map +1 -0
  71. package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.types.d.ts +2 -0
  72. package/dist/components/alert-dialog/AlertDialogDescription/index.d.ts +1 -0
  73. package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.d.ts +2 -0
  74. package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.js +18 -0
  75. package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.js.map +1 -0
  76. package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.styles.d.ts +1 -0
  77. package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.styles.js +6 -0
  78. package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.styles.js.map +1 -0
  79. package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.types.d.ts +2 -0
  80. package/dist/components/alert-dialog/AlertDialogFooter/index.d.ts +1 -0
  81. package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.d.ts +2 -0
  82. package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.js +18 -0
  83. package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.js.map +1 -0
  84. package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.styles.d.ts +1 -0
  85. package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.styles.js +6 -0
  86. package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.styles.js.map +1 -0
  87. package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.types.d.ts +2 -0
  88. package/dist/components/alert-dialog/AlertDialogHeader/index.d.ts +1 -0
  89. package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.d.ts +2 -0
  90. package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.js +18 -0
  91. package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.js.map +1 -0
  92. package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.styles.d.ts +1 -0
  93. package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.styles.js +6 -0
  94. package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.styles.js.map +1 -0
  95. package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.types.d.ts +2 -0
  96. package/dist/components/alert-dialog/AlertDialogMedia/index.d.ts +1 -0
  97. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.d.ts +2 -0
  98. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.js +26 -0
  99. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.js.map +1 -0
  100. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.d.ts +1 -0
  101. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.js +6 -0
  102. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.js.map +1 -0
  103. package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.types.d.ts +2 -0
  104. package/dist/components/alert-dialog/AlertDialogOverlay/index.d.ts +1 -0
  105. package/dist/components/alert-dialog/AlertDialogPortal/AlertDialogPortal.d.ts +2 -0
  106. package/dist/components/alert-dialog/AlertDialogPortal/AlertDialogPortal.js +10 -0
  107. package/dist/components/alert-dialog/AlertDialogPortal/AlertDialogPortal.js.map +1 -0
  108. package/dist/components/alert-dialog/AlertDialogPortal/AlertDialogPortal.types.d.ts +2 -0
  109. package/dist/components/alert-dialog/AlertDialogPortal/index.d.ts +1 -0
  110. package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.d.ts +2 -0
  111. package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.js +21 -0
  112. package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.js.map +1 -0
  113. package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.styles.d.ts +1 -0
  114. package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.styles.js +6 -0
  115. package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.styles.js.map +1 -0
  116. package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.types.d.ts +2 -0
  117. package/dist/components/alert-dialog/AlertDialogTitle/index.d.ts +1 -0
  118. package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.d.ts +2 -0
  119. package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.js +11 -0
  120. package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.js.map +1 -0
  121. package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.types.d.ts +0 -0
  122. package/dist/components/alert-dialog/AlertDialogTrigger/index.d.ts +1 -0
  123. package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.d.ts +2 -0
  124. package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.js +26 -0
  125. package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.js.map +1 -0
  126. package/dist/components/alert-dialog/index.d.ts +12 -0
  127. package/dist/components/alert-dialog/index.js +15 -0
  128. package/dist/components/badge/Badge.styles.d.ts +1 -1
  129. package/dist/components/button/Button.styles.d.ts +3 -3
  130. package/dist/components/input-group/InputGroupAddon/InputGroupAddon.styles.d.ts +1 -1
  131. package/dist/components/input-group/InputGroupButton/InputGroupButton.styles.d.ts +2 -2
  132. package/dist/components/item/Item/Item.styles.d.ts +1 -1
  133. package/dist/components/item/ItemMedia/ItemMedia.styles.d.ts +1 -1
  134. package/dist/components/progress/Progress/Progress.context.d.ts +6 -0
  135. package/dist/components/progress/Progress/Progress.context.js +11 -0
  136. package/dist/components/progress/Progress/Progress.context.js.map +1 -0
  137. package/dist/components/progress/Progress/Progress.d.ts +2 -0
  138. package/dist/components/progress/Progress/Progress.js +44 -0
  139. package/dist/components/progress/Progress/Progress.js.map +1 -0
  140. package/dist/components/progress/Progress/Progress.styles.d.ts +1 -0
  141. package/dist/components/progress/Progress/Progress.styles.js +6 -0
  142. package/dist/components/progress/Progress/Progress.styles.js.map +1 -0
  143. package/dist/components/progress/Progress/Progress.types.d.ts +4 -0
  144. package/dist/components/progress/Progress/index.d.ts +2 -0
  145. package/dist/components/progress/ProgressIndicator/ProgressIndicator.d.ts +2 -0
  146. package/dist/components/progress/ProgressIndicator/ProgressIndicator.js +27 -0
  147. package/dist/components/progress/ProgressIndicator/ProgressIndicator.js.map +1 -0
  148. package/dist/components/progress/ProgressIndicator/ProgressIndicator.styles.d.ts +1 -0
  149. package/dist/components/progress/ProgressIndicator/ProgressIndicator.styles.js +6 -0
  150. package/dist/components/progress/ProgressIndicator/ProgressIndicator.styles.js.map +1 -0
  151. package/dist/components/progress/ProgressIndicator/ProgressIndicator.types.d.ts +2 -0
  152. package/dist/components/progress/ProgressIndicator/index.d.ts +1 -0
  153. package/dist/components/progress/ProgressLabel/ProgressLabel.d.ts +2 -0
  154. package/dist/components/progress/ProgressLabel/ProgressLabel.js +18 -0
  155. package/dist/components/progress/ProgressLabel/ProgressLabel.js.map +1 -0
  156. package/dist/components/progress/ProgressLabel/ProgressLabel.styles.d.ts +1 -0
  157. package/dist/components/progress/ProgressLabel/ProgressLabel.styles.js +6 -0
  158. package/dist/components/progress/ProgressLabel/ProgressLabel.styles.js.map +1 -0
  159. package/dist/components/progress/ProgressLabel/ProgressLabel.types.d.ts +2 -0
  160. package/dist/components/progress/ProgressLabel/index.d.ts +1 -0
  161. package/dist/components/progress/ProgressTrack/ProgressTrack.d.ts +2 -0
  162. package/dist/components/progress/ProgressTrack/ProgressTrack.js +24 -0
  163. package/dist/components/progress/ProgressTrack/ProgressTrack.js.map +1 -0
  164. package/dist/components/progress/ProgressTrack/ProgressTrack.styles.d.ts +1 -0
  165. package/dist/components/progress/ProgressTrack/ProgressTrack.styles.js +6 -0
  166. package/dist/components/progress/ProgressTrack/ProgressTrack.styles.js.map +1 -0
  167. package/dist/components/progress/ProgressTrack/ProgressTrack.types.d.ts +2 -0
  168. package/dist/components/progress/ProgressTrack/index.d.ts +1 -0
  169. package/dist/components/progress/ProgressValue/ProgressValue.d.ts +2 -0
  170. package/dist/components/progress/ProgressValue/ProgressValue.js +19 -0
  171. package/dist/components/progress/ProgressValue/ProgressValue.js.map +1 -0
  172. package/dist/components/progress/ProgressValue/ProgressValue.styles.d.ts +1 -0
  173. package/dist/components/progress/ProgressValue/ProgressValue.styles.js +6 -0
  174. package/dist/components/progress/ProgressValue/ProgressValue.styles.js.map +1 -0
  175. package/dist/components/progress/ProgressValue/ProgressValue.types.d.ts +2 -0
  176. package/dist/components/progress/ProgressValue/index.d.ts +1 -0
  177. package/dist/components/progress/index.d.ts +3 -0
  178. package/dist/components/progress/index.js +4 -0
  179. package/dist/components/scroll-area/ScrollArea/ScrollArea.js.map +1 -1
  180. package/dist/components/slider/Slider/Slider.context.d.ts +17 -0
  181. package/dist/components/slider/Slider/Slider.context.js +11 -0
  182. package/dist/components/slider/Slider/Slider.context.js.map +1 -0
  183. package/dist/components/slider/Slider/Slider.d.ts +2 -0
  184. package/dist/components/slider/Slider/Slider.js +62 -0
  185. package/dist/components/slider/Slider/Slider.js.map +1 -0
  186. package/dist/components/slider/Slider/Slider.styles.d.ts +1 -0
  187. package/dist/components/slider/Slider/Slider.styles.js +6 -0
  188. package/dist/components/slider/Slider/Slider.styles.js.map +1 -0
  189. package/dist/components/slider/Slider/Slider.types.d.ts +13 -0
  190. package/dist/components/slider/Slider/index.d.ts +2 -0
  191. package/dist/components/slider/Slider/useSlider.d.ts +19 -0
  192. package/dist/components/slider/Slider/useSlider.js +33 -0
  193. package/dist/components/slider/Slider/useSlider.js.map +1 -0
  194. package/dist/components/slider/SliderControl/SliderControl.d.ts +2 -0
  195. package/dist/components/slider/SliderControl/SliderControl.js +33 -0
  196. package/dist/components/slider/SliderControl/SliderControl.js.map +1 -0
  197. package/dist/components/slider/SliderControl/SliderControl.styles.d.ts +1 -0
  198. package/dist/components/slider/SliderControl/SliderControl.styles.js +6 -0
  199. package/dist/components/slider/SliderControl/SliderControl.styles.js.map +1 -0
  200. package/dist/components/slider/SliderControl/SliderControl.types.d.ts +2 -0
  201. package/dist/components/slider/SliderControl/index.d.ts +1 -0
  202. package/dist/components/slider/SliderControl/useSliderControl.d.ts +5 -0
  203. package/dist/components/slider/SliderControl/useSliderControl.js +36 -0
  204. package/dist/components/slider/SliderControl/useSliderControl.js.map +1 -0
  205. package/dist/components/slider/SliderIndicator/SliderIndicator.d.ts +2 -0
  206. package/dist/components/slider/SliderIndicator/SliderIndicator.js +28 -0
  207. package/dist/components/slider/SliderIndicator/SliderIndicator.js.map +1 -0
  208. package/dist/components/slider/SliderIndicator/SliderIndicator.styles.d.ts +1 -0
  209. package/dist/components/slider/SliderIndicator/SliderIndicator.styles.js +7 -0
  210. package/dist/components/slider/SliderIndicator/SliderIndicator.styles.js.map +1 -0
  211. package/dist/components/slider/SliderIndicator/SliderIndicator.types.d.ts +2 -0
  212. package/dist/components/slider/SliderIndicator/index.d.ts +1 -0
  213. package/dist/components/slider/SliderIndicator/useSliderIndicator.d.ts +6 -0
  214. package/dist/components/slider/SliderIndicator/useSliderIndicator.js +20 -0
  215. package/dist/components/slider/SliderIndicator/useSliderIndicator.js.map +1 -0
  216. package/dist/components/slider/SliderThumb/SliderThumb.d.ts +2 -0
  217. package/dist/components/slider/SliderThumb/SliderThumb.js +45 -0
  218. package/dist/components/slider/SliderThumb/SliderThumb.js.map +1 -0
  219. package/dist/components/slider/SliderThumb/SliderThumb.styles.d.ts +1 -0
  220. package/dist/components/slider/SliderThumb/SliderThumb.styles.js +7 -0
  221. package/dist/components/slider/SliderThumb/SliderThumb.styles.js.map +1 -0
  222. package/dist/components/slider/SliderThumb/SliderThumb.types.d.ts +6 -0
  223. package/dist/components/slider/SliderThumb/index.d.ts +1 -0
  224. package/dist/components/slider/SliderThumb/useSliderThumb.d.ts +6 -0
  225. package/dist/components/slider/SliderThumb/useSliderThumb.js +18 -0
  226. package/dist/components/slider/SliderThumb/useSliderThumb.js.map +1 -0
  227. package/dist/components/slider/SliderTrack/SliderTrack.d.ts +2 -0
  228. package/dist/components/slider/SliderTrack/SliderTrack.js +24 -0
  229. package/dist/components/slider/SliderTrack/SliderTrack.js.map +1 -0
  230. package/dist/components/slider/SliderTrack/SliderTrack.styles.d.ts +1 -0
  231. package/dist/components/slider/SliderTrack/SliderTrack.styles.js +6 -0
  232. package/dist/components/slider/SliderTrack/SliderTrack.styles.js.map +1 -0
  233. package/dist/components/slider/SliderTrack/SliderTrack.types.d.ts +2 -0
  234. package/dist/components/slider/SliderTrack/index.d.ts +1 -0
  235. package/dist/components/slider/index.d.ts +1 -0
  236. package/dist/components/slider/index.js +3 -0
  237. package/dist/components/tooltip/TooltipContent/TooltipContent.utils.d.ts +1 -1
  238. package/dist/components/tooltip/TooltipContent/useTooltipContent.d.ts +1 -1
  239. package/dist/index.d.ts +4 -0
  240. package/dist/index.js +124 -101
  241. package/dist/types/props.types.d.ts +3 -0
  242. package/dist/ui.css +1 -1
  243. package/package.json +4 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressIndicator.styles.js","names":[],"sources":["../../../../src/components/progress/ProgressIndicator/ProgressIndicator.styles.ts"],"sourcesContent":["export const classes =\n \"h-full bg-neutral-900 dark:bg-neutral-200 transition-all\";\n"],"mappings":";AAAA,IAAa,IACX"}
@@ -0,0 +1,2 @@
1
+ import { BaseProps, PolymorphicProps } from '../../../types';
2
+ export type ProgressIndicatorProps = PolymorphicProps<"div", BaseProps, false>;
@@ -0,0 +1 @@
1
+ export { ProgressIndicator } from './ProgressIndicator';
@@ -0,0 +1,2 @@
1
+ import { ProgressLabelProps } from './ProgressLabel.types';
2
+ export declare const ProgressLabel: (props: ProgressLabelProps) => import("solid-js").JSX.Element;
@@ -0,0 +1,18 @@
1
+ import { clsx as e } from "../../../utils/clsx.js";
2
+ import { classes as t } from "./ProgressLabel.styles.js";
3
+ import { mergeProps as n, spread as r, template as i } from "solid-js/web";
4
+ import { splitProps as a } from "solid-js";
5
+ //#region src/components/progress/ProgressLabel/ProgressLabel.tsx
6
+ var o = /* @__PURE__ */ i("<span data-slot=progress-label>"), s = (i) => {
7
+ let [s, c] = a(i, ["class", "classList"]);
8
+ return (() => {
9
+ var i = o();
10
+ return r(i, n({ get class() {
11
+ return e(t, s.class);
12
+ } }, c), !1, !1), i;
13
+ })();
14
+ };
15
+ //#endregion
16
+ export { s as ProgressLabel };
17
+
18
+ //# sourceMappingURL=ProgressLabel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressLabel.js","names":["splitProps","ProgressLabelProps","clsx","classes","ProgressLabel","props","local","others","_el$","_tmpl$","_$spread","_$mergeProps","class"],"sources":["../../../../src/components/progress/ProgressLabel/ProgressLabel.tsx"],"sourcesContent":["import { splitProps } from \"solid-js\";\nimport type { ProgressLabelProps } from \"./ProgressLabel.types\";\nimport { clsx } from \"~/utils\";\nimport { classes } from \"./ProgressLabel.styles\";\n\nexport const ProgressLabel = (props: ProgressLabelProps) => {\n const [local, others] = splitProps(props, [\"class\", \"classList\"]);\n\n return (\n <span\n data-slot=\"progress-label\"\n class={clsx(classes, local.class)}\n {...others}\n />\n );\n};\n"],"mappings":";;;;;8DAKaI,KAAiBC,MAA8B;CAC1D,IAAM,CAACC,GAAOC,KAAUP,EAAWK,GAAO,CAAC,SAAS,YAAY,CAAC;AAEjE,eAAA;EAAA,IAAAG,IAAAC,GAAA;AAIc,SAJdC,EAAAF,GAAAG,EAAA,EAAA,IAAA,QAAA;AAAA,UAGWT,EAAKC,GAASG,EAAMM,MAAM;KAAA,EAC7BL,EAAM,EAAA,IAAA,GAAA,EAAAC;KAAA"}
@@ -0,0 +1 @@
1
+ export declare const classes = "text-sm font-medium";
@@ -0,0 +1,6 @@
1
+ //#region src/components/progress/ProgressLabel/ProgressLabel.styles.ts
2
+ var e = "text-sm font-medium";
3
+ //#endregion
4
+ export { e as classes };
5
+
6
+ //# sourceMappingURL=ProgressLabel.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressLabel.styles.js","names":[],"sources":["../../../../src/components/progress/ProgressLabel/ProgressLabel.styles.ts"],"sourcesContent":["export const classes = \"text-sm font-medium\";\n"],"mappings":";AAAA,IAAa,IAAU"}
@@ -0,0 +1,2 @@
1
+ import { BaseProps, PolymorphicProps } from '../../../types';
2
+ export type ProgressLabelProps = PolymorphicProps<"span", BaseProps, false>;
@@ -0,0 +1 @@
1
+ export { ProgressLabel } from './ProgressLabel';
@@ -0,0 +1,2 @@
1
+ import { ProgressTrackProps } from './ProgressTrack.types';
2
+ export declare const ProgressTrack: (props: ProgressTrackProps) => import("solid-js").JSX.Element;
@@ -0,0 +1,24 @@
1
+ import { clsx as e } from "../../../utils/clsx.js";
2
+ import { classes as t } from "./ProgressTrack.styles.js";
3
+ import { useProgressContext as n } from "../Progress/Progress.context.js";
4
+ import { memo as r, mergeProps as i, spread as a, template as o } from "solid-js/web";
5
+ import { splitProps as s } from "solid-js";
6
+ //#region src/components/progress/ProgressTrack/ProgressTrack.tsx
7
+ var c = /* @__PURE__ */ o("<div data-slot=progress-track>"), l = (o) => {
8
+ let { value: l } = n(), [u, d] = s(o, ["class", "classList"]);
9
+ return (() => {
10
+ var n = c();
11
+ return a(n, i({
12
+ get "data-progressing"() {
13
+ return r(() => l() > 0)() && l() < 100;
14
+ },
15
+ get class() {
16
+ return e(t, u.class);
17
+ }
18
+ }, d), !1, !1), n;
19
+ })();
20
+ };
21
+ //#endregion
22
+ export { l as ProgressTrack };
23
+
24
+ //# sourceMappingURL=ProgressTrack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressTrack.js","names":["splitProps","ProgressTrackProps","clsx","classes","useProgressContext","ProgressTrack","props","value","local","others","_el$","_tmpl$","_$spread","_$mergeProps","data-progressing","_$memo","class"],"sources":["../../../../src/components/progress/ProgressTrack/ProgressTrack.tsx"],"sourcesContent":["import { splitProps } from \"solid-js\";\nimport type { ProgressTrackProps } from \"./ProgressTrack.types\";\nimport { clsx } from \"~/utils\";\nimport { classes } from \"./ProgressTrack.styles\";\nimport { useProgressContext } from \"../Progress\";\n\nexport const ProgressTrack = (props: ProgressTrackProps) => {\n const { value } = useProgressContext();\n\n const [local, others] = splitProps(props, [\"class\", \"classList\"]);\n\n return (\n <div\n data-slot=\"progress-track\"\n data-progressing={value() > 0 && value() < 100}\n class={clsx(classes, local.class)}\n {...others}\n />\n );\n};\n"],"mappings":";;;;;;6DAMaK,KAAiBC,MAA8B;CAC1D,IAAM,EAAEC,aAAUH,GAAoB,EAEhC,CAACI,GAAOC,KAAUT,EAAWM,GAAO,CAAC,SAAS,YAAY,CAAC;AAEjE,eAAA;EAAA,IAAAI,IAAAC,GAAA;AAKc,SALdC,EAAAF,GAAAG,EAAA;GAAA,IAAA,qBAAA;AAAA,WAGsBE,QAAAR,GAAO,GAAG,EAAC,EAAA,IAAIA,GAAO,GAAG;;GAAG,IAAA,QAAA;AAAA,WACvCL,EAAKC,GAASK,EAAMQ,MAAM;;GAAA,EAC7BP,EAAM,EAAA,IAAA,GAAA,EAAAC;KAAA"}
@@ -0,0 +1 @@
1
+ export declare const classes = "relative flex h-1 w-full items-center overflow-x-hidden rounded-full bg-neutral-100 dark:bg-neutral-800";
@@ -0,0 +1,6 @@
1
+ //#region src/components/progress/ProgressTrack/ProgressTrack.styles.ts
2
+ var e = "relative flex h-1 w-full items-center overflow-x-hidden rounded-full bg-neutral-100 dark:bg-neutral-800";
3
+ //#endregion
4
+ export { e as classes };
5
+
6
+ //# sourceMappingURL=ProgressTrack.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressTrack.styles.js","names":[],"sources":["../../../../src/components/progress/ProgressTrack/ProgressTrack.styles.ts"],"sourcesContent":["export const classes =\n \"relative flex h-1 w-full items-center overflow-x-hidden rounded-full bg-neutral-100 dark:bg-neutral-800\";\n"],"mappings":";AAAA,IAAa,IACX"}
@@ -0,0 +1,2 @@
1
+ import { BaseProps, PolymorphicProps } from '../../../types';
2
+ export type ProgressTrackProps = PolymorphicProps<"div", BaseProps, false>;
@@ -0,0 +1 @@
1
+ export { ProgressTrack } from './ProgressTrack';
@@ -0,0 +1,2 @@
1
+ import { ProgressValueProps } from './ProgressValue.types';
2
+ export declare const ProgressValue: (props: ProgressValueProps) => import("solid-js").JSX.Element;
@@ -0,0 +1,19 @@
1
+ import { clsx as e } from "../../../utils/clsx.js";
2
+ import { useProgressContext as t } from "../Progress/Progress.context.js";
3
+ import { classes as n } from "./ProgressValue.styles.js";
4
+ import { insert as r, mergeProps as i, spread as a, template as o } from "solid-js/web";
5
+ import { splitProps as s } from "solid-js";
6
+ //#region src/components/progress/ProgressValue/ProgressValue.tsx
7
+ var c = /* @__PURE__ */ o("<span data-slot=progress-value>%"), l = (o) => {
8
+ let { value: l } = t(), [u, d] = s(o, ["class", "classList"]);
9
+ return (() => {
10
+ var t = c(), o = t.firstChild;
11
+ return a(t, i({ get class() {
12
+ return e(n, u.class);
13
+ } }, d), !1, !0), r(t, l, o), t;
14
+ })();
15
+ };
16
+ //#endregion
17
+ export { l as ProgressValue };
18
+
19
+ //# sourceMappingURL=ProgressValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressValue.js","names":["splitProps","ProgressValueProps","clsx","classes","useProgressContext","ProgressValue","props","value","local","others","_el$","_tmpl$","_el$2","firstChild","_$spread","_$mergeProps","class","_$insert"],"sources":["../../../../src/components/progress/ProgressValue/ProgressValue.tsx"],"sourcesContent":["import { splitProps } from \"solid-js\";\nimport type { ProgressValueProps } from \"./ProgressValue.types\";\nimport { clsx } from \"~/utils\";\nimport { classes } from \"./ProgressValue.styles\";\nimport { useProgressContext } from \"../Progress\";\n\nexport const ProgressValue = (props: ProgressValueProps) => {\n const { value } = useProgressContext();\n\n const [local, others] = splitProps(props, [\"class\", \"classList\"]);\n\n return (\n <span\n data-slot=\"progress-value\"\n class={clsx(classes, local.class)}\n {...others}\n >\n {value()}%\n </span>\n );\n};\n"],"mappings":";;;;;;+DAMaK,KAAiBC,MAA8B;CAC1D,IAAM,EAAEC,aAAUH,GAAoB,EAEhC,CAACI,GAAOC,KAAUT,EAAWM,GAAO,CAAC,SAAS,YAAY,CAAC;AAEjE,eAAA;EAAA,IAAAI,IAAAC,GAAA,EAAAC,IAAAF,EAAAG;AAMU,SANVC,EAAAJ,GAAAK,EAAA,EAAA,IAAA,QAAA;AAAA,UAGWb,EAAKC,GAASK,EAAMQ,MAAM;KAAA,EAC7BP,EAAM,EAAA,IAAA,GAAA,EAAAQ,EAAAP,GAETH,GAAKK,EAAA,EAAAF;KAAA"}
@@ -0,0 +1 @@
1
+ export declare const classes = "ml-auto text-sm text-neutral-500 dark:text-neutral-400 tabular-nums";
@@ -0,0 +1,6 @@
1
+ //#region src/components/progress/ProgressValue/ProgressValue.styles.ts
2
+ var e = "ml-auto text-sm text-neutral-500 dark:text-neutral-400 tabular-nums";
3
+ //#endregion
4
+ export { e as classes };
5
+
6
+ //# sourceMappingURL=ProgressValue.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressValue.styles.js","names":[],"sources":["../../../../src/components/progress/ProgressValue/ProgressValue.styles.ts"],"sourcesContent":["export const classes =\n \"ml-auto text-sm text-neutral-500 dark:text-neutral-400 tabular-nums\";\n"],"mappings":";AAAA,IAAa,IACX"}
@@ -0,0 +1,2 @@
1
+ import { BaseProps, PolymorphicProps } from '../../../types';
2
+ export type ProgressValueProps = PolymorphicProps<"span", BaseProps, false>;
@@ -0,0 +1 @@
1
+ export { ProgressValue } from './ProgressValue';
@@ -0,0 +1,3 @@
1
+ export { Progress } from './Progress';
2
+ export { ProgressLabel } from './ProgressLabel';
3
+ export { ProgressValue } from './ProgressValue';
@@ -0,0 +1,4 @@
1
+ import { Progress as e } from "./Progress/Progress.js";
2
+ import { ProgressLabel as t } from "./ProgressLabel/ProgressLabel.js";
3
+ import { ProgressValue as n } from "./ProgressValue/ProgressValue.js";
4
+ export { e as Progress, t as ProgressLabel, n as ProgressValue };
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollArea.js","names":["createEffect","createSignal","onCleanup","splitProps","ScrollAreaProps","ScrollMetrics","clsx","ScrollBar","ScrollAreaContext","computeMetrics","ScrollArea","props","viewportRef","HTMLDivElement","local","others","hovering","setHovering","dragging","setDragging","verticalMetrics","setVerticalMetrics","thumbRatio","thumbOffset","scrollable","horizontalMetrics","setHorizontalMetrics","updateMetrics","el","HTMLElement","clientHeight","scrollTop","scrollHeight","clientWidth","scrollLeft","scrollWidth","setup","update","ro","ResizeObserver","observe","firstElementChild","addEventListener","passive","disconnect","removeEventListener","_el$","_tmpl$2","_$spread","_$mergeProps","class","_$insert","_$createComponent","Provider","value","vertical","horizontal","children","_el$2","_tmpl$","_ref$","_$use","_$effect","_p$","_v$","_v$2","orientation","e","_$setAttribute","t","_$className","undefined"],"sources":["../../../../src/components/scroll-area/ScrollArea/ScrollArea.tsx"],"sourcesContent":["import { createEffect, createSignal, onCleanup, splitProps } from \"solid-js\";\nimport type { ScrollAreaProps, ScrollMetrics } from \"./ScrollArea.types\";\nimport { clsx } from \"~/utils\";\nimport { ScrollBar } from \"../ScrollBar\";\nimport { ScrollAreaContext } from \"./ScrollArea.context\";\nimport { computeMetrics } from \"./ScrollArea.utils\";\n\nexport const ScrollArea = (props: ScrollAreaProps) => {\n let viewportRef: HTMLDivElement | undefined;\n\n const [local, others] = splitProps(props, [\n \"orientation\",\n \"class\",\n \"classList\",\n \"children\",\n \"aria-label\",\n ]);\n\n const [hovering, setHovering] = createSignal(false);\n const [dragging, setDragging] = createSignal<\n \"vertical\" | \"horizontal\" | null\n >(null);\n\n const [verticalMetrics, setVerticalMetrics] = createSignal<ScrollMetrics>({\n thumbRatio: 1,\n thumbOffset: 0,\n scrollable: false,\n });\n const [horizontalMetrics, setHorizontalMetrics] = createSignal<ScrollMetrics>(\n {\n thumbRatio: 1,\n thumbOffset: 0,\n scrollable: false,\n },\n );\n\n function updateMetrics(el: HTMLElement) {\n setVerticalMetrics(\n computeMetrics(el.clientHeight, el.scrollTop, el.scrollHeight),\n );\n setHorizontalMetrics(\n computeMetrics(el.clientWidth, el.scrollLeft, el.scrollWidth),\n );\n }\n\n function setup(el: HTMLDivElement) {\n viewportRef = el; // ref 赋值\n\n updateMetrics(el);\n\n const update = () => updateMetrics(el);\n\n const ro = new ResizeObserver(update);\n ro.observe(el);\n\n if (el.firstElementChild) {\n ro.observe(el.firstElementChild);\n }\n\n el.addEventListener(\"scroll\", update, { passive: true });\n\n onCleanup(() => {\n ro.disconnect();\n el.removeEventListener(\"scroll\", update);\n });\n }\n\n return (\n <div\n data-slot=\"scroll-area\"\n class={clsx(\"relative\", local.class)}\n onMouseEnter={() => setHovering(true)}\n onMouseLeave={() => setHovering(false)}\n {...others}\n >\n <ScrollAreaContext.Provider\n value={{\n hovering,\n viewportRef: () => viewportRef,\n dragging,\n setDragging,\n vertical: verticalMetrics,\n horizontal: horizontalMetrics,\n }}\n >\n <div\n ref={setup}\n data-slot=\"scroll-area-viewport\"\n role=\"region\"\n aria-label={local[\"aria-label\"] ?? \"Scrollable content\"}\n class={clsx(\n // \"size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-neutral-400/50 dark:focus-visible:ring-neutral-500/50 focus-visible:outline-1\",\n // \"overflow-scroll\",\n // \"[scrollbar-width:none]\",\n \"size-full rounded-[inherit] outline-none\",\n // Native scrollbars hidden via CSS; custom ones provided below\n \"[scrollbar-width:none] [&::-webkit-scrollbar]:hidden\",\n // Focus ring — meets WCAG 2.4.7\n \"focus-visible:ring-2 focus-visible:ring-offset-1\",\n \"focus-visible:ring-neutral-400/70 dark:focus-visible:ring-neutral-500/70\",\n // Overflow based on which scrollbars are active\n local.orientation === \"vertical\"\n ? \"overflow-y-scroll overflow-x-hidden\"\n : local.orientation === \"horizontal\"\n ? \"overflow-x-scroll overflow-y-hidden\"\n : \"overflow-scroll\",\n )}\n >\n {local.children}\n </div>\n <ScrollBar orientation={local.orientation} />\n </ScrollAreaContext.Provider>\n </div>\n );\n};\n"],"mappings":";;;;;;;qIAOaU,KAAcC,MAA2B;CACpD,IAAIC,GAEE,CAACE,GAAOC,KAAUZ,EAAWQ,GAAO;EACxC;EACA;EACA;EACA;EACA;EACD,CAAC,EAEI,CAACK,GAAUC,KAAehB,EAAa,GAAM,EAC7C,CAACiB,GAAUC,KAAelB,EAE9B,KAAK,EAED,CAACmB,GAAiBC,KAAsBpB,EAA4B;EACxEqB,YAAY;EACZC,aAAa;EACbC,YAAY;EACb,CAAC,EACI,CAACC,GAAmBC,KAAwBzB,EAChD;EACEqB,YAAY;EACZC,aAAa;EACbC,YAAY;EAEhB,CAAC;CAED,SAASG,EAAcC,GAAiB;AAItCF,EAHAL,EACEZ,EAAemB,EAAGE,cAAcF,EAAGG,WAAWH,EAAGI,aACnD,CAAC,EACDN,EACEjB,EAAemB,EAAGK,aAAaL,EAAGM,YAAYN,EAAGO,YACnD,CAAC;;CAGH,SAASC,EAAMR,GAAoB;AAGjCD,EAFAf,IAAcgB,GAEdD,EAAcC,EAAG;EAEjB,IAAMS,UAAeV,EAAcC,EAAG,EAEhCU,IAAK,IAAIC,eAAeF,EAAO;AASrCnC,EARAoC,EAAGE,QAAQZ,EAAG,EAEVA,EAAGa,qBACLH,EAAGE,QAAQZ,EAAGa,kBAAkB,EAGlCb,EAAGc,iBAAiB,UAAUL,GAAQ,EAAEM,SAAS,IAAM,CAAC,EAExDzC,QAAgB;AAEd0B,GADAU,EAAGM,YAAY,EACfhB,EAAGiB,oBAAoB,UAAUR,EAAO;IACxC;;AAGJ,eAAA;EAAA,IAAAS,IAAAC,GAAA;AA2C+C,SA3C/CD,EAAAJ,iBAAA,oBAKwBzB,EAAY,GAAM,CAAA,EAAA6B,EAAAJ,iBAAA,oBADlBzB,EAAY,GAAK,CAAA,EAAA+B,EAAAF,GAAAG,EAAA,EAAA,IAAA,QAAA;AAAA,UAD9B3C,EAAK,YAAYQ,EAAMoC,MAAM;KAAA,EAGhCnC,EAAM,EAAA,IAAA,GAAA,EAAAoC,EAAAL,GAAAM,EAET5C,EAAkB6C,UAAQ;GACzBC,OAAO;IACLtC;IACAJ,mBAAmBA;IACnBM;IACAC;IACAoC,UAAUnC;IACVoC,YAAY/B;IACb;GAAA,IAAAgC,WAAA;AAAA,WAAA,QAAA;KAAA,IAAAC,IAAAC,GAAA,EAAAC,IAGMxB;AAoBJ,YApBS,OAAAwB,KAAA,aAAAC,EAAAD,GAAAF,EAAA,GAALtB,IAAKsB,GAAAP,EAAAO,SAsBT5C,EAAM2C,SAAQ,EAAAK,GAAAC,MAAA;MAAA,IAAAC,IAnBHlD,EAAM,iBAAiB,sBAAoBmD,IAChD3D,EAIL,4CAEA,wDAEA,oDACA,4EAEAQ,EAAMoD,gBAAgB,aAClB,wCACApD,EAAMoD,gBAAgB,eACpB,wCACA,kBACP;AAAA,aAAAF,MAAAD,EAAAI,KAAAC,EAAAV,GAAA,cAAAK,EAAAI,IAAAH,EAAA,EAAAC,MAAAF,EAAAM,KAAAC,EAAAZ,GAAAK,EAAAM,IAAAJ,EAAA,EAAAF;QAAA;MAAAI,GAAAI,KAAAA;MAAAF,GAAAE,KAAAA;MAAA,CAAA,EAAAb;QAAA,EAAAN,EAIF7C,GAAS,EAAA,IAAC2D,cAAW;AAAA,YAAEpD,EAAMoD;OAAW,CAAA,CAAA;;GAAA,CAAA,CAAA,EAAApB;KAAA"}
1
+ {"version":3,"file":"ScrollArea.js","names":["createSignal","onCleanup","splitProps","ScrollAreaProps","ScrollMetrics","clsx","ScrollBar","ScrollAreaContext","computeMetrics","ScrollArea","props","viewportRef","HTMLDivElement","local","others","hovering","setHovering","dragging","setDragging","verticalMetrics","setVerticalMetrics","thumbRatio","thumbOffset","scrollable","horizontalMetrics","setHorizontalMetrics","updateMetrics","el","HTMLElement","clientHeight","scrollTop","scrollHeight","clientWidth","scrollLeft","scrollWidth","setup","update","ro","ResizeObserver","observe","firstElementChild","addEventListener","passive","disconnect","removeEventListener","_el$","_tmpl$2","_$spread","_$mergeProps","class","_$insert","_$createComponent","Provider","value","vertical","horizontal","children","_el$2","_tmpl$","_ref$","_$use","_$effect","_p$","_v$","_v$2","orientation","e","_$setAttribute","t","_$className","undefined"],"sources":["../../../../src/components/scroll-area/ScrollArea/ScrollArea.tsx"],"sourcesContent":["import { createSignal, onCleanup, splitProps } from \"solid-js\";\nimport type { ScrollAreaProps, ScrollMetrics } from \"./ScrollArea.types\";\nimport { clsx } from \"~/utils\";\nimport { ScrollBar } from \"../ScrollBar\";\nimport { ScrollAreaContext } from \"./ScrollArea.context\";\nimport { computeMetrics } from \"./ScrollArea.utils\";\n\nexport const ScrollArea = (props: ScrollAreaProps) => {\n let viewportRef: HTMLDivElement | undefined;\n\n const [local, others] = splitProps(props, [\n \"orientation\",\n \"class\",\n \"classList\",\n \"children\",\n \"aria-label\",\n ]);\n\n const [hovering, setHovering] = createSignal(false);\n const [dragging, setDragging] = createSignal<\n \"vertical\" | \"horizontal\" | null\n >(null);\n\n const [verticalMetrics, setVerticalMetrics] = createSignal<ScrollMetrics>({\n thumbRatio: 1,\n thumbOffset: 0,\n scrollable: false,\n });\n const [horizontalMetrics, setHorizontalMetrics] = createSignal<ScrollMetrics>(\n {\n thumbRatio: 1,\n thumbOffset: 0,\n scrollable: false,\n },\n );\n\n function updateMetrics(el: HTMLElement) {\n setVerticalMetrics(\n computeMetrics(el.clientHeight, el.scrollTop, el.scrollHeight),\n );\n setHorizontalMetrics(\n computeMetrics(el.clientWidth, el.scrollLeft, el.scrollWidth),\n );\n }\n\n function setup(el: HTMLDivElement) {\n viewportRef = el; // ref 赋值\n\n updateMetrics(el);\n\n const update = () => updateMetrics(el);\n\n const ro = new ResizeObserver(update);\n ro.observe(el);\n\n if (el.firstElementChild) {\n ro.observe(el.firstElementChild);\n }\n\n el.addEventListener(\"scroll\", update, { passive: true });\n\n onCleanup(() => {\n ro.disconnect();\n el.removeEventListener(\"scroll\", update);\n });\n }\n\n return (\n <div\n data-slot=\"scroll-area\"\n class={clsx(\"relative\", local.class)}\n onMouseEnter={() => setHovering(true)}\n onMouseLeave={() => setHovering(false)}\n {...others}\n >\n <ScrollAreaContext.Provider\n value={{\n hovering,\n viewportRef: () => viewportRef,\n dragging,\n setDragging,\n vertical: verticalMetrics,\n horizontal: horizontalMetrics,\n }}\n >\n <div\n ref={setup}\n data-slot=\"scroll-area-viewport\"\n role=\"region\"\n aria-label={local[\"aria-label\"] ?? \"Scrollable content\"}\n class={clsx(\n // \"size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-neutral-400/50 dark:focus-visible:ring-neutral-500/50 focus-visible:outline-1\",\n // \"overflow-scroll\",\n // \"[scrollbar-width:none]\",\n \"size-full rounded-[inherit] outline-none\",\n // Native scrollbars hidden via CSS; custom ones provided below\n \"[scrollbar-width:none] [&::-webkit-scrollbar]:hidden\",\n // Focus ring — meets WCAG 2.4.7\n \"focus-visible:ring-2 focus-visible:ring-offset-1\",\n \"focus-visible:ring-neutral-400/70 dark:focus-visible:ring-neutral-500/70\",\n // Overflow based on which scrollbars are active\n local.orientation === \"vertical\"\n ? \"overflow-y-scroll overflow-x-hidden\"\n : local.orientation === \"horizontal\"\n ? \"overflow-x-scroll overflow-y-hidden\"\n : \"overflow-scroll\",\n )}\n >\n {local.children}\n </div>\n <ScrollBar orientation={local.orientation} />\n </ScrollAreaContext.Provider>\n </div>\n );\n};\n"],"mappings":";;;;;;;qIAOaS,KAAcC,MAA2B;CACpD,IAAIC,GAEE,CAACE,GAAOC,KAAUZ,EAAWQ,GAAO;EACxC;EACA;EACA;EACA;EACA;EACD,CAAC,EAEI,CAACK,GAAUC,KAAehB,EAAa,GAAM,EAC7C,CAACiB,GAAUC,KAAelB,EAE9B,KAAK,EAED,CAACmB,GAAiBC,KAAsBpB,EAA4B;EACxEqB,YAAY;EACZC,aAAa;EACbC,YAAY;EACb,CAAC,EACI,CAACC,GAAmBC,KAAwBzB,EAChD;EACEqB,YAAY;EACZC,aAAa;EACbC,YAAY;EAEhB,CAAC;CAED,SAASG,EAAcC,GAAiB;AAItCF,EAHAL,EACEZ,EAAemB,EAAGE,cAAcF,EAAGG,WAAWH,EAAGI,aACnD,CAAC,EACDN,EACEjB,EAAemB,EAAGK,aAAaL,EAAGM,YAAYN,EAAGO,YACnD,CAAC;;CAGH,SAASC,EAAMR,GAAoB;AAGjCD,EAFAf,IAAcgB,GAEdD,EAAcC,EAAG;EAEjB,IAAMS,UAAeV,EAAcC,EAAG,EAEhCU,IAAK,IAAIC,eAAeF,EAAO;AASrCnC,EARAoC,EAAGE,QAAQZ,EAAG,EAEVA,EAAGa,qBACLH,EAAGE,QAAQZ,EAAGa,kBAAkB,EAGlCb,EAAGc,iBAAiB,UAAUL,GAAQ,EAAEM,SAAS,IAAM,CAAC,EAExDzC,QAAgB;AAEd0B,GADAU,EAAGM,YAAY,EACfhB,EAAGiB,oBAAoB,UAAUR,EAAO;IACxC;;AAGJ,eAAA;EAAA,IAAAS,IAAAC,GAAA;AA2C+C,SA3C/CD,EAAAJ,iBAAA,oBAKwBzB,EAAY,GAAM,CAAA,EAAA6B,EAAAJ,iBAAA,oBADlBzB,EAAY,GAAK,CAAA,EAAA+B,EAAAF,GAAAG,EAAA,EAAA,IAAA,QAAA;AAAA,UAD9B3C,EAAK,YAAYQ,EAAMoC,MAAM;KAAA,EAGhCnC,EAAM,EAAA,IAAA,GAAA,EAAAoC,EAAAL,GAAAM,EAET5C,EAAkB6C,UAAQ;GACzBC,OAAO;IACLtC;IACAJ,mBAAmBA;IACnBM;IACAC;IACAoC,UAAUnC;IACVoC,YAAY/B;IACb;GAAA,IAAAgC,WAAA;AAAA,WAAA,QAAA;KAAA,IAAAC,IAAAC,GAAA,EAAAC,IAGMxB;AAoBJ,YApBS,OAAAwB,KAAA,aAAAC,EAAAD,GAAAF,EAAA,GAALtB,IAAKsB,GAAAP,EAAAO,SAsBT5C,EAAM2C,SAAQ,EAAAK,GAAAC,MAAA;MAAA,IAAAC,IAnBHlD,EAAM,iBAAiB,sBAAoBmD,IAChD3D,EAIL,4CAEA,wDAEA,oDACA,4EAEAQ,EAAMoD,gBAAgB,aAClB,wCACApD,EAAMoD,gBAAgB,eACpB,wCACA,kBACP;AAAA,aAAAF,MAAAD,EAAAI,KAAAC,EAAAV,GAAA,cAAAK,EAAAI,IAAAH,EAAA,EAAAC,MAAAF,EAAAM,KAAAC,EAAAZ,GAAAK,EAAAM,IAAAJ,EAAA,EAAAF;QAAA;MAAAI,GAAAI,KAAAA;MAAAF,GAAAE,KAAAA;MAAA,CAAA,EAAAb;QAAA,EAAAN,EAIF7C,GAAS,EAAA,IAAC2D,cAAW;AAAA,YAAEpD,EAAMoD;OAAW,CAAA,CAAA;;GAAA,CAAA,CAAA,EAAApB;KAAA"}
@@ -0,0 +1,17 @@
1
+ import { Accessor } from 'solid-js';
2
+ interface SliderContextValue {
3
+ values: Accessor<number[]>;
4
+ min: Accessor<number>;
5
+ max: Accessor<number>;
6
+ step: Accessor<number>;
7
+ orientation: Accessor<"horizontal" | "vertical">;
8
+ disabled: Accessor<boolean>;
9
+ activeThumbIndex: Accessor<number>;
10
+ setActiveThumbIndex: (index: number) => void;
11
+ updateValue: (index: number, value: number) => void;
12
+ trackRef: Accessor<HTMLDivElement | undefined>;
13
+ setTrackRef: (el: HTMLDivElement) => void;
14
+ }
15
+ export declare const SliderContext: import('solid-js').Context<SliderContextValue | undefined>;
16
+ export declare const useSliderContext: () => SliderContextValue;
17
+ export {};
@@ -0,0 +1,11 @@
1
+ import { createContext as e, useContext as t } from "solid-js";
2
+ //#region src/components/slider/Slider/Slider.context.ts
3
+ var n = e(), r = () => {
4
+ let e = t(n);
5
+ if (!e) throw Error("useSliderContext must be used within a SliderProvider");
6
+ return e;
7
+ };
8
+ //#endregion
9
+ export { n as SliderContext, r as useSliderContext };
10
+
11
+ //# sourceMappingURL=Slider.context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Slider.context.js","names":[],"sources":["../../../../src/components/slider/Slider/Slider.context.ts"],"sourcesContent":["import { type Accessor, createContext, useContext } from \"solid-js\";\n\ninterface SliderContextValue {\n values: Accessor<number[]>;\n min: Accessor<number>;\n max: Accessor<number>;\n step: Accessor<number>;\n orientation: Accessor<\"horizontal\" | \"vertical\">;\n disabled: Accessor<boolean>;\n activeThumbIndex: Accessor<number>;\n setActiveThumbIndex: (index: number) => void;\n updateValue: (index: number, value: number) => void;\n trackRef: Accessor<HTMLDivElement | undefined>;\n setTrackRef: (el: HTMLDivElement) => void;\n}\n\nexport const SliderContext = createContext<SliderContextValue>();\n\nexport const useSliderContext = () => {\n const ctx = useContext(SliderContext);\n if (!ctx) {\n throw new Error(\"useSliderContext must be used within a SliderProvider\");\n }\n\n return ctx;\n};\n"],"mappings":";;AAgBA,IAAa,IAAgB,GAAmC,EAEnD,UAAyB;CACpC,IAAM,IAAM,EAAW,EAAc;AACrC,KAAI,CAAC,EACH,OAAU,MAAM,wDAAwD;AAG1E,QAAO"}
@@ -0,0 +1,2 @@
1
+ import { SliderProps } from './Slider.types';
2
+ export declare const Slider: <T extends number | number[]>(props: SliderProps<T>) => import("solid-js").JSX.Element;
@@ -0,0 +1,62 @@
1
+ import { clsx as e } from "../../../utils/clsx.js";
2
+ import { classes as t } from "./Slider.styles.js";
3
+ import { SliderControl as n } from "../SliderControl/SliderControl.js";
4
+ import { SliderTrack as r } from "../SliderTrack/SliderTrack.js";
5
+ import { SliderIndicator as i } from "../SliderIndicator/SliderIndicator.js";
6
+ import { SliderThumb as a } from "../SliderThumb/SliderThumb.js";
7
+ import { useSlider as o } from "./useSlider.js";
8
+ import { SliderContext as s } from "./Slider.context.js";
9
+ import { createComponent as c, insert as l, mergeProps as u, spread as d, template as f } from "solid-js/web";
10
+ import { For as p, mergeProps as m, splitProps as h } from "solid-js";
11
+ //#region src/components/slider/Slider/Slider.tsx
12
+ var g = /* @__PURE__ */ f("<div data-slot=slider>"), _ = (f) => {
13
+ let [_, v] = h(m({
14
+ orientation: "horizontal",
15
+ max: 100,
16
+ min: 0,
17
+ step: 1,
18
+ disabled: !1
19
+ }, f), [
20
+ "defaultValue",
21
+ "value",
22
+ "max",
23
+ "min",
24
+ "step",
25
+ "orientation",
26
+ "onValueChange",
27
+ "disabled",
28
+ "class",
29
+ "classList"
30
+ ]), { context: y } = o({ get local() {
31
+ return _;
32
+ } });
33
+ return c(s.Provider, {
34
+ value: y,
35
+ get children() {
36
+ var o = g();
37
+ return d(o, u({
38
+ get "data-orientation"() {
39
+ return _.orientation;
40
+ },
41
+ get class() {
42
+ return e(t, _.class);
43
+ }
44
+ }, v), !1, !0), l(o, c(n, { get children() {
45
+ return [c(r, { get children() {
46
+ return c(i, {});
47
+ } }), c(p, {
48
+ get each() {
49
+ return Array.from({ length: y.values().length });
50
+ },
51
+ children: (e, t) => c(a, { get index() {
52
+ return t();
53
+ } })
54
+ })];
55
+ } })), o;
56
+ }
57
+ });
58
+ };
59
+ //#endregion
60
+ export { _ as Slider };
61
+
62
+ //# sourceMappingURL=Slider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Slider.js","names":["For","mergeProps","splitProps","SliderProps","clsx","classes","SliderControl","SliderTrack","SliderIndicator","SliderThumb","useSlider","SliderContext","Slider","props","T","merged","orientation","max","min","step","disabled","const","local","others","context","_$createComponent","Provider","value","children","_el$","_tmpl$","_$spread","_$mergeProps","data-orientation","class","_$insert","each","Array","from","length","values","_","idx","index"],"sources":["../../../../src/components/slider/Slider/Slider.tsx"],"sourcesContent":["import { For, mergeProps, splitProps } from \"solid-js\";\nimport type { SliderProps } from \"./Slider.types\";\nimport { clsx } from \"~/utils\";\nimport { classes } from \"./Slider.styles\";\nimport { SliderControl } from \"../SliderControl\";\nimport { SliderTrack } from \"../SliderTrack\";\nimport { SliderIndicator } from \"../SliderIndicator\";\nimport { SliderThumb } from \"../SliderThumb\";\nimport { useSlider } from \"./useSlider\";\nimport { SliderContext } from \"./Slider.context\";\n\nexport const Slider = <T extends number | number[]>(props: SliderProps<T>) => {\n const merged = mergeProps(\n {\n orientation: \"horizontal\",\n max: 100,\n min: 0,\n step: 1,\n disabled: false,\n } as const,\n props,\n );\n\n const [local, others] = splitProps(merged, [\n \"defaultValue\",\n \"value\",\n \"max\",\n \"min\",\n \"step\",\n \"orientation\",\n \"onValueChange\",\n \"disabled\",\n \"class\",\n \"classList\",\n ]);\n\n const { context } = useSlider({\n get local() {\n return local;\n },\n });\n\n return (\n <SliderContext.Provider value={context}>\n <div\n data-slot=\"slider\"\n data-orientation={local.orientation}\n class={clsx(classes, local.class)}\n {...others}\n >\n <SliderControl>\n <SliderTrack>\n <SliderIndicator />\n </SliderTrack>\n\n <For each={Array.from({ length: context.values().length })}>\n {(_, idx) => <SliderThumb index={idx()} />}\n </For>\n </SliderControl>\n </div>\n </SliderContext.Provider>\n );\n};\n"],"mappings":";;;;;;;;;;;qDAWaY,KAAuCC,MAA0B;CAY5E,IAAM,CAACS,GAAOC,KAAUrB,EAXTD,EACb;EACEe,aAAa;EACbC,KAAK;EACLC,KAAK;EACLC,MAAM;EACNC,UAAU;EACX,EACDP,EACD,EAE0C;EACzC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAAC,EAEI,EAAEW,eAAYd,EAAU,EAC5B,IAAIY,QAAQ;AACV,SAAOA;IAEV,CAAC;AAEF,QAAAG,EACGd,EAAce,UAAQ;EAACC,OAAOH;EAAO,IAAAI,WAAA;GAAA,IAAAC,IAAAC,GAAA;AAaY,UAbZC,EAAAF,GAAAG,EAAA;IAAA,IAAA,qBAAA;AAAA,YAGhBV,EAAMN;;IAAW,IAAA,QAAA;AAAA,YAC5BZ,EAAKC,GAASiB,EAAMY,MAAM;;IAAA,EAC7BX,EAAM,EAAA,IAAA,GAAA,EAAAY,EAAAN,GAAAJ,EAETnB,GAAa,EAAA,IAAAsB,WAAA;AAAA,WAAA,CAAAH,EACXlB,GAAW,EAAA,IAAAqB,WAAA;AAAA,YAAAH,EACTjB,GAAe,EAAA,CAAA;OAAA,CAAA,EAAAiB,EAGjBzB,GAAG;KAAA,IAACoC,OAAI;AAAA,aAAEC,MAAMC,KAAK,EAAEC,QAAQf,EAAQgB,QAAQ,CAACD,QAAQ,CAAC;;KAAAX,WACtDa,GAAGC,MAAGjB,EAAMhB,GAAW,EAAA,IAACkC,QAAK;AAAA,aAAED,GAAK;QAAA,CAAA;KAAI,CAAA,CAAA;MAAA,CAAA,CAAA,EAAAb;;EAAA,CAAA"}
@@ -0,0 +1 @@
1
+ export declare const classes = "data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full";
@@ -0,0 +1,6 @@
1
+ //#region src/components/slider/Slider/Slider.styles.ts
2
+ var e = "data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full";
3
+ //#endregion
4
+ export { e as classes };
5
+
6
+ //# sourceMappingURL=Slider.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Slider.styles.js","names":[],"sources":["../../../../src/components/slider/Slider/Slider.styles.ts"],"sourcesContent":["export const classes =\n \"data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full\";\n"],"mappings":";AAAA,IAAa,IACX"}
@@ -0,0 +1,13 @@
1
+ import { BaseProps, PolymorphicProps } from '../../../types';
2
+ interface BaseSliderProps<T> {
3
+ defaultValue?: T;
4
+ value?: T;
5
+ min?: number;
6
+ max?: number;
7
+ step?: number;
8
+ orientation?: "horizontal" | "vertical";
9
+ onValueChange?: (value: T) => void;
10
+ disabled?: boolean;
11
+ }
12
+ export type SliderProps<T extends number | number[]> = PolymorphicProps<"div", BaseProps & BaseSliderProps<T>, false>;
13
+ export {};
@@ -0,0 +1,2 @@
1
+ export { Slider } from './Slider';
2
+ export { useSliderContext } from './Slider.context';
@@ -0,0 +1,19 @@
1
+ import { SliderProps } from './Slider.types';
2
+ import { NonNullableProps } from '../../../types';
3
+ export declare const useSlider: <T extends number | number[]>({ local, }: {
4
+ local: NonNullableProps<Pick<SliderProps<T>, "defaultValue" | "value" | "max" | "min" | "step" | "orientation" | "onValueChange" | "disabled">, "max" | "min" | "step" | "orientation" | "disabled">;
5
+ }) => {
6
+ context: {
7
+ values: import('solid-js').Accessor<number[]>;
8
+ min: () => number;
9
+ max: () => number;
10
+ step: () => number;
11
+ orientation: () => "horizontal" | "vertical";
12
+ disabled: () => boolean;
13
+ activeThumbIndex: import('solid-js').Accessor<number>;
14
+ setActiveThumbIndex: import('solid-js').Setter<number>;
15
+ updateValue: (index: number, rawValue: number) => void;
16
+ trackRef: () => HTMLDivElement | undefined;
17
+ setTrackRef: (el: HTMLDivElement) => void;
18
+ };
19
+ };
@@ -0,0 +1,33 @@
1
+ import { createMemo as e, createSignal as t } from "solid-js";
2
+ //#region src/components/slider/Slider/useSlider.ts
3
+ var n = ({ local: n }) => {
4
+ let r = Array.isArray(n.value ?? n.defaultValue), i = (e) => e === void 0 ? [n.min] : Array.isArray(e) ? e : [e], a = () => n.value !== void 0, [o, s] = t(i(n.defaultValue)), c = e(() => a() ? i(n.value) : o()), l = (e) => r ? e : e[0], [u, d] = t(0), f, p = () => f, m = (e) => {
5
+ f = e;
6
+ }, h = e(() => {
7
+ let e = n.step.toString(), t = e.indexOf(".");
8
+ return t === -1 ? 0 : e.length - t - 1;
9
+ }), g = (e) => {
10
+ let { min: t, max: r, step: i } = n, a = Math.round((e - t) / i) * i + t, o = parseFloat(a.toFixed(h()));
11
+ return Math.min(r, Math.max(t, o));
12
+ };
13
+ return { context: {
14
+ values: c,
15
+ min: () => n.min,
16
+ max: () => n.max,
17
+ step: () => n.step,
18
+ orientation: () => n.orientation,
19
+ disabled: () => n.disabled,
20
+ activeThumbIndex: u,
21
+ setActiveThumbIndex: d,
22
+ updateValue: (e, t) => {
23
+ let r = c().slice(), i = g(t);
24
+ e > 0 && i <= r[e - 1] && (i = g(r[e - 1] + n.step)), e < r.length - 1 && i >= r[e + 1] && (i = g(r[e + 1] - n.step)), r[e] = i, a() || s(r), n.onValueChange?.(l(r));
25
+ },
26
+ trackRef: p,
27
+ setTrackRef: m
28
+ } };
29
+ };
30
+ //#endregion
31
+ export { n as useSlider };
32
+
33
+ //# sourceMappingURL=useSlider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSlider.js","names":[],"sources":["../../../../src/components/slider/Slider/useSlider.ts"],"sourcesContent":["import { createMemo, createSignal } from \"solid-js\";\nimport type { SliderProps } from \"./Slider.types\";\nimport type { NonNullableProps } from \"~/types\";\n\nexport const useSlider = <T extends number | number[]>({\n local,\n}: {\n local: NonNullableProps<\n Pick<\n SliderProps<T>,\n | \"defaultValue\"\n | \"value\"\n | \"max\"\n | \"min\"\n | \"step\"\n | \"orientation\"\n | \"onValueChange\"\n | \"disabled\"\n >,\n \"max\" | \"min\" | \"step\" | \"orientation\" | \"disabled\"\n >;\n}) => {\n // 由初始传入的类型一次性决定,运行时不再改变\n const isArray = Array.isArray(local.value ?? local.defaultValue);\n\n // 将外部的 T 统一转为内部 number[]\n const toArray = (v: T | undefined): number[] => {\n if (v === undefined) return [local.min];\n return Array.isArray(v) ? v : [v as number];\n };\n\n // 受控 / 非受控模式\n const isControlled = () => local.value !== undefined;\n\n const [internalValues, setInternalValues] = createSignal<number[]>(\n toArray(local.defaultValue),\n );\n\n const values = createMemo<number[]>(() =>\n isControlled() ? toArray(local.value) : internalValues(),\n );\n\n // 将内部 number[] 还原为外部类型 T\n const toExternal = (arr: number[]): T => (isArray ? arr : arr[0]) as T;\n\n // 当前被拖拽的 thumb 索引\n const [activeThumbIndex, setActiveThumbIndex] = createSignal(0);\n\n // track DOM 引用(由 SliderTrack 注入)\n let trackEl: HTMLDivElement | undefined;\n const trackRef = () => trackEl;\n const setTrackRef = (el: HTMLDivElement) => {\n trackEl = el;\n };\n\n /** 从 step 推导需要保留的小数位数,例如 step=0.05 → 2 位 */\n const stepDecimals = createMemo(() => {\n const s = local.step.toString();\n const dot = s.indexOf(\".\");\n return dot === -1 ? 0 : s.length - dot - 1;\n });\n\n /** 将原始数值 snap 到 step 并 clamp 到 [min, max] */\n const snapValue = (raw: number) => {\n const { min, max, step } = local;\n const snapped = Math.round((raw - min) / step) * step + min;\n const fixed = parseFloat(snapped.toFixed(stepDecimals()));\n return Math.min(max, Math.max(min, fixed));\n };\n\n const updateValue = (index: number, rawValue: number) => {\n const next = values().slice();\n let snapped = snapValue(rawValue);\n\n // 防止 thumbs 交叉(多 thumb 场景)\n if (index > 0 && snapped <= next[index - 1]) {\n snapped = snapValue(next[index - 1] + local.step);\n }\n if (index < next.length - 1 && snapped >= next[index + 1]) {\n snapped = snapValue(next[index + 1] - local.step);\n }\n\n next[index] = snapped;\n\n if (!isControlled()) setInternalValues(next);\n local.onValueChange?.(toExternal(next));\n };\n\n const context = {\n values,\n min: () => local.min,\n max: () => local.max,\n step: () => local.step,\n orientation: () => local.orientation,\n disabled: () => local.disabled,\n activeThumbIndex,\n setActiveThumbIndex,\n updateValue,\n trackRef,\n setTrackRef,\n };\n\n return { context };\n};\n"],"mappings":";;AAIA,IAAa,KAA0C,EACrD,eAgBI;CAEJ,IAAM,IAAU,MAAM,QAAQ,EAAM,SAAS,EAAM,aAAa,EAG1D,KAAW,MACX,MAAM,KAAA,IAAkB,CAAC,EAAM,IAAI,GAChC,MAAM,QAAQ,EAAE,GAAG,IAAI,CAAC,EAAY,EAIvC,UAAqB,EAAM,UAAU,KAAA,GAErC,CAAC,GAAgB,KAAqB,EAC1C,EAAQ,EAAM,aAAa,CAC5B,EAEK,IAAS,QACb,GAAc,GAAG,EAAQ,EAAM,MAAM,GAAG,GAAgB,CACzD,EAGK,KAAc,MAAsB,IAAU,IAAM,EAAI,IAGxD,CAAC,GAAkB,KAAuB,EAAa,EAAE,EAG3D,GACE,UAAiB,GACjB,KAAe,MAAuB;AAC1C,MAAU;IAIN,IAAe,QAAiB;EACpC,IAAM,IAAI,EAAM,KAAK,UAAU,EACzB,IAAM,EAAE,QAAQ,IAAI;AAC1B,SAAO,MAAQ,KAAK,IAAI,EAAE,SAAS,IAAM;GACzC,EAGI,KAAa,MAAgB;EACjC,IAAM,EAAE,QAAK,QAAK,YAAS,GACrB,IAAU,KAAK,OAAO,IAAM,KAAO,EAAK,GAAG,IAAO,GAClD,IAAQ,WAAW,EAAQ,QAAQ,GAAc,CAAC,CAAC;AACzD,SAAO,KAAK,IAAI,GAAK,KAAK,IAAI,GAAK,EAAM,CAAC;;AAmC5C,QAAO,EAAE,SAdO;EACd;EACA,WAAW,EAAM;EACjB,WAAW,EAAM;EACjB,YAAY,EAAM;EAClB,mBAAmB,EAAM;EACzB,gBAAgB,EAAM;EACtB;EACA;EACA,cA3BmB,GAAe,MAAqB;GACvD,IAAM,IAAO,GAAQ,CAAC,OAAO,EACzB,IAAU,EAAU,EAAS;AAajC,GAVI,IAAQ,KAAK,KAAW,EAAK,IAAQ,OACvC,IAAU,EAAU,EAAK,IAAQ,KAAK,EAAM,KAAK,GAE/C,IAAQ,EAAK,SAAS,KAAK,KAAW,EAAK,IAAQ,OACrD,IAAU,EAAU,EAAK,IAAQ,KAAK,EAAM,KAAK,GAGnD,EAAK,KAAS,GAET,GAAc,IAAE,EAAkB,EAAK,EAC5C,EAAM,gBAAgB,EAAW,EAAK,CAAC;;EAavC;EACA;EACD,EAEiB"}
@@ -0,0 +1,2 @@
1
+ import { SliderControlProps } from './SliderControl.types';
2
+ export declare const SliderControl: (props: SliderControlProps) => import("solid-js").JSX.Element;
@@ -0,0 +1,33 @@
1
+ import { clsx as e } from "../../../utils/clsx.js";
2
+ import { classes as t } from "./SliderControl.styles.js";
3
+ import { useSliderControl as n } from "./useSliderControl.js";
4
+ import { useSliderContext as r } from "../Slider/Slider.context.js";
5
+ import { addEventListener as i, delegateEvents as a, mergeProps as o, spread as s, template as c } from "solid-js/web";
6
+ import { splitProps as l } from "solid-js";
7
+ //#region src/components/slider/SliderControl/SliderControl.tsx
8
+ var u = /* @__PURE__ */ c("<div>"), d = (a) => {
9
+ let c = r(), [d, f] = l(a, ["class", "classList"]), { handlePointerDown: p, handlePointerMove: m, handlePointerUp: h } = n();
10
+ return (() => {
11
+ var n = u();
12
+ return i(n, "pointerup", h, !0), i(n, "pointermove", m, !0), i(n, "pointerdown", p, !0), s(n, o({
13
+ get "data-orientation"() {
14
+ return c.orientation();
15
+ },
16
+ get "data-disabled"() {
17
+ return c.disabled();
18
+ },
19
+ get class() {
20
+ return e(t, d.class);
21
+ }
22
+ }, f), !1, !1), n;
23
+ })();
24
+ };
25
+ a([
26
+ "pointerdown",
27
+ "pointermove",
28
+ "pointerup"
29
+ ]);
30
+ //#endregion
31
+ export { d as SliderControl };
32
+
33
+ //# sourceMappingURL=SliderControl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SliderControl.js","names":["splitProps","SliderControlProps","clsx","classes","useSliderControl","useSliderContext","SliderControl","props","ctx","local","others","handlePointerDown","handlePointerMove","handlePointerUp","_el$","_tmpl$","_$addEventListener","_$spread","_$mergeProps","data-orientation","orientation","data-disabled","disabled","class","_$delegateEvents"],"sources":["../../../../src/components/slider/SliderControl/SliderControl.tsx"],"sourcesContent":["import { splitProps } from \"solid-js\";\nimport type { SliderControlProps } from \"./SliderControl.types\";\nimport { clsx } from \"~/utils\";\nimport { classes } from \"./SliderControl.styles\";\nimport { useSliderControl } from \"./useSliderControl\";\nimport { useSliderContext } from \"../Slider\";\n\nexport const SliderControl = (props: SliderControlProps) => {\n const ctx = useSliderContext();\n\n const [local, others] = splitProps(props, [\"class\", \"classList\"]);\n\n const { handlePointerDown, handlePointerMove, handlePointerUp } =\n useSliderControl();\n\n return (\n <div\n data-orientation={ctx.orientation()}\n data-disabled={ctx.disabled()}\n onPointerDown={handlePointerDown}\n onPointerMove={handlePointerMove}\n onPointerUp={handlePointerUp}\n class={clsx(classes, local.class)}\n {...others}\n />\n );\n};\n"],"mappings":";;;;;;;oCAOaM,KAAiBC,MAA8B;CAC1D,IAAMC,IAAMH,GAAkB,EAExB,CAACI,GAAOC,KAAUV,EAAWO,GAAO,CAAC,SAAS,YAAY,CAAC,EAE3D,EAAEI,sBAAmBC,sBAAmBC,uBAC5CT,GAAkB;AAEpB,eAAA;EAAA,IAAAU,IAAAC,GAAA;AAQc,SARdC,EAAAF,GAAA,aAMiBD,GAAe,GAAA,EAAAG,EAAAF,GAAA,eADbF,GAAiB,GAAA,EAAAI,EAAAF,GAAA,eADjBH,GAAiB,GAAA,EAAAM,EAAAH,GAAAI,EAAA;GAAA,IAAA,qBAAA;AAAA,WAFdV,EAAIY,aAAa;;GAAA,IAAA,kBAAA;AAAA,WACpBZ,EAAIc,UAAU;;GAAA,IAAA,QAAA;AAAA,WAItBpB,EAAKC,GAASM,EAAMc,MAAM;;GAAA,EAC7Bb,EAAM,EAAA,IAAA,GAAA,EAAAI;KAAA;;AAGdU,EAAA;CAAA;CAAA;CAAA;CAAA,CAAA"}
@@ -0,0 +1 @@
1
+ export declare const classes = "relative flex w-full touch-none items-center select-none data-[disabled=true]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-40 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col";
@@ -0,0 +1,6 @@
1
+ //#region src/components/slider/SliderControl/SliderControl.styles.ts
2
+ var e = "relative flex w-full touch-none items-center select-none data-[disabled=true]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-40 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col";
3
+ //#endregion
4
+ export { e as classes };
5
+
6
+ //# sourceMappingURL=SliderControl.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SliderControl.styles.js","names":[],"sources":["../../../../src/components/slider/SliderControl/SliderControl.styles.ts"],"sourcesContent":["export const classes =\n \"relative flex w-full touch-none items-center select-none data-[disabled=true]:opacity-50 data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-40 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col\";\n"],"mappings":";AAAA,IAAa,IACX"}
@@ -0,0 +1,2 @@
1
+ import { BaseProps, PolymorphicProps } from '../../../types';
2
+ export type SliderControlProps = PolymorphicProps<"div", BaseProps, false>;
@@ -0,0 +1 @@
1
+ export { SliderControl } from './SliderControl';
@@ -0,0 +1,5 @@
1
+ export declare const useSliderControl: () => {
2
+ handlePointerDown: (e: PointerEvent) => void;
3
+ handlePointerMove: (e: PointerEvent) => void;
4
+ handlePointerUp: (e: PointerEvent) => void;
5
+ };
@@ -0,0 +1,36 @@
1
+ import { useSliderContext as e } from "../Slider/Slider.context.js";
2
+ //#region src/components/slider/SliderControl/useSliderControl.ts
3
+ var t = () => {
4
+ let t = e(), n = (e, n) => {
5
+ let r = t.trackRef();
6
+ if (!r) return t.min();
7
+ let i = r.getBoundingClientRect(), a = t.orientation() === "vertical", o;
8
+ return o = a ? 1 - (n - i.top) / i.height : (e - i.left) / i.width, t.min() + o * (t.max() - t.min());
9
+ }, r = (e) => {
10
+ let n = t.values(), r = 0, i = Infinity;
11
+ return n.forEach((t, n) => {
12
+ let a = Math.abs(t - e);
13
+ a < i && (i = a, r = n);
14
+ }), r;
15
+ };
16
+ return {
17
+ handlePointerDown: (e) => {
18
+ if (t.disabled() || e.button !== 0) return;
19
+ let i = n(e.clientX, e.clientY), a = r(i);
20
+ t.setActiveThumbIndex(a), t.updateValue(a, i), e.currentTarget.setPointerCapture(e.pointerId);
21
+ },
22
+ handlePointerMove: (e) => {
23
+ if (t.disabled() || !e.currentTarget.hasPointerCapture(e.pointerId)) return;
24
+ let r = n(e.clientX, e.clientY);
25
+ t.updateValue(t.activeThumbIndex(), r);
26
+ },
27
+ handlePointerUp: (e) => {
28
+ let t = e.currentTarget;
29
+ t.hasPointerCapture(e.pointerId) && t.releasePointerCapture(e.pointerId);
30
+ }
31
+ };
32
+ };
33
+ //#endregion
34
+ export { t as useSliderControl };
35
+
36
+ //# sourceMappingURL=useSliderControl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSliderControl.js","names":[],"sources":["../../../../src/components/slider/SliderControl/useSliderControl.ts"],"sourcesContent":["import { useSliderContext } from \"../Slider\";\n\nexport const useSliderControl = () => {\n const ctx = useSliderContext();\n\n /** 将页面坐标转为 slider 值 */\n const coordToValue = (clientX: number, clientY: number): number => {\n const track = ctx.trackRef();\n if (!track) return ctx.min();\n\n const rect = track.getBoundingClientRect();\n const isVertical = ctx.orientation() === \"vertical\";\n\n let ratio: number;\n if (isVertical) {\n // 垂直方向:底部为 min,顶部为 max\n ratio = 1 - (clientY - rect.top) / rect.height;\n } else {\n ratio = (clientX - rect.left) / rect.width;\n }\n\n return ctx.min() + ratio * (ctx.max() - ctx.min());\n };\n\n /** 找到距离点击位置最近的 thumb 索引 */\n const closestThumbIndex = (value: number): number => {\n const vals = ctx.values();\n let closest = 0;\n let minDist = Infinity;\n vals.forEach((v, i) => {\n const dist = Math.abs(v - value);\n if (dist < minDist) {\n minDist = dist;\n closest = i;\n }\n });\n return closest;\n };\n\n const handlePointerDown = (e: PointerEvent) => {\n if (ctx.disabled()) return;\n if (e.button !== 0) return;\n\n const value = coordToValue(e.clientX, e.clientY);\n const index = closestThumbIndex(value);\n\n ctx.setActiveThumbIndex(index);\n ctx.updateValue(index, value);\n\n const el = e.currentTarget as HTMLElement;\n el.setPointerCapture(e.pointerId);\n };\n\n const handlePointerMove = (e: PointerEvent) => {\n if (ctx.disabled()) return;\n // 只有在 pointer 被捕获(即 pointerdown 后)才处理\n if (!(e.currentTarget as HTMLElement).hasPointerCapture(e.pointerId))\n return;\n\n const value = coordToValue(e.clientX, e.clientY);\n ctx.updateValue(ctx.activeThumbIndex(), value);\n };\n\n const handlePointerUp = (e: PointerEvent) => {\n const el = e.currentTarget as HTMLElement;\n if (el.hasPointerCapture(e.pointerId)) {\n el.releasePointerCapture(e.pointerId);\n }\n };\n\n return {\n handlePointerDown,\n handlePointerMove,\n handlePointerUp,\n };\n};\n"],"mappings":";;AAEA,IAAa,UAAyB;CACpC,IAAM,IAAM,GAAkB,EAGxB,KAAgB,GAAiB,MAA4B;EACjE,IAAM,IAAQ,EAAI,UAAU;AAC5B,MAAI,CAAC,EAAO,QAAO,EAAI,KAAK;EAE5B,IAAM,IAAO,EAAM,uBAAuB,EACpC,IAAa,EAAI,aAAa,KAAK,YAErC;AAQJ,SAPA,AAIE,IAJE,IAEM,KAAK,IAAU,EAAK,OAAO,EAAK,UAE/B,IAAU,EAAK,QAAQ,EAAK,OAGhC,EAAI,KAAK,GAAG,KAAS,EAAI,KAAK,GAAG,EAAI,KAAK;IAI7C,KAAqB,MAA0B;EACnD,IAAM,IAAO,EAAI,QAAQ,EACrB,IAAU,GACV,IAAU;AAQd,SAPA,EAAK,SAAS,GAAG,MAAM;GACrB,IAAM,IAAO,KAAK,IAAI,IAAI,EAAM;AAChC,GAAI,IAAO,MACT,IAAU,GACV,IAAU;IAEZ,EACK;;AAkCT,QAAO;EACL,oBAhCyB,MAAoB;AAE7C,OADI,EAAI,UAAU,IACd,EAAE,WAAW,EAAG;GAEpB,IAAM,IAAQ,EAAa,EAAE,SAAS,EAAE,QAAQ,EAC1C,IAAQ,EAAkB,EAAM;AAK3B,GAHX,EAAI,oBAAoB,EAAM,EAC9B,EAAI,YAAY,GAAO,EAAM,EAElB,EAAE,cACV,kBAAkB,EAAE,UAAU;;EAsBjC,oBAnByB,MAAoB;AAG7C,OAFI,EAAI,UAAU,IAEd,CAAE,EAAE,cAA8B,kBAAkB,EAAE,UAAU,CAClE;GAEF,IAAM,IAAQ,EAAa,EAAE,SAAS,EAAE,QAAQ;AAChD,KAAI,YAAY,EAAI,kBAAkB,EAAE,EAAM;;EAa9C,kBAVuB,MAAoB;GAC3C,IAAM,IAAK,EAAE;AACb,GAAI,EAAG,kBAAkB,EAAE,UAAU,IACnC,EAAG,sBAAsB,EAAE,UAAU;;EAQxC"}
@@ -0,0 +1,2 @@
1
+ import { SliderIndicatorProps } from './SliderIndicator.types';
2
+ export declare const SliderIndicator: (props: SliderIndicatorProps) => import("solid-js").JSX.Element;
@@ -0,0 +1,28 @@
1
+ import { clsx as e } from "../../../utils/clsx.js";
2
+ import { classes as t } from "./SliderIndicator.styles.js";
3
+ import { useSliderIndicator as n } from "./useSliderIndicator.js";
4
+ import { useSliderContext as r } from "../Slider/Slider.context.js";
5
+ import { mergeProps as i, spread as a, template as o } from "solid-js/web";
6
+ import { splitProps as s } from "solid-js";
7
+ //#region src/components/slider/SliderIndicator/SliderIndicator.tsx
8
+ var c = /* @__PURE__ */ o("<div data-slot=slider-range>"), l = (o) => {
9
+ let l = r(), [u, d] = s(o, ["class", "classList"]), { indicatorStyle: f } = n();
10
+ return (() => {
11
+ var n = c();
12
+ return a(n, i({
13
+ get "data-orientation"() {
14
+ return l.orientation();
15
+ },
16
+ get class() {
17
+ return e(t, u.class);
18
+ },
19
+ get style() {
20
+ return f();
21
+ }
22
+ }, d), !1, !1), n;
23
+ })();
24
+ };
25
+ //#endregion
26
+ export { l as SliderIndicator };
27
+
28
+ //# sourceMappingURL=SliderIndicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SliderIndicator.js","names":["splitProps","SliderIndicatorProps","clsx","classes","useSliderIndicator","useSliderContext","SliderIndicator","props","ctx","local","others","indicatorStyle","_el$","_tmpl$","_$spread","_$mergeProps","data-orientation","orientation","class","style"],"sources":["../../../../src/components/slider/SliderIndicator/SliderIndicator.tsx"],"sourcesContent":["import { splitProps } from \"solid-js\";\nimport type { SliderIndicatorProps } from \"./SliderIndicator.types\";\nimport { clsx } from \"~/utils\";\nimport { classes } from \"./SliderIndicator.styles\";\nimport { useSliderIndicator } from \"./useSliderIndicator\";\nimport { useSliderContext } from \"../Slider\";\n\nexport const SliderIndicator = (props: SliderIndicatorProps) => {\n const ctx = useSliderContext();\n\n const [local, others] = splitProps(props, [\"class\", \"classList\"]);\n\n const { indicatorStyle } = useSliderIndicator();\n\n return (\n <div\n data-slot=\"slider-range\"\n data-orientation={ctx.orientation()}\n class={clsx(classes, local.class)}\n style={indicatorStyle()}\n {...others}\n />\n );\n};\n"],"mappings":";;;;;;;2DAOaM,KAAmBC,MAAgC;CAC9D,IAAMC,IAAMH,GAAkB,EAExB,CAACI,GAAOC,KAAUV,EAAWO,GAAO,CAAC,SAAS,YAAY,CAAC,EAE3D,EAAEI,sBAAmBP,GAAoB;AAE/C,eAAA;EAAA,IAAAQ,IAAAC,GAAA;AAMc,SANdC,EAAAF,GAAAG,EAAA;GAAA,IAAA,qBAAA;AAAA,WAGsBP,EAAIS,aAAa;;GAAA,IAAA,QAAA;AAAA,WAC5Bf,EAAKC,GAASM,EAAMS,MAAM;;GAAA,IACjCC,QAAK;AAAA,WAAER,GAAgB;;GAAA,EACnBD,EAAM,EAAA,IAAA,GAAA,EAAAE;KAAA"}