moduix 0.11.0 → 0.11.2

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 (348) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +13 -3
  3. package/dist/components/Accordion/Accordion.css +99 -0
  4. package/dist/components/Accordion/Accordion.d.ts +17 -9
  5. package/dist/components/Accordion/Accordion.js +60 -0
  6. package/dist/components/Accordion/Accordion.module.js +12 -0
  7. package/dist/components/Accordion/index.d.ts +1 -1
  8. package/dist/components/Alert/Alert.css +114 -0
  9. package/dist/components/Alert/Alert.d.ts +30 -10
  10. package/dist/components/Alert/Alert.js +44 -0
  11. package/dist/components/Alert/Alert.module.js +11 -0
  12. package/dist/components/Alert/index.d.ts +1 -1
  13. package/dist/components/AlertDialog/AlertDialog.css +159 -0
  14. package/dist/components/AlertDialog/AlertDialog.d.ts +66 -19
  15. package/dist/components/AlertDialog/AlertDialog.js +107 -0
  16. package/dist/components/AlertDialog/AlertDialog.module.js +18 -0
  17. package/dist/components/AlertDialog/index.d.ts +1 -1
  18. package/dist/components/AspectRatio/AspectRatio.css +14 -0
  19. package/dist/components/AspectRatio/AspectRatio.d.ts +12 -5
  20. package/dist/components/AspectRatio/AspectRatio.js +24 -0
  21. package/dist/components/AspectRatio/AspectRatio.module.js +5 -0
  22. package/dist/components/AspectRatio/index.d.ts +1 -2
  23. package/dist/components/Autocomplete/Autocomplete.css +454 -0
  24. package/dist/components/Autocomplete/Autocomplete.d.ts +40 -37
  25. package/dist/components/Autocomplete/Autocomplete.js +271 -0
  26. package/dist/components/Autocomplete/Autocomplete.module.js +37 -0
  27. package/dist/components/Autocomplete/index.d.ts +1 -1
  28. package/dist/components/Avatar/Avatar.css +74 -0
  29. package/dist/components/Avatar/Avatar.d.ts +19 -6
  30. package/dist/components/Avatar/Avatar.js +29 -0
  31. package/dist/components/Avatar/Avatar.module.js +9 -0
  32. package/dist/components/Avatar/index.d.ts +1 -1
  33. package/dist/components/Badge/Badge.css +66 -0
  34. package/dist/components/Badge/Badge.d.ts +15 -6
  35. package/dist/components/Badge/Badge.js +22 -0
  36. package/dist/components/Badge/Badge.module.js +8 -0
  37. package/dist/components/Badge/index.d.ts +1 -1
  38. package/dist/components/Bleed/Bleed.css +51 -0
  39. package/dist/components/Bleed/Bleed.d.ts +15 -6
  40. package/dist/components/Bleed/Bleed.js +15 -0
  41. package/dist/components/Bleed/Bleed.module.js +5 -0
  42. package/dist/components/Bleed/index.d.ts +1 -1
  43. package/dist/components/Breadcrumbs/Breadcrumbs.css +88 -0
  44. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +38 -10
  45. package/dist/components/Breadcrumbs/Breadcrumbs.js +66 -0
  46. package/dist/components/Breadcrumbs/Breadcrumbs.module.js +13 -0
  47. package/dist/components/Breadcrumbs/index.d.ts +1 -1
  48. package/dist/components/Button/Button.css +194 -0
  49. package/dist/components/Button/Button.d.ts +9 -7
  50. package/dist/components/Button/Button.js +18 -0
  51. package/dist/components/Button/Button.module.js +5 -0
  52. package/dist/components/Button/index.d.ts +1 -2
  53. package/dist/components/Card/Card.css +136 -0
  54. package/dist/components/Card/Card.d.ts +45 -15
  55. package/dist/components/Card/Card.js +72 -0
  56. package/dist/components/Card/Card.module.js +14 -0
  57. package/dist/components/Card/index.d.ts +1 -2
  58. package/dist/components/Checkbox/Checkbox.css +131 -0
  59. package/dist/components/Checkbox/Checkbox.d.ts +27 -10
  60. package/dist/components/Checkbox/Checkbox.js +59 -0
  61. package/dist/components/Checkbox/Checkbox.module.js +13 -0
  62. package/dist/components/Checkbox/index.d.ts +1 -1
  63. package/dist/components/CheckboxGroup/CheckboxGroup.css +33 -0
  64. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +27 -9
  65. package/dist/components/CheckboxGroup/CheckboxGroup.js +50 -0
  66. package/dist/components/CheckboxGroup/CheckboxGroup.module.js +11 -0
  67. package/dist/components/CheckboxGroup/index.d.ts +1 -1
  68. package/dist/components/CloseButton/CloseButton.css +49 -0
  69. package/dist/components/CloseButton/CloseButton.d.ts +4 -2
  70. package/dist/components/CloseButton/CloseButton.js +22 -0
  71. package/dist/components/CloseButton/CloseButton.module.js +5 -0
  72. package/dist/components/Collapsible/Collapsible.css +92 -0
  73. package/dist/components/Collapsible/Collapsible.d.ts +14 -6
  74. package/dist/components/Collapsible/Collapsible.js +44 -0
  75. package/dist/components/Collapsible/Collapsible.module.js +10 -0
  76. package/dist/components/Collapsible/index.d.ts +1 -1
  77. package/dist/components/Combobox/Combobox.css +497 -0
  78. package/dist/components/Combobox/Combobox.d.ts +58 -43
  79. package/dist/components/Combobox/Combobox.js +295 -0
  80. package/dist/components/Combobox/Combobox.module.js +42 -0
  81. package/dist/components/Combobox/index.d.ts +1 -1
  82. package/dist/components/CommandPalette/CommandPalette.css +375 -0
  83. package/dist/components/CommandPalette/CommandPalette.d.ts +134 -42
  84. package/dist/components/CommandPalette/CommandPalette.js +278 -0
  85. package/dist/components/CommandPalette/CommandPalette.module.js +30 -0
  86. package/dist/components/CommandPalette/index.d.ts +1 -1
  87. package/dist/components/Container/Container.css +45 -0
  88. package/dist/components/Container/Container.d.ts +15 -6
  89. package/dist/components/Container/Container.js +15 -0
  90. package/dist/components/Container/Container.module.js +5 -0
  91. package/dist/components/Container/index.d.ts +1 -1
  92. package/dist/components/ContextMenu/ContextMenu.css +308 -0
  93. package/dist/components/ContextMenu/ContextMenu.d.ts +131 -38
  94. package/dist/components/ContextMenu/ContextMenu.js +215 -0
  95. package/dist/components/ContextMenu/ContextMenu.module.js +33 -0
  96. package/dist/components/ContextMenu/index.d.ts +1 -2
  97. package/dist/components/CopyButton/CopyButton.css +14 -0
  98. package/dist/components/CopyButton/CopyButton.d.ts +14 -13
  99. package/dist/components/CopyButton/CopyButton.js +66 -0
  100. package/dist/components/CopyButton/CopyButton.module.js +5 -0
  101. package/dist/components/CopyButton/index.d.ts +1 -2
  102. package/dist/components/Dialog/Dialog.css +186 -0
  103. package/dist/components/Dialog/Dialog.d.ts +68 -18
  104. package/dist/components/Dialog/Dialog.js +122 -0
  105. package/dist/components/Dialog/Dialog.module.js +18 -0
  106. package/dist/components/Dialog/index.d.ts +1 -1
  107. package/dist/components/Drawer/Drawer.css +483 -0
  108. package/dist/components/Drawer/Drawer.d.ts +95 -27
  109. package/dist/components/Drawer/Drawer.js +182 -0
  110. package/dist/components/Drawer/Drawer.module.js +24 -0
  111. package/dist/components/Drawer/index.d.ts +1 -1
  112. package/dist/components/Empty/Empty.css +78 -0
  113. package/dist/components/Empty/Empty.d.ts +31 -9
  114. package/dist/components/Empty/Empty.js +48 -0
  115. package/dist/components/Empty/Empty.module.js +12 -0
  116. package/dist/components/Empty/index.d.ts +1 -1
  117. package/dist/components/Field/Field.css +86 -0
  118. package/dist/components/Field/Field.d.ts +30 -9
  119. package/dist/components/Field/Field.js +50 -0
  120. package/dist/components/Field/Field.module.js +12 -0
  121. package/dist/components/Field/index.d.ts +1 -1
  122. package/dist/components/Fieldset/Fieldset.css +39 -0
  123. package/dist/components/Fieldset/Fieldset.d.ts +13 -4
  124. package/dist/components/Fieldset/Fieldset.js +21 -0
  125. package/dist/components/Fieldset/Fieldset.module.js +8 -0
  126. package/dist/components/Fieldset/index.d.ts +1 -1
  127. package/dist/components/Form/Form.css +9 -0
  128. package/dist/components/Form/Form.d.ts +6 -3
  129. package/dist/components/Form/Form.js +16 -0
  130. package/dist/components/Form/Form.module.js +5 -0
  131. package/dist/components/Form/index.d.ts +1 -1
  132. package/dist/components/Heading/Heading.css +50 -0
  133. package/dist/components/Heading/Heading.d.ts +21 -13
  134. package/dist/components/Heading/Heading.js +23 -0
  135. package/dist/components/Heading/Heading.module.js +5 -0
  136. package/dist/components/Heading/index.d.ts +1 -1
  137. package/dist/components/Input/Input.css +78 -0
  138. package/dist/components/Input/Input.d.ts +10 -8
  139. package/dist/components/Input/Input.js +18 -0
  140. package/dist/components/Input/Input.module.js +5 -0
  141. package/dist/components/Input/index.d.ts +1 -2
  142. package/dist/components/InputGroup/InputGroup.css +160 -0
  143. package/dist/components/InputGroup/InputGroup.d.ts +14 -10
  144. package/dist/components/InputGroup/InputGroup.js +73 -0
  145. package/dist/components/InputGroup/InputGroup.module.js +11 -0
  146. package/dist/components/InputGroup/index.d.ts +1 -1
  147. package/dist/components/Kbd/Kbd.css +49 -0
  148. package/dist/components/Kbd/Kbd.d.ts +13 -4
  149. package/dist/components/Kbd/Kbd.js +20 -0
  150. package/dist/components/Kbd/Kbd.module.js +8 -0
  151. package/dist/components/Kbd/index.d.ts +1 -1
  152. package/dist/components/Lightbox/Lightbox.css +114 -0
  153. package/dist/components/Lightbox/Lightbox.d.ts +81 -28
  154. package/dist/components/Lightbox/Lightbox.js +208 -0
  155. package/dist/components/Lightbox/Lightbox.module.js +14 -0
  156. package/dist/components/Lightbox/index.d.ts +1 -1
  157. package/dist/components/List/List.css +114 -0
  158. package/dist/components/List/List.d.ts +26 -12
  159. package/dist/components/List/List.js +28 -0
  160. package/dist/components/List/List.module.js +5 -0
  161. package/dist/components/List/index.d.ts +1 -1
  162. package/dist/components/Menu/Menu.css +377 -0
  163. package/dist/components/Menu/Menu.d.ts +141 -41
  164. package/dist/components/Menu/Menu.js +231 -0
  165. package/dist/components/Menu/Menu.module.js +36 -0
  166. package/dist/components/Menu/index.d.ts +1 -2
  167. package/dist/components/Menubar/Menubar.css +387 -0
  168. package/dist/components/Menubar/Menubar.d.ts +144 -42
  169. package/dist/components/Menubar/Menubar.js +232 -0
  170. package/dist/components/Menubar/Menubar.module.js +36 -0
  171. package/dist/components/Menubar/index.d.ts +1 -2
  172. package/dist/components/Meter/Meter.css +46 -0
  173. package/dist/components/Meter/Meter.d.ts +9 -7
  174. package/dist/components/Meter/Meter.js +55 -0
  175. package/dist/components/Meter/Meter.module.js +11 -0
  176. package/dist/components/NavigationMenu/NavigationMenu.css +319 -0
  177. package/dist/components/NavigationMenu/NavigationMenu.d.ts +81 -22
  178. package/dist/components/NavigationMenu/NavigationMenu.js +134 -0
  179. package/dist/components/NavigationMenu/NavigationMenu.module.js +21 -0
  180. package/dist/components/NavigationMenu/index.d.ts +1 -2
  181. package/dist/components/NumberField/NumberField.css +158 -0
  182. package/dist/components/NumberField/NumberField.d.ts +48 -14
  183. package/dist/components/NumberField/NumberField.js +75 -0
  184. package/dist/components/NumberField/NumberField.module.js +13 -0
  185. package/dist/components/NumberField/index.d.ts +1 -2
  186. package/dist/components/OTPField/OTPField.css +78 -0
  187. package/dist/components/OTPField/OTPField.d.ts +19 -5
  188. package/dist/components/OTPField/OTPField.js +39 -0
  189. package/dist/components/OTPField/OTPField.module.js +9 -0
  190. package/dist/components/OTPField/index.d.ts +1 -1
  191. package/dist/components/Pagination/Pagination.css +103 -0
  192. package/dist/components/Pagination/Pagination.d.ts +60 -22
  193. package/dist/components/Pagination/Pagination.js +116 -0
  194. package/dist/components/Pagination/Pagination.module.js +16 -0
  195. package/dist/components/Pagination/index.d.ts +1 -1
  196. package/dist/components/PasswordInput/PasswordInput.css +19 -0
  197. package/dist/components/PasswordInput/PasswordInput.d.ts +14 -12
  198. package/dist/components/PasswordInput/PasswordInput.js +47 -0
  199. package/dist/components/PasswordInput/PasswordInput.module.js +9 -0
  200. package/dist/components/PasswordInput/index.d.ts +1 -2
  201. package/dist/components/Popover/Popover.css +200 -0
  202. package/dist/components/Popover/Popover.d.ts +79 -22
  203. package/dist/components/Popover/Popover.js +131 -0
  204. package/dist/components/Popover/Popover.module.js +22 -0
  205. package/dist/components/Popover/index.d.ts +1 -1
  206. package/dist/components/PreviewCard/PreviewCard.css +136 -0
  207. package/dist/components/PreviewCard/PreviewCard.d.ts +51 -15
  208. package/dist/components/PreviewCard/PreviewCard.js +87 -0
  209. package/dist/components/PreviewCard/PreviewCard.module.js +16 -0
  210. package/dist/components/PreviewCard/index.d.ts +1 -1
  211. package/dist/components/Progress/Progress.css +68 -0
  212. package/dist/components/Progress/Progress.d.ts +9 -7
  213. package/dist/components/Progress/Progress.js +55 -0
  214. package/dist/components/Progress/Progress.module.js +12 -0
  215. package/dist/components/Radio/Radio.css +141 -0
  216. package/dist/components/Radio/Radio.d.ts +39 -14
  217. package/dist/components/Radio/Radio.js +71 -0
  218. package/dist/components/Radio/Radio.module.js +14 -0
  219. package/dist/components/Radio/index.d.ts +1 -1
  220. package/dist/components/Rating/Rating.css +79 -0
  221. package/dist/components/Rating/Rating.d.ts +12 -10
  222. package/dist/components/Rating/Rating.js +61 -0
  223. package/dist/components/Rating/Rating.module.js +9 -0
  224. package/dist/components/Rating/index.d.ts +1 -2
  225. package/dist/components/ScrollArea/ScrollArea.css +205 -0
  226. package/dist/components/ScrollArea/ScrollArea.d.ts +16 -13
  227. package/dist/components/ScrollArea/ScrollArea.js +76 -0
  228. package/dist/components/ScrollArea/ScrollArea.module.js +12 -0
  229. package/dist/components/ScrollArea/index.d.ts +1 -1
  230. package/dist/components/Select/Select.css +357 -0
  231. package/dist/components/Select/Select.d.ts +116 -30
  232. package/dist/components/Select/Select.js +196 -0
  233. package/dist/components/Select/Select.module.js +33 -0
  234. package/dist/components/Select/index.d.ts +1 -1
  235. package/dist/components/Separator/Separator.css +17 -0
  236. package/dist/components/Separator/Separator.d.ts +4 -2
  237. package/dist/components/Separator/Separator.js +16 -0
  238. package/dist/components/Separator/Separator.module.js +5 -0
  239. package/dist/components/Skeleton/Skeleton.css +21 -0
  240. package/dist/components/Skeleton/Skeleton.d.ts +22 -9
  241. package/dist/components/Skeleton/Skeleton.js +25 -0
  242. package/dist/components/Skeleton/Skeleton.module.js +5 -0
  243. package/dist/components/Skeleton/index.d.ts +1 -1
  244. package/dist/components/Slider/Slider.css +115 -0
  245. package/dist/components/Slider/Slider.d.ts +14 -11
  246. package/dist/components/Slider/Slider.js +99 -0
  247. package/dist/components/Slider/Slider.module.js +13 -0
  248. package/dist/components/Slider/index.d.ts +1 -1
  249. package/dist/components/SnapCarousel/SnapCarousel.css +131 -0
  250. package/dist/components/SnapCarousel/SnapCarousel.d.ts +37 -10
  251. package/dist/components/SnapCarousel/SnapCarousel.js +125 -0
  252. package/dist/components/SnapCarousel/SnapCarousel.module.js +13 -0
  253. package/dist/components/SnapCarousel/index.d.ts +1 -2
  254. package/dist/components/Spinner/Spinner.css +60 -0
  255. package/dist/components/Spinner/Spinner.d.ts +16 -6
  256. package/dist/components/Spinner/Spinner.js +28 -0
  257. package/dist/components/Spinner/Spinner.module.js +9 -0
  258. package/dist/components/Spinner/index.d.ts +1 -2
  259. package/dist/components/SplitButton/SplitButton.css +59 -0
  260. package/dist/components/SplitButton/SplitButton.d.ts +39 -20
  261. package/dist/components/SplitButton/SplitButton.js +66 -0
  262. package/dist/components/SplitButton/SplitButton.module.js +9 -0
  263. package/dist/components/SplitButton/index.d.ts +1 -2
  264. package/dist/components/Stack/Stack.css +13 -0
  265. package/dist/components/Stack/Stack.d.ts +27 -13
  266. package/dist/components/Stack/Stack.js +27 -0
  267. package/dist/components/Stack/Stack.module.js +5 -0
  268. package/dist/components/Stack/index.d.ts +1 -1
  269. package/dist/components/Stepper/Stepper.css +174 -0
  270. package/dist/components/Stepper/Stepper.d.ts +55 -16
  271. package/dist/components/Stepper/Stepper.js +131 -0
  272. package/dist/components/Stepper/Stepper.module.js +14 -0
  273. package/dist/components/Stepper/index.d.ts +1 -2
  274. package/dist/components/Switch/Switch.css +138 -0
  275. package/dist/components/Switch/Switch.d.ts +21 -9
  276. package/dist/components/Switch/Switch.js +40 -0
  277. package/dist/components/Switch/Switch.module.js +10 -0
  278. package/dist/components/Switch/index.d.ts +1 -1
  279. package/dist/components/Table/Table.css +107 -0
  280. package/dist/components/Table/Table.d.ts +54 -16
  281. package/dist/components/Table/Table.js +85 -0
  282. package/dist/components/Table/Table.module.js +18 -0
  283. package/dist/components/Table/index.d.ts +1 -1
  284. package/dist/components/Tabs/Tabs.css +181 -0
  285. package/dist/components/Tabs/Tabs.d.ts +10 -8
  286. package/dist/components/Tabs/Tabs.js +66 -0
  287. package/dist/components/Tabs/Tabs.module.js +11 -0
  288. package/dist/components/Text/Text.css +73 -0
  289. package/dist/components/Text/Text.d.ts +20 -9
  290. package/dist/components/Text/Text.js +42 -0
  291. package/dist/components/Text/Text.module.js +5 -0
  292. package/dist/components/Text/index.d.ts +1 -1
  293. package/dist/components/Textarea/Textarea.css +59 -0
  294. package/dist/components/Textarea/Textarea.d.ts +7 -5
  295. package/dist/components/Textarea/Textarea.js +28 -0
  296. package/dist/components/Textarea/Textarea.module.js +5 -0
  297. package/dist/components/Textarea/index.d.ts +1 -2
  298. package/dist/components/Toast/Toast.css +351 -0
  299. package/dist/components/Toast/Toast.d.ts +79 -38
  300. package/dist/components/Toast/Toast.js +263 -0
  301. package/dist/components/Toast/Toast.module.js +26 -0
  302. package/dist/components/Toast/index.d.ts +1 -2
  303. package/dist/components/Toggle/Toggle.css +147 -0
  304. package/dist/components/Toggle/Toggle.d.ts +9 -6
  305. package/dist/components/Toggle/Toggle.js +18 -0
  306. package/dist/components/Toggle/Toggle.module.js +5 -0
  307. package/dist/components/Toggle/index.d.ts +1 -1
  308. package/dist/components/ToggleGroup/ToggleGroup.css +42 -0
  309. package/dist/components/ToggleGroup/ToggleGroup.d.ts +15 -12
  310. package/dist/components/ToggleGroup/ToggleGroup.js +41 -0
  311. package/dist/components/ToggleGroup/ToggleGroup.module.js +8 -0
  312. package/dist/components/ToggleGroup/index.d.ts +1 -1
  313. package/dist/components/Toolbar/Toolbar.css +203 -0
  314. package/dist/components/Toolbar/Toolbar.d.ts +9 -7
  315. package/dist/components/Toolbar/Toolbar.js +56 -0
  316. package/dist/components/Toolbar/Toolbar.module.js +12 -0
  317. package/dist/components/Tooltip/Tooltip.css +155 -0
  318. package/dist/components/Tooltip/Tooltip.d.ts +51 -15
  319. package/dist/components/Tooltip/Tooltip.js +82 -0
  320. package/dist/components/Tooltip/Tooltip.module.js +15 -0
  321. package/dist/components/Tooltip/index.d.ts +1 -1
  322. package/dist/icons/demo/Icons.d.ts +15 -12
  323. package/dist/icons/demo/Icons.js +225 -0
  324. package/dist/icons/demo/index.d.ts +1 -1
  325. package/dist/icons/ui/Icons.d.ts +30 -22
  326. package/dist/icons/ui/Icons.js +308 -0
  327. package/dist/icons/ui/index.d.ts +1 -1
  328. package/dist/index.d.ts +68 -67
  329. package/dist/index.js +68 -5775
  330. package/dist/reset.d.ts +1 -0
  331. package/dist/reset.js +1 -0
  332. package/dist/style.d.ts +1 -0
  333. package/dist/style.js +1 -0
  334. package/dist/styles/reset.css +175 -0
  335. package/dist/styles/style.css +263 -0
  336. package/dist/utils/mergeClassName.js +8 -0
  337. package/package.json +11 -10
  338. package/dist/components/CloseButton/index.d.ts +0 -1
  339. package/dist/components/Meter/index.d.ts +0 -1
  340. package/dist/components/Progress/index.d.ts +0 -1
  341. package/dist/components/Separator/index.d.ts +0 -1
  342. package/dist/components/Tabs/index.d.ts +0 -1
  343. package/dist/components/Toolbar/index.d.ts +0 -1
  344. package/dist/data/insideScrollSections.d.ts +0 -4
  345. package/dist/index.cjs +0 -1
  346. package/dist/index.css +0 -1
  347. package/dist/reset.css +0 -334
  348. package/dist/utils/mergeClassName.d.ts +0 -4
@@ -0,0 +1,141 @@
1
+ @layer ui.components {
2
+ .-lu0yq_field {
3
+ align-items: center;
4
+ gap: var(--radio-gap, var(--spacing-2));
5
+ vertical-align: middle;
6
+ cursor: pointer;
7
+ display: inline-flex;
8
+
9
+ &:has(.-lu0yq_radio[data-disabled]), &:has(.-lu0yq_radio[data-readonly]) {
10
+ cursor: default;
11
+ }
12
+ }
13
+
14
+ .-lu0yq_radio {
15
+ box-sizing: border-box;
16
+ -webkit-appearance: none;
17
+ appearance: none;
18
+ width: var(--_radio-size, 1.25rem);
19
+ height: var(--_radio-size, 1.25rem);
20
+ border: var(--radio-border-width, var(--border-width-sm)) solid
21
+ var(--radio-border-color, var(--color-border));
22
+ border-radius: var(--radius-full);
23
+ background-color: var(--radio-bg, var(--color-background));
24
+ color: var(--radio-indicator-color, var(--color-primary-foreground));
25
+ user-select: none;
26
+ cursor: pointer;
27
+ transition: background-color var(--radio-transition, var(--transition-default)),
28
+ border-color var(--radio-transition, var(--transition-default)),
29
+ color var(--radio-transition, var(--transition-default)),
30
+ opacity var(--radio-transition, var(--transition-default));
31
+ outline: 0;
32
+ flex: none;
33
+ justify-content: center;
34
+ align-items: center;
35
+ margin: 0;
36
+ padding: 0;
37
+ line-height: 0;
38
+ display: inline-flex;
39
+
40
+ &[data-checked] {
41
+ border-color: var(--radio-border-color-checked, var(--color-primary));
42
+ background-color: var(--radio-bg-checked, var(--color-primary));
43
+ }
44
+
45
+ &:focus-visible {
46
+ outline: var(--radio-focus-ring-width, var(--border-width-sm)) solid
47
+ var(--radio-focus-ring-color, var(--color-ring));
48
+ outline-offset: var(--radio-focus-ring-offset, var(--border-width-sm));
49
+ }
50
+
51
+ @media (hover: hover) {
52
+ &[data-unchecked]:not([data-readonly]):hover {
53
+ background-color: var(--radio-bg-hover, var(--color-accent));
54
+ }
55
+ }
56
+
57
+ &[data-readonly] {
58
+ cursor: default;
59
+ }
60
+
61
+ &[data-disabled] {
62
+ opacity: var(--radio-disabled-opacity, var(--opacity-disabled));
63
+ pointer-events: none;
64
+ }
65
+
66
+ &[data-size="xs"] {
67
+ --_radio-size: var(--radio-size-xs, .875rem);
68
+ --_radio-indicator-size: var(--radio-indicator-size-xs, .25rem);
69
+ }
70
+
71
+ &[data-size="sm"] {
72
+ --_radio-size: var(--radio-size-sm, 1rem);
73
+ --_radio-indicator-size: var(--radio-indicator-size-sm, .375rem);
74
+ }
75
+
76
+ &[data-size="md"] {
77
+ --_radio-size: var(--radio-size-md, 1.25rem);
78
+ --_radio-indicator-size: var(--radio-indicator-size-md, .5rem);
79
+ }
80
+
81
+ &[data-size="lg"] {
82
+ --_radio-size: var(--radio-size-lg, 1.5rem);
83
+ --_radio-indicator-size: var(--radio-indicator-size-lg, .625rem);
84
+ }
85
+
86
+ &[data-size="xl"] {
87
+ --_radio-size: var(--radio-size-xl, 1.75rem);
88
+ --_radio-indicator-size: var(--radio-indicator-size-xl, .75rem);
89
+ }
90
+ }
91
+
92
+ .-lu0yq_indicator {
93
+ justify-content: center;
94
+ align-items: center;
95
+ width: 100%;
96
+ height: 100%;
97
+ display: flex;
98
+
99
+ &[data-unchecked] {
100
+ display: none;
101
+ }
102
+ }
103
+
104
+ .-lu0yq_icon {
105
+ width: var(--_radio-indicator-size, .5rem);
106
+ height: var(--_radio-indicator-size, .5rem);
107
+ border: var(--radio-indicator-border-width, 0) solid
108
+ var(--radio-indicator-border-color, currentColor);
109
+ border-radius: var(--radio-indicator-radius, var(--radius-full));
110
+ background-color: currentColor;
111
+ display: block;
112
+ }
113
+
114
+ .-lu0yq_label {
115
+ color: var(--radio-label-color, var(--color-foreground));
116
+ font-size: var(--radio-label-font-size, var(--text-sm));
117
+ font-weight: var(--radio-label-font-weight, var(--weight-medium));
118
+ line-height: var(--radio-label-line-height, var(--line-height-text-sm));
119
+ }
120
+
121
+ .-lu0yq_group {
122
+ gap: var(--radio-group-gap, var(--spacing-2));
123
+ color: var(--radio-group-color, var(--color-foreground));
124
+ flex-direction: column;
125
+ display: flex;
126
+ }
127
+
128
+ .-lu0yq_groupLabel {
129
+ color: var(--radio-group-label-color, var(--radio-group-color, var(--color-foreground)));
130
+ font-size: var(--radio-group-label-font-size, var(--text-sm));
131
+ font-weight: var(--radio-group-label-font-weight, var(--weight-semibold));
132
+ line-height: var(--radio-group-label-line-height, var(--line-height-text-sm));
133
+ }
134
+
135
+ .-lu0yq_groupList {
136
+ align-items: flex-start;
137
+ gap: var(--radio-group-list-gap, var(--spacing-2));
138
+ flex-direction: column;
139
+ display: flex;
140
+ }
141
+ }
@@ -1,15 +1,40 @@
1
- import { Radio as RadioPrimitive } from '@base-ui/react/radio';
2
- import { RadioGroup as RadioGroupPrimitive } from '@base-ui/react/radio-group';
3
- import { ComponentProps } from 'react';
1
+ import { ComponentProps } from "react";
2
+ import { Radio } from "@base-ui/react/radio";
3
+ import { RadioGroup } from "@base-ui/react/radio-group";
4
+
5
+ //#region src/components/Radio/Radio.d.ts
4
6
  type RadioSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
5
- declare const Radio: import('react').ForwardRefExoticComponent<Omit<RadioPrimitive.Root.Props<any> & {
6
- size?: RadioSize;
7
- }, "ref"> & import('react').RefAttributes<HTMLSpanElement>>;
8
- declare function RadioIndicator({ className, children, ...props }: RadioPrimitive.Indicator.Props): import("react").JSX.Element;
9
- declare function RadioIndicatorIcon({ className, ...props }: ComponentProps<'span'>): import("react").JSX.Element;
10
- declare function RadioField({ className, ...props }: ComponentProps<'label'>): import("react").JSX.Element;
11
- declare function RadioLabel({ className, ...props }: ComponentProps<'span'>): import("react").JSX.Element;
12
- declare function RadioGroup({ className, ...props }: RadioGroupPrimitive.Props): import("react").JSX.Element;
13
- declare function RadioGroupLabel({ className, ...props }: ComponentProps<'div'>): import("react").JSX.Element;
14
- declare function RadioGroupList({ className, ...props }: ComponentProps<'div'>): import("react").JSX.Element;
15
- export { Radio, RadioIndicator, RadioIndicatorIcon, RadioField, RadioLabel, RadioGroup, RadioGroupLabel, RadioGroupList, };
7
+ declare const Radio$1: import("react").ForwardRefExoticComponent<Omit<Radio.Root.Props<any> & {
8
+ size?: RadioSize;
9
+ }, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
10
+ declare function RadioIndicator({
11
+ className,
12
+ children,
13
+ ...props
14
+ }: Radio.Indicator.Props): import("react").JSX.Element;
15
+ declare function RadioIndicatorIcon({
16
+ className,
17
+ ...props
18
+ }: ComponentProps<'span'>): import("react").JSX.Element;
19
+ declare function RadioField({
20
+ className,
21
+ ...props
22
+ }: ComponentProps<'label'>): import("react").JSX.Element;
23
+ declare function RadioLabel({
24
+ className,
25
+ ...props
26
+ }: ComponentProps<'span'>): import("react").JSX.Element;
27
+ declare function RadioGroup$1({
28
+ className,
29
+ ...props
30
+ }: RadioGroup.Props): import("react").JSX.Element;
31
+ declare function RadioGroupLabel({
32
+ className,
33
+ ...props
34
+ }: ComponentProps<'div'>): import("react").JSX.Element;
35
+ declare function RadioGroupList({
36
+ className,
37
+ ...props
38
+ }: ComponentProps<'div'>): import("react").JSX.Element;
39
+ //#endregion
40
+ export { Radio$1 as Radio, RadioField, RadioGroup$1 as RadioGroup, RadioGroupLabel, RadioGroupList, RadioIndicator, RadioIndicatorIcon, RadioLabel };
@@ -0,0 +1,71 @@
1
+ import { mergeClassName } from "../../utils/mergeClassName.js";
2
+ import Radio_module_default from "./Radio.module.js";
3
+ import { jsx } from "react/jsx-runtime";
4
+ import { clsx } from "clsx";
5
+ import { forwardRef } from "react";
6
+ import { Radio } from "@base-ui/react/radio";
7
+ import { RadioGroup } from "@base-ui/react/radio-group";
8
+ //#region src/components/Radio/Radio.tsx
9
+ const Radio$1 = forwardRef(function Radio$2({ className, size = "md", children, ...props }, ref) {
10
+ return /* @__PURE__ */ jsx(Radio.Root, {
11
+ ref,
12
+ "data-slot": "radio-root",
13
+ "data-size": size,
14
+ className: mergeClassName(className, Radio_module_default.radio),
15
+ ...props,
16
+ children: children ?? /* @__PURE__ */ jsx(RadioIndicator, {})
17
+ });
18
+ });
19
+ function RadioIndicator({ className, children, ...props }) {
20
+ return /* @__PURE__ */ jsx(Radio.Indicator, {
21
+ "data-slot": "radio-indicator",
22
+ className: mergeClassName(className, Radio_module_default.indicator),
23
+ ...props,
24
+ children: children ?? /* @__PURE__ */ jsx(RadioIndicatorIcon, {})
25
+ });
26
+ }
27
+ function RadioIndicatorIcon({ className, ...props }) {
28
+ return /* @__PURE__ */ jsx("span", {
29
+ "aria-hidden": "true",
30
+ "data-slot": "radio-indicator-icon",
31
+ className: clsx(Radio_module_default.icon, className),
32
+ ...props
33
+ });
34
+ }
35
+ function RadioField({ className, ...props }) {
36
+ return /* @__PURE__ */ jsx("label", {
37
+ "data-slot": "radio-field",
38
+ className: clsx(Radio_module_default.field, className),
39
+ ...props
40
+ });
41
+ }
42
+ function RadioLabel({ className, ...props }) {
43
+ return /* @__PURE__ */ jsx("span", {
44
+ "data-slot": "radio-label",
45
+ className: clsx(Radio_module_default.label, className),
46
+ ...props
47
+ });
48
+ }
49
+ function RadioGroup$1({ className, ...props }) {
50
+ return /* @__PURE__ */ jsx(RadioGroup, {
51
+ "data-slot": "radio-group-root",
52
+ className: mergeClassName(className, Radio_module_default.group),
53
+ ...props
54
+ });
55
+ }
56
+ function RadioGroupLabel({ className, ...props }) {
57
+ return /* @__PURE__ */ jsx("div", {
58
+ "data-slot": "radio-group-label",
59
+ className: clsx(Radio_module_default.groupLabel, className),
60
+ ...props
61
+ });
62
+ }
63
+ function RadioGroupList({ className, ...props }) {
64
+ return /* @__PURE__ */ jsx("div", {
65
+ "data-slot": "radio-group-list",
66
+ className: clsx(Radio_module_default.groupList, className),
67
+ ...props
68
+ });
69
+ }
70
+ //#endregion
71
+ export { Radio$1 as Radio, RadioField, RadioGroup$1 as RadioGroup, RadioGroupLabel, RadioGroupList, RadioIndicator, RadioIndicatorIcon, RadioLabel };
@@ -0,0 +1,14 @@
1
+ import './Radio.css';
2
+ //#region src/components/Radio/Radio.module.css
3
+ var Radio_module_default = {
4
+ "field": "-lu0yq_field",
5
+ "group": "-lu0yq_group",
6
+ "groupLabel": "-lu0yq_groupLabel",
7
+ "groupList": "-lu0yq_groupList",
8
+ "icon": "-lu0yq_icon",
9
+ "indicator": "-lu0yq_indicator",
10
+ "label": "-lu0yq_label",
11
+ "radio": "-lu0yq_radio"
12
+ };
13
+ //#endregion
14
+ export { Radio_module_default as default };
@@ -1 +1 @@
1
- export { Radio, RadioIndicator, RadioIndicatorIcon, RadioField, RadioLabel, RadioGroup, RadioGroupLabel, RadioGroupList, } from './Radio';
1
+ import { Radio, RadioField, RadioGroup, RadioGroupLabel, RadioGroupList, RadioIndicator, RadioIndicatorIcon, RadioLabel } from "./Radio.js";
@@ -0,0 +1,79 @@
1
+ @layer ui.components {
2
+ .wQtr8G_root {
3
+ align-items: center;
4
+ gap: var(--rating-gap, var(--spacing-1));
5
+ color: var(--rating-color, var(--color-muted-foreground));
6
+ display: inline-flex;
7
+ }
8
+
9
+ .wQtr8G_root[data-disabled] {
10
+ opacity: var(--rating-disabled-opacity, var(--opacity-disabled));
11
+ }
12
+
13
+ .wQtr8G_item {
14
+ border-radius: var(--radius-sm);
15
+ color: inherit;
16
+ cursor: pointer;
17
+ transition: color var(--rating-transition, var(--transition-default)),
18
+ opacity var(--rating-transition, var(--transition-default));
19
+ background-color: #0000;
20
+ border: 0;
21
+ justify-content: center;
22
+ align-items: center;
23
+ margin: 0;
24
+ padding: 0;
25
+ line-height: 0;
26
+ display: inline-flex;
27
+ }
28
+
29
+ .wQtr8G_item[data-filled] {
30
+ color: var(--rating-active-color, var(--color-primary));
31
+ }
32
+
33
+ .wQtr8G_item[data-readonly] {
34
+ cursor: default;
35
+ }
36
+
37
+ .wQtr8G_item[data-disabled] {
38
+ pointer-events: none;
39
+ }
40
+
41
+ .wQtr8G_item:focus-visible {
42
+ outline: var(--rating-focus-ring-width, var(--border-width-sm)) solid
43
+ var(--rating-focus-ring-color, var(--color-ring));
44
+ outline-offset: var(--rating-focus-ring-offset, .125rem);
45
+ }
46
+
47
+ .wQtr8G_root[data-size="xs"] {
48
+ --_rating-icon-size: var(--rating-icon-size-xs, .875rem);
49
+ }
50
+
51
+ .wQtr8G_root[data-size="sm"] {
52
+ --_rating-icon-size: var(--rating-icon-size-sm, 1rem);
53
+ }
54
+
55
+ .wQtr8G_root[data-size="md"] {
56
+ --_rating-icon-size: var(--rating-icon-size-md, 1.25rem);
57
+ }
58
+
59
+ .wQtr8G_root[data-size="lg"] {
60
+ --_rating-icon-size: var(--rating-icon-size-lg, 1.5rem);
61
+ }
62
+
63
+ .wQtr8G_root[data-size="xl"] {
64
+ --_rating-icon-size: var(--rating-icon-size-xl, 1.75rem);
65
+ }
66
+
67
+ .wQtr8G_icon {
68
+ width: var(--_rating-icon-size, var(--rating-icon-size-md, 1.25rem));
69
+ height: var(--_rating-icon-size, var(--rating-icon-size-md, 1.25rem));
70
+ fill: #0000;
71
+ stroke: currentColor;
72
+ transition: fill var(--rating-transition, var(--transition-default)),
73
+ stroke var(--rating-transition, var(--transition-default));
74
+ }
75
+
76
+ .wQtr8G_item[data-filled] .wQtr8G_icon {
77
+ fill: currentColor;
78
+ }
79
+ }
@@ -1,12 +1,14 @@
1
- import { RadioGroup as RadioGroupPrimitive } from '@base-ui/react/radio-group';
1
+ import { RadioGroup } from "@base-ui/react/radio-group";
2
+
3
+ //#region src/components/Rating/Rating.d.ts
2
4
  type RatingSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
3
- type RatingProps = Omit<RadioGroupPrimitive.Props, 'children' | 'defaultValue' | 'orientation' | 'onValueChange' | 'value'> & {
4
- defaultValue?: number;
5
- max?: number;
6
- onValueChange?: (value: number) => void;
7
- size?: RatingSize;
8
- value?: number;
5
+ type RatingProps = Omit<RadioGroup.Props, 'children' | 'defaultValue' | 'orientation' | 'onValueChange' | 'value'> & {
6
+ defaultValue?: number;
7
+ max?: number;
8
+ onValueChange?: (value: number) => void;
9
+ size?: RatingSize;
10
+ value?: number;
9
11
  };
10
- declare const Rating: import('react').ForwardRefExoticComponent<Omit<RatingProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
11
- export { Rating };
12
- export type { RatingProps, RatingSize };
12
+ declare const Rating: import("react").ForwardRefExoticComponent<Omit<RatingProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
13
+ //#endregion
14
+ export { Rating, type RatingProps, type RatingSize };
@@ -0,0 +1,61 @@
1
+ import { RatingStarIcon } from "../../icons/ui/Icons.js";
2
+ import { mergeClassName } from "../../utils/mergeClassName.js";
3
+ import Rating_module_default from "./Rating.module.js";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import { forwardRef, useState } from "react";
6
+ import { Radio } from "@base-ui/react/radio";
7
+ import { RadioGroup } from "@base-ui/react/radio-group";
8
+ //#region src/components/Rating/Rating.tsx
9
+ const DEFAULT_MAX = 5;
10
+ const Rating = forwardRef(function Rating({ className, defaultValue, disabled, max = DEFAULT_MAX, onValueChange, readOnly, size = "md", value, ...props }, ref) {
11
+ const normalizedMax = normalizeMax(max);
12
+ const [uncontrolledValue, setUncontrolledValue] = useState(() => normalizeRatingValue(defaultValue, normalizedMax));
13
+ const currentValue = normalizeRatingValue(value ?? uncontrolledValue, normalizedMax);
14
+ const handleValueChange = (nextValue) => {
15
+ const normalizedValue = normalizeRatingValue(Number(nextValue), normalizedMax);
16
+ if (normalizedValue == null) return;
17
+ if (value === void 0) setUncontrolledValue(normalizedValue);
18
+ onValueChange?.(normalizedValue);
19
+ };
20
+ return /* @__PURE__ */ jsx(RadioGroup, {
21
+ ref,
22
+ "data-slot": "rating-root",
23
+ "data-size": size,
24
+ className: mergeClassName(className, Rating_module_default.root),
25
+ disabled,
26
+ onValueChange: handleValueChange,
27
+ readOnly,
28
+ value: currentValue?.toString(),
29
+ ...props,
30
+ children: Array.from({ length: normalizedMax }, (_, index) => {
31
+ const ratingValue = index + 1;
32
+ const isFilled = currentValue != null && ratingValue <= currentValue;
33
+ return /* @__PURE__ */ jsx(Radio.Root, {
34
+ "aria-label": readOnly ? `${ratingValue} out of ${normalizedMax}` : `Rate ${ratingValue} out of ${normalizedMax}`,
35
+ "data-empty": isFilled ? void 0 : "",
36
+ "data-filled": isFilled ? "" : void 0,
37
+ "data-slot": "rating-item",
38
+ className: Rating_module_default.item,
39
+ disabled,
40
+ readOnly,
41
+ value: ratingValue.toString(),
42
+ children: /* @__PURE__ */ jsx(RatingStarIcon, {
43
+ "data-slot": "rating-icon",
44
+ className: Rating_module_default.icon
45
+ })
46
+ }, ratingValue);
47
+ })
48
+ });
49
+ });
50
+ function normalizeMax(max) {
51
+ if (!Number.isFinite(max)) return DEFAULT_MAX;
52
+ return Math.max(1, Math.floor(max));
53
+ }
54
+ function normalizeRatingValue(value, max) {
55
+ if (value == null || !Number.isFinite(value)) return;
56
+ const normalizedValue = Math.floor(value);
57
+ if (normalizedValue < 1) return;
58
+ return Math.min(normalizedValue, max);
59
+ }
60
+ //#endregion
61
+ export { Rating };
@@ -0,0 +1,9 @@
1
+ import './Rating.css';
2
+ //#region src/components/Rating/Rating.module.css
3
+ var Rating_module_default = {
4
+ "icon": "wQtr8G_icon",
5
+ "item": "wQtr8G_item",
6
+ "root": "wQtr8G_root"
7
+ };
8
+ //#endregion
9
+ export { Rating_module_default as default };
@@ -1,2 +1 @@
1
- export { Rating } from './Rating';
2
- export type { RatingProps, RatingSize } from './Rating';
1
+ import { Rating, RatingProps, RatingSize } from "./Rating.js";
@@ -0,0 +1,205 @@
1
+ @layer ui.components {
2
+ .cjUAMq_root {
3
+ box-sizing: border-box;
4
+ width: var(--scroll-area-width, 100%);
5
+ height: var(--scroll-area-height, 100%);
6
+ color: var(--scroll-area-color, var(--color-foreground));
7
+ position: relative;
8
+ }
9
+
10
+ .cjUAMq_viewport {
11
+ box-sizing: border-box;
12
+ border-radius: var(--scroll-area-radius, var(--radius-md));
13
+ background-color: var(--scroll-area-bg, transparent);
14
+ outline: 0;
15
+ width: 100%;
16
+ height: 100%;
17
+
18
+ .cjUAMq_root[data-fade="vertical"] &, .cjUAMq_root[data-fade="both"] & {
19
+ mask-image: linear-gradient(to bottom,
20
+ transparent 0,
21
+ black
22
+ min(var(--scroll-area-fade-start-size, var(--scroll-area-fade-size, var(--spacing-10))),
23
+ var(--scroll-area-overflow-y-start, 0px)),
24
+ black
25
+ calc(100% -
26
+ min(var(--scroll-area-fade-end-size, var(--scroll-area-fade-size, var(--spacing-10))),
27
+ var(--scroll-area-overflow-y-end, 0px))),
28
+ transparent 100%);
29
+ mask-repeat: no-repeat;
30
+ }
31
+
32
+ .cjUAMq_root[data-fade="horizontal"] & {
33
+ mask-image: linear-gradient(to right,
34
+ transparent 0,
35
+ black
36
+ min(var(--scroll-area-fade-inline-start-size, var(--scroll-area-fade-size, var(--spacing-10))),
37
+ var(--scroll-area-overflow-x-start, 0px)),
38
+ black
39
+ calc(100% -
40
+ min(var(--scroll-area-fade-inline-end-size, var(--scroll-area-fade-size, var(--spacing-10))),
41
+ var(--scroll-area-overflow-x-end, 0px))),
42
+ transparent 100%);
43
+ mask-repeat: no-repeat;
44
+ }
45
+
46
+ .cjUAMq_root:dir(rtl)[data-fade="horizontal"] & {
47
+ mask-image: linear-gradient(to left,
48
+ transparent 0,
49
+ black
50
+ min(var(--scroll-area-fade-inline-start-size, var(--scroll-area-fade-size, var(--spacing-10))),
51
+ var(--scroll-area-overflow-x-start, 0px)),
52
+ black
53
+ calc(100% -
54
+ min(var(--scroll-area-fade-inline-end-size, var(--scroll-area-fade-size, var(--spacing-10))),
55
+ var(--scroll-area-overflow-x-end, 0px))),
56
+ transparent 100%);
57
+ }
58
+
59
+ .cjUAMq_root[data-fade="both"] & {
60
+ mask-image: linear-gradient(to bottom,
61
+ transparent 0,
62
+ black
63
+ min(var(--scroll-area-fade-start-size, var(--scroll-area-fade-size, var(--spacing-10))),
64
+ var(--scroll-area-overflow-y-start, 0px)),
65
+ black
66
+ calc(100% -
67
+ min(var(--scroll-area-fade-end-size, var(--scroll-area-fade-size, var(--spacing-10))),
68
+ var(--scroll-area-overflow-y-end, 0px))),
69
+ transparent 100%),
70
+ linear-gradient(to right,
71
+ transparent 0,
72
+ black
73
+ min(var(--scroll-area-fade-inline-start-size, var(--scroll-area-fade-size, var(--spacing-10))),
74
+ var(--scroll-area-overflow-x-start, 0px)),
75
+ black
76
+ calc(100% -
77
+ min(var(--scroll-area-fade-inline-end-size, var(--scroll-area-fade-size, var(--spacing-10))),
78
+ var(--scroll-area-overflow-x-end, 0px))),
79
+ transparent 100%);
80
+ mask-composite: intersect;
81
+ }
82
+
83
+ .cjUAMq_root:dir(rtl)[data-fade="both"] & {
84
+ mask-image: linear-gradient(to bottom,
85
+ transparent 0,
86
+ black
87
+ min(var(--scroll-area-fade-start-size, var(--scroll-area-fade-size, var(--spacing-10))),
88
+ var(--scroll-area-overflow-y-start, 0px)),
89
+ black
90
+ calc(100% -
91
+ min(var(--scroll-area-fade-end-size, var(--scroll-area-fade-size, var(--spacing-10))),
92
+ var(--scroll-area-overflow-y-end, 0px))),
93
+ transparent 100%),
94
+ linear-gradient(to left,
95
+ transparent 0,
96
+ black
97
+ min(var(--scroll-area-fade-inline-start-size, var(--scroll-area-fade-size, var(--spacing-10))),
98
+ var(--scroll-area-overflow-x-start, 0px)),
99
+ black
100
+ calc(100% -
101
+ min(var(--scroll-area-fade-inline-end-size, var(--scroll-area-fade-size, var(--spacing-10))),
102
+ var(--scroll-area-overflow-x-end, 0px))),
103
+ transparent 100%);
104
+ }
105
+
106
+ &:focus-visible {
107
+ outline: var(--scroll-area-focus-ring-width, var(--border-width-sm)) solid
108
+ var(--scroll-area-focus-ring-color, var(--color-ring));
109
+ outline-offset: var(--scroll-area-focus-ring-offset, -1px);
110
+ }
111
+ }
112
+
113
+ .cjUAMq_content {
114
+ box-sizing: border-box;
115
+ padding: var(--scroll-area-content-padding, 0);
116
+ display: block;
117
+ }
118
+
119
+ .cjUAMq_scrollbar {
120
+ --_scroll-area-scrollbar-margin: var(--scroll-area-scrollbar-margin, calc(var(--spacing-1) / 2));
121
+ --_scroll-area-scrollbar-hit-area-size: var(--scroll-area-scrollbar-hit-area-size, 1.25rem);
122
+ box-sizing: border-box;
123
+ padding: var(--scroll-area-scrollbar-padding, 0);
124
+ border-radius: var(--scroll-area-scrollbar-radius, var(--radius-md));
125
+ background-color: var(--scroll-area-scrollbar-bg, transparent);
126
+ opacity: var(--scroll-area-scrollbar-hidden-opacity, 0);
127
+ pointer-events: none;
128
+ user-select: none;
129
+ touch-action: none;
130
+ transition: opacity var(--scroll-area-transition, var(--transition-default));
131
+ justify-content: center;
132
+ display: flex;
133
+ position: absolute;
134
+
135
+ &:before {
136
+ content: "";
137
+ position: absolute;
138
+ }
139
+
140
+ &[data-orientation="vertical"] {
141
+ top: 0;
142
+ inset-inline-end: 0;
143
+ bottom: var(--scroll-area-corner-height, 0px);
144
+ width: var(--scroll-area-scrollbar-size, .375rem);
145
+ margin-block: var(--_scroll-area-scrollbar-margin);
146
+ margin-inline-end: var(--_scroll-area-scrollbar-margin);
147
+
148
+ &:before {
149
+ width: var(--_scroll-area-scrollbar-hit-area-size);
150
+ height: 100%;
151
+ left: 50%;
152
+ transform: translateX(-50%);
153
+ }
154
+ }
155
+
156
+ &[data-orientation="horizontal"] {
157
+ inset-inline-start: 0;
158
+ inset-inline-end: var(--scroll-area-corner-width, 0px);
159
+ height: var(--scroll-area-scrollbar-size, .375rem);
160
+ margin-inline: var(--_scroll-area-scrollbar-margin);
161
+ flex-direction: column;
162
+ margin-block-end: var(--_scroll-area-scrollbar-margin);
163
+ bottom: 0;
164
+
165
+ &:before {
166
+ width: 100%;
167
+ height: var(--_scroll-area-scrollbar-hit-area-size);
168
+ bottom: 50%;
169
+ left: 0;
170
+ right: 0;
171
+ transform: translateY(50%);
172
+ }
173
+ }
174
+
175
+ &[data-hovering], &[data-scrolling] {
176
+ opacity: var(--scroll-area-scrollbar-visible-opacity, 1);
177
+ pointer-events: auto;
178
+ }
179
+
180
+ &[data-scrolling] {
181
+ transition-duration: 0s;
182
+ }
183
+ }
184
+
185
+ .cjUAMq_thumb {
186
+ box-sizing: border-box;
187
+ border-radius: var(--scroll-area-thumb-radius, var(--radius-full));
188
+ background-color: var(--scroll-area-thumb-bg, var(--color-border));
189
+
190
+ &[data-orientation="vertical"] {
191
+ width: var(--scroll-area-thumb-width, 100%);
192
+ min-height: var(--scroll-area-thumb-min-size, 1.5rem);
193
+ }
194
+
195
+ &[data-orientation="horizontal"] {
196
+ height: var(--scroll-area-thumb-height, 100%);
197
+ min-width: var(--scroll-area-thumb-min-size, 1.5rem);
198
+ }
199
+ }
200
+
201
+ .cjUAMq_corner {
202
+ box-sizing: border-box;
203
+ background-color: var(--scroll-area-corner-bg, var(--scroll-area-scrollbar-bg, transparent));
204
+ }
205
+ }