@adgytec/adgytec-web-ui-components 2.3.1 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (557) hide show
  1. package/README.md +27 -16
  2. package/dist/App.d.ts +0 -1
  3. package/dist/assets/BottomSheetModal.css +1 -1
  4. package/dist/assets/Card.css +1 -1
  5. package/dist/assets/Input.css +1 -1
  6. package/dist/assets/ListItem.css +1 -1
  7. package/dist/assets/Radio.css +1 -1
  8. package/dist/assets/SideSheetModal.css +1 -1
  9. package/dist/assets/Switch.css +1 -1
  10. package/dist/assets/ThemeSelector.css +1 -1
  11. package/dist/assets/core7.css +1 -1
  12. package/dist/chunks/ActionDialog +0 -1
  13. package/dist/chunks/ActionDialog.map +1 -1
  14. package/dist/chunks/AppBar +0 -1
  15. package/dist/chunks/AppBar.map +1 -1
  16. package/dist/chunks/AppBarAction +0 -1
  17. package/dist/chunks/AppBarAction.map +1 -1
  18. package/dist/chunks/AppBarAvatar +1 -2
  19. package/dist/chunks/AppBarAvatar.map +1 -1
  20. package/dist/chunks/AppBarHeadline +1 -2
  21. package/dist/chunks/AppBarHeadline.map +1 -1
  22. package/dist/chunks/BaseCalendar +2 -11
  23. package/dist/chunks/BaseCalendar.map +1 -1
  24. package/dist/chunks/BottomSheet +1 -2
  25. package/dist/chunks/BottomSheet.map +1 -1
  26. package/dist/chunks/BottomSheetModal +1 -2
  27. package/dist/chunks/BottomSheetModal.map +1 -1
  28. package/dist/chunks/ButtonGroup +1 -2
  29. package/dist/chunks/ButtonGroup.map +1 -1
  30. package/dist/chunks/CalendarCell +0 -1
  31. package/dist/chunks/CalendarCell.map +1 -1
  32. package/dist/chunks/CalendarGrid +1 -2
  33. package/dist/chunks/CalendarGrid.map +1 -1
  34. package/dist/chunks/CalendarMenuItem +1 -2
  35. package/dist/chunks/CalendarMenuItem.map +1 -1
  36. package/dist/chunks/Card +4 -5
  37. package/dist/chunks/Card.map +1 -1
  38. package/dist/chunks/CardIcon +1 -2
  39. package/dist/chunks/CardIcon.map +1 -1
  40. package/dist/chunks/CenteredSlider +1 -2
  41. package/dist/chunks/CenteredSlider.map +1 -1
  42. package/dist/chunks/ComboBox +1 -2
  43. package/dist/chunks/ComboBox.map +1 -1
  44. package/dist/chunks/ComboBoxPopover +0 -1
  45. package/dist/chunks/ComboBoxPopover.map +1 -1
  46. package/dist/chunks/ComboBoxTrigger +182 -200
  47. package/dist/chunks/ComboBoxTrigger.map +1 -1
  48. package/dist/chunks/ConnectedButtonGroup +0 -1
  49. package/dist/chunks/ConnectedButtonGroup.map +1 -1
  50. package/dist/chunks/Dialog +1 -2
  51. package/dist/chunks/Dialog.map +1 -1
  52. package/dist/chunks/Disclosure +1 -2
  53. package/dist/chunks/Disclosure.map +1 -1
  54. package/dist/chunks/DisclosureGroup +1 -2
  55. package/dist/chunks/DisclosureGroup.map +1 -1
  56. package/dist/chunks/DisclosureHeader +1 -2
  57. package/dist/chunks/DisclosureHeader.map +1 -1
  58. package/dist/chunks/DisclosurePanel +1 -2
  59. package/dist/chunks/DisclosurePanel.map +1 -1
  60. package/dist/chunks/Divider +1 -2
  61. package/dist/chunks/Divider.map +1 -1
  62. package/dist/chunks/FieldError +1 -2
  63. package/dist/chunks/FieldError.map +1 -1
  64. package/dist/chunks/GridBackgroundDecorator +0 -1
  65. package/dist/chunks/GridBackgroundDecorator.map +1 -1
  66. package/dist/chunks/Icon +1 -2
  67. package/dist/chunks/Icon.map +1 -1
  68. package/dist/chunks/Input +67 -78
  69. package/dist/chunks/Input.map +1 -1
  70. package/dist/chunks/Input2 +4 -8
  71. package/dist/chunks/Input2.map +1 -1
  72. package/dist/chunks/ListAction +0 -1
  73. package/dist/chunks/ListAction.map +1 -1
  74. package/dist/chunks/ListAvatar +1 -2
  75. package/dist/chunks/ListAvatar.map +1 -1
  76. package/dist/chunks/ListBox +12 -9
  77. package/dist/chunks/ListBox.map +1 -1
  78. package/dist/chunks/ListIcon +1 -2
  79. package/dist/chunks/ListIcon.map +1 -1
  80. package/dist/chunks/ListItem +62 -49
  81. package/dist/chunks/ListItem.map +1 -1
  82. package/dist/chunks/ListLabelText +1 -2
  83. package/dist/chunks/ListLabelText.map +1 -1
  84. package/dist/chunks/ListMedia +0 -1
  85. package/dist/chunks/ListMedia.map +1 -1
  86. package/dist/chunks/ListOverlineText +1 -2
  87. package/dist/chunks/ListOverlineText.map +1 -1
  88. package/dist/chunks/ListSupportingText +1 -2
  89. package/dist/chunks/ListSupportingText.map +1 -1
  90. package/dist/chunks/ListTrailingText +1 -2
  91. package/dist/chunks/ListTrailingText.map +1 -1
  92. package/dist/chunks/Loader +1 -2
  93. package/dist/chunks/Loader.map +1 -1
  94. package/dist/chunks/MenuPopover +1 -2
  95. package/dist/chunks/MenuPopover.map +1 -1
  96. package/dist/chunks/Modal +1 -2
  97. package/dist/chunks/Modal.map +1 -1
  98. package/dist/chunks/ModalOverlay +1 -2
  99. package/dist/chunks/ModalOverlay.map +1 -1
  100. package/dist/chunks/Navigation +2 -4
  101. package/dist/chunks/Navigation.map +1 -1
  102. package/dist/chunks/NavigationScrollContainer +2 -4
  103. package/dist/chunks/NavigationScrollContainer.map +1 -1
  104. package/dist/chunks/NavigationSection +1 -2
  105. package/dist/chunks/NavigationSection.map +1 -1
  106. package/dist/chunks/NavigationSectionLabel +1 -2
  107. package/dist/chunks/NavigationSectionLabel.map +1 -1
  108. package/dist/chunks/Popover +1 -2
  109. package/dist/chunks/Popover.map +1 -1
  110. package/dist/chunks/RadialGlowDecorator +0 -1
  111. package/dist/chunks/RadialGlowDecorator.map +1 -1
  112. package/dist/chunks/Radio +57 -70
  113. package/dist/chunks/Radio.map +1 -1
  114. package/dist/chunks/RichTooltip +1 -2
  115. package/dist/chunks/RichTooltip.map +1 -1
  116. package/dist/chunks/RichTooltipActions +1 -2
  117. package/dist/chunks/RichTooltipActions.map +1 -1
  118. package/dist/chunks/RichTooltipInfo +1 -2
  119. package/dist/chunks/RichTooltipInfo.map +1 -1
  120. package/dist/chunks/SearchField +0 -1
  121. package/dist/chunks/SearchField.map +1 -1
  122. package/dist/chunks/SelectPopover +1 -2
  123. package/dist/chunks/SelectPopover.map +1 -1
  124. package/dist/chunks/SelectTrigger +1 -2
  125. package/dist/chunks/SelectTrigger.map +1 -1
  126. package/dist/chunks/SideSheet +1 -2
  127. package/dist/chunks/SideSheet.map +1 -1
  128. package/dist/chunks/SideSheetModal +2 -3
  129. package/dist/chunks/SideSheetModal.map +1 -1
  130. package/dist/chunks/Slider +0 -1
  131. package/dist/chunks/Slider.map +1 -1
  132. package/dist/chunks/SliderOutput +1 -2
  133. package/dist/chunks/SliderOutput.map +1 -1
  134. package/dist/chunks/SliderStops +1 -2
  135. package/dist/chunks/SliderStops.map +1 -1
  136. package/dist/chunks/SliderThumb +0 -1
  137. package/dist/chunks/SliderThumb.map +1 -1
  138. package/dist/chunks/Snackbar +1 -2
  139. package/dist/chunks/Snackbar.map +1 -1
  140. package/dist/chunks/SplitButton +1 -2
  141. package/dist/chunks/SplitButton.map +1 -1
  142. package/dist/chunks/SplitButtonTrigger +1 -2
  143. package/dist/chunks/SplitButtonTrigger.map +1 -1
  144. package/dist/chunks/SubmenuPopover +0 -1
  145. package/dist/chunks/SubmenuPopover.map +1 -1
  146. package/dist/chunks/Switch +47 -48
  147. package/dist/chunks/Switch.map +1 -1
  148. package/dist/chunks/Tab +1 -2
  149. package/dist/chunks/Tab.map +1 -1
  150. package/dist/chunks/TabList +1 -2
  151. package/dist/chunks/TabList.map +1 -1
  152. package/dist/chunks/TabPanel +1 -2
  153. package/dist/chunks/TabPanel.map +1 -1
  154. package/dist/chunks/TabPanels +1 -2
  155. package/dist/chunks/TabPanels.map +1 -1
  156. package/dist/chunks/Tabs +1 -2
  157. package/dist/chunks/Tabs.map +1 -1
  158. package/dist/chunks/Tag +1 -2
  159. package/dist/chunks/Tag.map +1 -1
  160. package/dist/chunks/ThemeSelector +109 -85
  161. package/dist/chunks/ThemeSelector.map +1 -1
  162. package/dist/chunks/Toolbar +0 -1
  163. package/dist/chunks/Toolbar.map +1 -1
  164. package/dist/chunks/Tooltip +0 -1
  165. package/dist/chunks/Tooltip.map +1 -1
  166. package/dist/chunks/base +1 -2
  167. package/dist/chunks/compiler-runtime +2 -3
  168. package/dist/chunks/context +1 -2
  169. package/dist/chunks/core +3 -6
  170. package/dist/chunks/core.map +1 -1
  171. package/dist/chunks/core2 +0 -1
  172. package/dist/chunks/core2.map +1 -1
  173. package/dist/chunks/core3 +2 -5
  174. package/dist/chunks/core3.map +1 -1
  175. package/dist/chunks/core4 +0 -1
  176. package/dist/chunks/core4.map +1 -1
  177. package/dist/chunks/core5 +0 -1
  178. package/dist/chunks/core5.map +1 -1
  179. package/dist/chunks/core6 +9 -10
  180. package/dist/chunks/core6.map +1 -1
  181. package/dist/chunks/core7 +2 -5
  182. package/dist/chunks/core7.map +1 -1
  183. package/dist/chunks/core8 +1 -3
  184. package/dist/chunks/core8.map +1 -1
  185. package/dist/chunks/core9 +0 -1
  186. package/dist/chunks/core9.map +1 -1
  187. package/dist/chunks/navContext +1 -2
  188. package/dist/chunks/navContext.map +1 -1
  189. package/dist/chunks/tapTarget +0 -1
  190. package/dist/chunks/tapTarget.map +1 -1
  191. package/dist/chunks/types +1 -2
  192. package/dist/chunks/useHover +187 -225
  193. package/dist/chunks/useHover.map +1 -1
  194. package/dist/chunks/useSplash +1 -2
  195. package/dist/chunks/useSplash.map +1 -1
  196. package/dist/components/AppBar/AppBar/index.js +1 -2
  197. package/dist/components/AppBar/AppBarAction/index.js +1 -2
  198. package/dist/components/AppBar/AppBarAvatar/index.js +1 -2
  199. package/dist/components/AppBar/AppBarHeadline/index.js +1 -2
  200. package/dist/components/AppBar/AppBarState/index.js +2 -4
  201. package/dist/components/AppBar/AppBarState/index.js.map +1 -1
  202. package/dist/components/AppBar/core/index.js +2 -4
  203. package/dist/components/AppBar/core/index.js.map +1 -1
  204. package/dist/components/Button/Button/index.js +1 -2
  205. package/dist/components/Button/Button/index.js.map +1 -1
  206. package/dist/components/Button/ButtonGroups/ButtonGroup/index.js +1 -2
  207. package/dist/components/Button/ButtonGroups/ButtonGroupContext/index.js +3 -6
  208. package/dist/components/Button/ButtonGroups/ButtonGroupContext/index.js.map +1 -1
  209. package/dist/components/Button/ButtonGroups/ConnectedButton/index.js +1 -2
  210. package/dist/components/Button/ButtonGroups/ConnectedButtonGroup/index.js +1 -2
  211. package/dist/components/Button/IconButton/index.js +1 -2
  212. package/dist/components/Button/LinkButton/index.js +1 -2
  213. package/dist/components/Button/LinkButton/index.js.map +1 -1
  214. package/dist/components/Button/LinkIconButton/index.js +1 -2
  215. package/dist/components/Button/SplitButton/SplitButton/index.js +1 -2
  216. package/dist/components/Button/SplitButton/SplitButtonContext/index.js +2 -4
  217. package/dist/components/Button/SplitButton/SplitButtonContext/index.js.map +1 -1
  218. package/dist/components/Button/SplitButton/SplitButtonPrimary/index.js +1 -2
  219. package/dist/components/Button/SplitButton/SplitButtonTrigger/index.js +1 -2
  220. package/dist/components/Button/SplitButton/core/index.js +1 -2
  221. package/dist/components/Button/ToggleButton/index.js +1 -2
  222. package/dist/components/Button/ToggleButton/index.js.map +1 -1
  223. package/dist/components/Button/ToggleIconButton/index.js +1 -2
  224. package/dist/components/Button/core/index.js +1 -2
  225. package/dist/components/Calendar/BaseCalendar/index.js +1 -2
  226. package/dist/components/Calendar/Calendar/index.js +1 -2
  227. package/dist/components/Calendar/Calendar/index.js.map +1 -1
  228. package/dist/components/Calendar/CalendarCell/index.js +1 -2
  229. package/dist/components/Calendar/CalendarGrid/index.js +1 -2
  230. package/dist/components/Calendar/CalendarMenuItem/index.js +1 -2
  231. package/dist/components/Calendar/CalendarMonthMenu/index.js +1 -2
  232. package/dist/components/Calendar/CalendarMonthMenu/index.js.map +1 -1
  233. package/dist/components/Calendar/CalendarYearMenu/index.js +1 -2
  234. package/dist/components/Calendar/CalendarYearMenu/index.js.map +1 -1
  235. package/dist/components/Calendar/RangeCalendar/index.js +1 -2
  236. package/dist/components/Calendar/RangeCalendar/index.js.map +1 -1
  237. package/dist/components/Calendar/core/index.js +1 -2
  238. package/dist/components/Card/CardIcon/index.js +1 -2
  239. package/dist/components/Decorators/GridBackgroundDecorator/index.js +1 -2
  240. package/dist/components/Decorators/RadialGlowDecorator/index.js +1 -2
  241. package/dist/components/Dialog/ActionDialog/index.js +1 -2
  242. package/dist/components/Dialog/Dialog/index.js +1 -2
  243. package/dist/components/Dialog/Modal/index.js +1 -2
  244. package/dist/components/Dialog/ModalOverlay/index.js +1 -2
  245. package/dist/components/Dialog/core/index.js +2 -4
  246. package/dist/components/Dialog/core/index.js.map +1 -1
  247. package/dist/components/Disclosure/Disclosure/index.js +1 -2
  248. package/dist/components/Disclosure/DisclosureGroup/index.js +1 -2
  249. package/dist/components/Disclosure/DisclosureHeader/index.js +1 -2
  250. package/dist/components/Disclosure/DisclosurePanel/index.js +1 -2
  251. package/dist/components/Disclosure/context/index.js +1 -2
  252. package/dist/components/Disclosure/context/index.js.map +1 -1
  253. package/dist/components/Divider/index.js +1 -2
  254. package/dist/components/Icon/index.js +1 -2
  255. package/dist/components/Input/CharacterCount/index.js +1 -2
  256. package/dist/components/Input/CharacterCount/index.js.map +1 -1
  257. package/dist/components/Input/Checkbox/Checkbox.d.ts +14 -3
  258. package/dist/components/Input/Checkbox/CheckboxGroup.d.ts +3 -3
  259. package/dist/components/Input/Checkbox/context.d.ts +2 -4
  260. package/dist/components/Input/Checkbox/types.d.ts +11 -26
  261. package/dist/components/Input/DateField/index.js +1 -2
  262. package/dist/components/Input/DatePicker/DatePicker/index.js +1 -2
  263. package/dist/components/Input/DatePicker/DateRangePicker/index.js +1 -2
  264. package/dist/components/Input/DatePicker/core/index.js +1 -2
  265. package/dist/components/Input/Description/index.js +1 -2
  266. package/dist/components/Input/Description/index.js.map +1 -1
  267. package/dist/components/Input/FieldError/index.js +1 -2
  268. package/dist/components/Input/Input/index.js +1 -2
  269. package/dist/components/Input/Label/index.js +1 -2
  270. package/dist/components/Input/Label/index.js.map +1 -1
  271. package/dist/components/Input/Radio/Radio.d.ts +5 -4
  272. package/dist/components/Input/Radio/RadioGroup.d.ts +2 -2
  273. package/dist/components/Input/Radio/context.d.ts +2 -4
  274. package/dist/components/Input/Radio/index.js +1 -2
  275. package/dist/components/Input/Radio/types.d.ts +11 -25
  276. package/dist/components/Input/SearchField/index.js +1 -2
  277. package/dist/components/Input/Select/ComboBox/index.js +1 -2
  278. package/dist/components/Input/Select/ComboBoxPopover/index.js +1 -2
  279. package/dist/components/Input/Select/ComboBoxTrigger/index.js +1 -2
  280. package/dist/components/Input/Select/Select/index.js +1 -2
  281. package/dist/components/Input/Select/SelectItem/index.js +1 -2
  282. package/dist/components/Input/Select/SelectList/index.js +1 -2
  283. package/dist/components/Input/Select/SelectListSection/index.js +1 -2
  284. package/dist/components/Input/Select/SelectListSection/index.js.map +1 -1
  285. package/dist/components/Input/Select/SelectListSectionHeader/index.js +1 -2
  286. package/dist/components/Input/Select/SelectListSectionHeader/index.js.map +1 -1
  287. package/dist/components/Input/Select/SelectPopover/index.js +1 -2
  288. package/dist/components/Input/Select/SelectTrigger/index.js +1 -2
  289. package/dist/components/Input/Slider/CenteredSlider/index.js +1 -2
  290. package/dist/components/Input/Slider/CenteredSlider/types.d.ts +1 -1
  291. package/dist/components/Input/Slider/RangeSlider/RangeSlider.d.ts +1 -1
  292. package/dist/components/Input/Slider/RangeSlider/index.js +1 -2
  293. package/dist/components/Input/Slider/RangeSlider/index.js.map +1 -1
  294. package/dist/components/Input/Slider/RangeSlider/types.d.ts +1 -1
  295. package/dist/components/Input/Slider/Slider/Slider.d.ts +1 -1
  296. package/dist/components/Input/Slider/Slider/index.js +1 -2
  297. package/dist/components/Input/Slider/Slider/types.d.ts +1 -1
  298. package/dist/components/Input/Slider/SliderOutput/SliderOutput.d.ts +2 -2
  299. package/dist/components/Input/Slider/SliderOutput/index.js +1 -2
  300. package/dist/components/Input/Slider/SliderStops/index.js +1 -2
  301. package/dist/components/Input/Slider/SliderStops/types.d.ts +1 -1
  302. package/dist/components/Input/Slider/SliderThumb/SliderThumb.d.ts +2 -2
  303. package/dist/components/Input/Slider/SliderThumb/context.d.ts +2 -2
  304. package/dist/components/Input/Slider/SliderThumb/index.js +1 -2
  305. package/dist/components/Input/Slider/core/index.js +1 -2
  306. package/dist/components/Input/Slider/core/slider.d.ts +3 -3
  307. package/dist/components/Input/Switch/Switch.d.ts +20 -3
  308. package/dist/components/Input/Switch/index.js +1 -2
  309. package/dist/components/Input/Switch/types.d.ts +11 -12
  310. package/dist/components/Input/TextArea/index.js +1 -2
  311. package/dist/components/Input/TimeField/index.js +1 -2
  312. package/dist/components/Input/core/index.js +1 -2
  313. package/dist/components/Input/hooks/index.js +1 -2
  314. package/dist/components/List/ListAction/ListAction.d.ts +2 -2
  315. package/dist/components/List/ListAction/index.js +1 -2
  316. package/dist/components/List/ListAvatar/ListAvatar.d.ts +2 -2
  317. package/dist/components/List/ListAvatar/index.js +1 -2
  318. package/dist/components/List/ListBox/ListBox.d.ts +3 -3
  319. package/dist/components/List/ListBox/index.js +1 -2
  320. package/dist/components/List/ListBox/types.d.ts +14 -2
  321. package/dist/components/List/ListIcon/ListIcon.d.ts +2 -2
  322. package/dist/components/List/ListIcon/index.js +1 -2
  323. package/dist/components/List/ListItem/ListItem.d.ts +2 -1
  324. package/dist/components/List/ListItem/index.js +1 -2
  325. package/dist/components/List/ListItem/types.d.ts +17 -4
  326. package/dist/components/List/ListLabelText/ListLabelText.d.ts +2 -2
  327. package/dist/components/List/ListLabelText/index.js +1 -2
  328. package/dist/components/List/ListMedia/ListMedia.d.ts +1 -1
  329. package/dist/components/List/ListMedia/index.js +1 -2
  330. package/dist/components/List/ListMedia/types.d.ts +2 -2
  331. package/dist/components/List/ListOverlineText/ListOverlineText.d.ts +2 -2
  332. package/dist/components/List/ListOverlineText/index.js +1 -2
  333. package/dist/components/List/ListSupportingText/ListSupportingText.d.ts +2 -2
  334. package/dist/components/List/ListSupportingText/index.js +1 -2
  335. package/dist/components/List/ListTrailingText/ListTrailingText.d.ts +2 -2
  336. package/dist/components/List/ListTrailingText/index.js +1 -2
  337. package/dist/components/List/core/context.d.ts +18 -0
  338. package/dist/components/List/core/index.d.ts +2 -0
  339. package/dist/components/List/core/index.js +9 -0
  340. package/dist/components/List/core/index.js.map +1 -0
  341. package/dist/components/List/core/selectionIndicator.d.ts +8 -0
  342. package/dist/components/List/index.d.ts +1 -0
  343. package/dist/components/List/index.js +12 -11
  344. package/dist/components/Loader/Loader.d.ts +2 -2
  345. package/dist/components/Loader/index.js +1 -2
  346. package/dist/components/Menu/Menu/index.js +1 -2
  347. package/dist/components/Menu/Menu/index.js.map +1 -1
  348. package/dist/components/Menu/Menu/types.d.ts +3 -3
  349. package/dist/components/Menu/MenuItem/MenuItem.d.ts +2 -2
  350. package/dist/components/Menu/MenuItem/index.js +1 -2
  351. package/dist/components/Menu/MenuItem/index.js.map +1 -1
  352. package/dist/components/Menu/MenuItem/types.d.ts +3 -3
  353. package/dist/components/Menu/MenuPopover/MenuPopover.d.ts +3 -3
  354. package/dist/components/Menu/MenuPopover/index.js +1 -2
  355. package/dist/components/Menu/MenuSection/MenuSection.d.ts +4 -4
  356. package/dist/components/Menu/MenuSection/index.js +1 -2
  357. package/dist/components/Menu/MenuSection/index.js.map +1 -1
  358. package/dist/components/Menu/MenuSectionHeader/MenuSectionHeader.d.ts +2 -2
  359. package/dist/components/Menu/MenuSectionHeader/index.js +1 -2
  360. package/dist/components/Menu/MenuSectionHeader/index.js.map +1 -1
  361. package/dist/components/Menu/MenuShortcut/MenuShortcut.d.ts +2 -2
  362. package/dist/components/Menu/MenuShortcut/index.js +1 -2
  363. package/dist/components/Menu/MenuShortcut/index.js.map +1 -1
  364. package/dist/components/Menu/MenuTrailingText/MenuTrailingText.d.ts +2 -2
  365. package/dist/components/Menu/MenuTrailingText/index.js +1 -2
  366. package/dist/components/Menu/MenuTrailingText/index.js.map +1 -1
  367. package/dist/components/Menu/MenuTrigger/MenuTrigger.d.ts +3 -3
  368. package/dist/components/Menu/MenuTrigger/index.js +1 -2
  369. package/dist/components/Menu/MenuTrigger/index.js.map +1 -1
  370. package/dist/components/Menu/SubmenuPopover/SubmenuPopover.d.ts +1 -1
  371. package/dist/components/Menu/SubmenuPopover/index.js +1 -2
  372. package/dist/components/Menu/context/context.d.ts +1 -1
  373. package/dist/components/Menu/context/index.js +2 -4
  374. package/dist/components/Menu/context/index.js.map +1 -1
  375. package/dist/components/Menu/context/useMenuConfigContext.d.ts +1 -1
  376. package/dist/components/Menu/core/color.d.ts +1 -1
  377. package/dist/components/Menu/core/index.js +1 -2
  378. package/dist/components/Menu/core/layout.d.ts +1 -1
  379. package/dist/components/Navigation/Navigation/Navigation.d.ts +1 -1
  380. package/dist/components/Navigation/Navigation/navContext.d.ts +1 -1
  381. package/dist/components/Navigation/Navigation/navRenderingContext.d.ts +2 -2
  382. package/dist/components/Navigation/Navigation/types.d.ts +3 -3
  383. package/dist/components/Navigation/NavigationItem/NavigationButton/NavigationButton.d.ts +1 -1
  384. package/dist/components/Navigation/NavigationItem/NavigationButton/index.js +1 -2
  385. package/dist/components/Navigation/NavigationItem/NavigationButton/index.js.map +1 -1
  386. package/dist/components/Navigation/NavigationItem/NavigationButton/types.d.ts +2 -2
  387. package/dist/components/Navigation/NavigationItem/NavigationItemIconRenderer/NavigationItemIconRenderer.d.ts +1 -1
  388. package/dist/components/Navigation/NavigationItem/NavigationItemIconRenderer/index.js +1 -2
  389. package/dist/components/Navigation/NavigationItem/NavigationItemIconRenderer/index.js.map +1 -1
  390. package/dist/components/Navigation/NavigationItem/NavigationLink/index.js +1 -2
  391. package/dist/components/Navigation/NavigationItem/NavigationLink/index.js.map +1 -1
  392. package/dist/components/Navigation/NavigationItem/NavigationLink/types.d.ts +2 -2
  393. package/dist/components/Navigation/NavigationItem/core/index.js +1 -2
  394. package/dist/components/Navigation/NavigationItem/core/navigationItem.d.ts +2 -2
  395. package/dist/components/Navigation/NavigationScrollContainer/NavigationScrollContainer.d.ts +2 -2
  396. package/dist/components/Navigation/NavigationScrollContainer/index.js +1 -2
  397. package/dist/components/Navigation/NavigationSection/NavigationSection/NavigationSection.d.ts +1 -1
  398. package/dist/components/Navigation/NavigationSection/NavigationSection/index.js +1 -2
  399. package/dist/components/Navigation/NavigationSection/NavigationSectionLabel/NavigationSectionLabel.d.ts +2 -2
  400. package/dist/components/Navigation/NavigationSection/NavigationSectionLabel/index.js +1 -2
  401. package/dist/components/Navigation/NavigationState/NavigationState.d.ts +2 -2
  402. package/dist/components/Navigation/NavigationState/context.d.ts +2 -2
  403. package/dist/components/Navigation/NavigationState/index.js +2 -4
  404. package/dist/components/Navigation/NavigationState/index.js.map +1 -1
  405. package/dist/components/Navigation/SubNavigation/SubNavigation/SubNavigation.d.ts +2 -2
  406. package/dist/components/Navigation/SubNavigation/SubNavigation/index.js +1 -2
  407. package/dist/components/Navigation/SubNavigation/SubNavigation/index.js.map +1 -1
  408. package/dist/components/Navigation/SubNavigation/SubNavigationTrigger/SubNavigationTrigger.d.ts +3 -3
  409. package/dist/components/Navigation/SubNavigation/SubNavigationTrigger/index.js +1 -2
  410. package/dist/components/Navigation/SubNavigation/SubNavigationTrigger/index.js.map +1 -1
  411. package/dist/components/Navigation/core/index.js +1 -2
  412. package/dist/components/Navigation/core/navigation.d.ts +2 -2
  413. package/dist/components/Navigation/core/navigationInfo.d.ts +2 -2
  414. package/dist/components/Popover/Popover.d.ts +1 -1
  415. package/dist/components/Popover/index.js +1 -2
  416. package/dist/components/Sheets/BottomSheet/BottomSheet/index.d.ts +2 -0
  417. package/dist/components/Sheets/BottomSheet/BottomSheet/index.js +1 -0
  418. package/dist/components/Sheets/{BottomSheetModal → BottomSheet/BottomSheetModal}/context.d.ts +1 -1
  419. package/dist/components/Sheets/BottomSheet/BottomSheetModal/index.js +1 -0
  420. package/dist/components/Sheets/{BottomSheetModal → BottomSheet/BottomSheetModal}/types.d.ts +1 -1
  421. package/dist/components/Sheets/BottomSheet/index.d.ts +1 -1
  422. package/dist/components/Sheets/BottomSheet/index.js +3 -2
  423. package/dist/components/Sheets/SideSheet/SideSheet/index.d.ts +3 -0
  424. package/dist/components/Sheets/SideSheet/SideSheet/index.js +1 -0
  425. package/dist/components/Sheets/{SideSheetModal → SideSheet/SideSheetModal}/context.d.ts +1 -1
  426. package/dist/components/Sheets/SideSheet/SideSheetModal/index.js +1 -0
  427. package/dist/components/Sheets/{SideSheetModal → SideSheet/SideSheetModal}/types.d.ts +1 -1
  428. package/dist/components/Sheets/SideSheet/index.d.ts +1 -2
  429. package/dist/components/Sheets/SideSheet/index.js +3 -2
  430. package/dist/components/Sheets/index.d.ts +0 -2
  431. package/dist/components/Snackbar/index.js +1 -2
  432. package/dist/components/Splash/index.js +1 -2
  433. package/dist/components/Tabs/Tab/index.js +1 -2
  434. package/dist/components/Tabs/TabList/index.js +1 -2
  435. package/dist/components/Tabs/TabPanel/index.js +1 -2
  436. package/dist/components/Tabs/TabPanels/index.js +1 -2
  437. package/dist/components/Tabs/Tabs/index.js +1 -2
  438. package/dist/components/Tag/index.js +1 -2
  439. package/dist/components/ThemeSelector/ThemeItem.d.ts +7 -1
  440. package/dist/components/ThemeSelector/ThemeSelector.d.ts +2 -2
  441. package/dist/components/ThemeSelector/core.d.ts +21 -11
  442. package/dist/components/ThemeSelector/index.js +1 -2
  443. package/dist/components/ThemeSelector/types.d.ts +41 -0
  444. package/dist/components/Toolbar/index.js +1 -2
  445. package/dist/components/Tooltip/RichTooltip/RichTooltip/RichTooltip.d.ts +4 -4
  446. package/dist/components/Tooltip/RichTooltip/RichTooltip/index.js +1 -2
  447. package/dist/components/Tooltip/RichTooltip/RichTooltipActions/index.js +1 -2
  448. package/dist/components/Tooltip/RichTooltip/RichTooltipInfo/RichTooltipInfo/index.js +1 -2
  449. package/dist/components/Tooltip/RichTooltip/RichTooltipInfo/RichTooltipSubhead/index.js +1 -2
  450. package/dist/components/Tooltip/RichTooltip/RichTooltipInfo/RichTooltipSubhead/index.js.map +1 -1
  451. package/dist/components/Tooltip/RichTooltip/RichTooltipInfo/RichTooltipText/index.js +1 -2
  452. package/dist/components/Tooltip/RichTooltip/RichTooltipInfo/RichTooltipText/index.js.map +1 -1
  453. package/dist/components/Tooltip/RichTooltip/RichTooltipTrigger/RichTooltipTrigger.d.ts +53 -0
  454. package/dist/components/Tooltip/RichTooltip/RichTooltipTrigger/index.d.ts +1 -0
  455. package/dist/components/Tooltip/RichTooltip/RichTooltipTrigger/index.js +11 -0
  456. package/dist/components/Tooltip/RichTooltip/RichTooltipTrigger/index.js.map +1 -0
  457. package/dist/components/Tooltip/RichTooltip/index.d.ts +1 -0
  458. package/dist/components/Tooltip/RichTooltip/index.js +2 -1
  459. package/dist/components/Tooltip/Tooltip/index.js +1 -2
  460. package/dist/components/Tooltip/TooltipTrigger/index.js +1 -2
  461. package/dist/components/Tooltip/index.js +4 -3
  462. package/dist/index.js +111 -111
  463. package/dist/index.js.map +1 -1
  464. package/dist/preview/AppBar/AppBar.d.ts +2 -0
  465. package/dist/preview/AppBar/index.d.ts +1 -0
  466. package/dist/preview/BottomSheet/BottomSheet.d.ts +6 -0
  467. package/dist/preview/BottomSheet/index.d.ts +1 -0
  468. package/dist/preview/Button/Button.d.ts +2 -0
  469. package/dist/preview/Button/index.d.ts +1 -0
  470. package/dist/preview/ButtonGroup/ButtonGroup.d.ts +2 -0
  471. package/dist/preview/ButtonGroup/index.d.ts +1 -0
  472. package/dist/preview/Calendar/Calendar.d.ts +2 -0
  473. package/dist/preview/Calendar/index.d.ts +1 -0
  474. package/dist/preview/Card/Card.d.ts +2 -0
  475. package/dist/preview/Card/index.d.ts +1 -0
  476. package/dist/preview/CenteredSlider/CenteredSlider.d.ts +2 -0
  477. package/dist/preview/CenteredSlider/index.d.ts +1 -0
  478. package/dist/preview/Checkbox/Checkbox.d.ts +2 -0
  479. package/dist/preview/Checkbox/index.d.ts +1 -0
  480. package/dist/preview/Config/Config.d.ts +8 -0
  481. package/dist/preview/Config/index.d.ts +1 -0
  482. package/dist/preview/ConnectedButtonGroup/ConnectedButtonGroup.d.ts +2 -0
  483. package/dist/preview/ConnectedButtonGroup/index.d.ts +1 -0
  484. package/dist/preview/DateField/DateField.d.ts +6 -0
  485. package/dist/preview/DateField/index.d.ts +1 -0
  486. package/dist/preview/DatePicker/DatePicker.d.ts +2 -0
  487. package/dist/preview/DatePicker/index.d.ts +1 -0
  488. package/dist/preview/DateRangePicker/DateRangePicker.d.ts +2 -0
  489. package/dist/preview/DateRangePicker/index.d.ts +1 -0
  490. package/dist/preview/Decorators/Decorators.d.ts +2 -0
  491. package/dist/preview/Decorators/index.d.ts +1 -0
  492. package/dist/preview/Dialog/Dialog.d.ts +2 -0
  493. package/dist/preview/Dialog/index.d.ts +1 -0
  494. package/dist/preview/Disclosure/Disclosure.d.ts +2 -0
  495. package/dist/preview/Disclosure/index.d.ts +1 -0
  496. package/dist/preview/Gradients/Gradients.d.ts +6 -0
  497. package/dist/preview/Gradients/index.d.ts +1 -0
  498. package/dist/preview/Icon/Icon.d.ts +2 -0
  499. package/dist/preview/Icon/index.d.ts +1 -0
  500. package/dist/preview/IconButton/IconButton.d.ts +2 -0
  501. package/dist/preview/IconButton/index.d.ts +1 -0
  502. package/dist/preview/Input/Input.d.ts +6 -0
  503. package/dist/preview/Input/index.d.ts +1 -0
  504. package/dist/preview/Link/Link.d.ts +2 -0
  505. package/dist/preview/Link/index.d.ts +1 -0
  506. package/dist/preview/List/List.d.ts +2 -0
  507. package/dist/preview/List/index.d.ts +1 -0
  508. package/dist/preview/Menu/Menu.d.ts +3 -0
  509. package/dist/preview/Menu/index.d.ts +1 -0
  510. package/dist/preview/Navigation/Navigation.d.ts +3 -0
  511. package/dist/preview/Navigation/index.d.ts +1 -0
  512. package/dist/preview/Radio/Radio.d.ts +2 -0
  513. package/dist/preview/Radio/index.d.ts +1 -0
  514. package/dist/preview/RangeCalendar/RangeCalendar.d.ts +2 -0
  515. package/dist/preview/RangeCalendar/index.d.ts +1 -0
  516. package/dist/preview/RangeSlider/RangeSlider.d.ts +2 -0
  517. package/dist/preview/RangeSlider/index.d.ts +1 -0
  518. package/dist/preview/SearchField/SearchField.d.ts +2 -0
  519. package/dist/preview/SearchField/index.d.ts +1 -0
  520. package/dist/preview/Select/Select.d.ts +2 -0
  521. package/dist/preview/Select/index.d.ts +1 -0
  522. package/dist/preview/SideSheet/SideSheet.d.ts +7 -0
  523. package/dist/preview/SideSheet/index.d.ts +1 -0
  524. package/dist/preview/Slider/Slider.d.ts +2 -0
  525. package/dist/preview/Slider/index.d.ts +1 -0
  526. package/dist/preview/Snackbar/Snackbar.d.ts +2 -0
  527. package/dist/preview/Snackbar/index.d.ts +1 -0
  528. package/dist/preview/SplitButton/SplitButton.d.ts +10 -0
  529. package/dist/preview/SplitButton/index.d.ts +1 -0
  530. package/dist/preview/Switch/Switch.d.ts +2 -0
  531. package/dist/preview/Switch/index.d.ts +1 -0
  532. package/dist/preview/Tabs/Tabs.d.ts +7 -0
  533. package/dist/preview/Tabs/index.d.ts +1 -0
  534. package/dist/preview/Tags/Tags.d.ts +2 -0
  535. package/dist/preview/Tags/index.d.ts +1 -0
  536. package/dist/preview/TextArea/TextArea.d.ts +6 -0
  537. package/dist/preview/TextArea/index.d.ts +1 -0
  538. package/dist/preview/ThemeSelector/ThemeSelector.d.ts +2 -0
  539. package/dist/preview/ThemeSelector/index.d.ts +1 -0
  540. package/dist/preview/TimeField/TimeField.d.ts +6 -0
  541. package/dist/preview/TimeField/index.d.ts +1 -0
  542. package/dist/preview/Toolbar/Toolbar.d.ts +10 -0
  543. package/dist/preview/Toolbar/index.d.ts +1 -0
  544. package/dist/preview/Tooltip/Tooltip.d.ts +2 -0
  545. package/dist/preview/Tooltip/index.d.ts +1 -0
  546. package/package.json +13 -13
  547. package/dist/components/Sheets/BottomSheetModal/index.js +0 -2
  548. package/dist/components/Sheets/SideSheetModal/index.js +0 -2
  549. /package/dist/components/Sheets/BottomSheet/{BottomSheet.d.ts → BottomSheet/BottomSheet.d.ts} +0 -0
  550. /package/dist/components/Sheets/BottomSheet/{types.d.ts → BottomSheet/types.d.ts} +0 -0
  551. /package/dist/components/Sheets/{BottomSheetModal → BottomSheet/BottomSheetModal}/BottomSheetModal.d.ts +0 -0
  552. /package/dist/components/Sheets/{BottomSheetModal → BottomSheet/BottomSheetModal}/index.d.ts +0 -0
  553. /package/dist/components/Sheets/SideSheet/{SideSheet.d.ts → SideSheet/SideSheet.d.ts} +0 -0
  554. /package/dist/components/Sheets/SideSheet/{SideSheetDialog.d.ts → SideSheet/SideSheetDialog.d.ts} +0 -0
  555. /package/dist/components/Sheets/SideSheet/{types.d.ts → SideSheet/types.d.ts} +0 -0
  556. /package/dist/components/Sheets/{SideSheetModal → SideSheet/SideSheetModal}/SideSheetModal.d.ts +0 -0
  557. /package/dist/components/Sheets/{SideSheetModal → SideSheet/SideSheetModal}/index.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"SearchField","names":["SearchField","AriaSearchField","styles","_Fragment","typography","searchField_module_default","SearchField$1","props","SearchField","clsx","className","renderProps","Fragment","Icon","Search","Input","\"input\"","isEmpty","IconButton","X"],"sources":["../../src/components/Input/SearchField/searchField.module.css","../../src/components/Input/SearchField/SearchField.tsx"],"sourcesContent":["/* configurable tokens\n*\n* --md-search-field-background\n* --md-search-field-color\n* --md-search-field-supporting-color\n*\n* configurable tokens end */\n\n@layer adgytec.comps {\n .search-field {\n --_md-search-field-background: var(\n --md-search-field-background,\n var(--md-sys-color-surface-container-high)\n );\n --_md-search-field-color: var(\n --md-search-field-color,\n var(--md-sys-color-on-surface)\n );\n --_md-search-field-supporting-color: var(\n --md-search-field-supporting-color,\n var(--md-sys-color-on-surface-variant)\n );\n\n display: flex;\n align-items: center;\n\n background-color: var(--_md-search-field-background);\n color: var(--_md-search-field-color);\n\n box-shadow: var(--md-sys-elevation-shadow-3);\n\n padding-block: var(--md-sys-layout-space-8);\n padding-inline-start: var(--md-sys-layout-space-16);\n padding-inline-end: var(--md-sys-layout-space-8);\n\n border-radius: var(--md-sys-shape-corner-radius-full);\n\n &[data-empty] {\n padding-block: var(--md-sys-layout-space-16);\n }\n\n &:has([data-focused]) {\n --focus-indicator-thickness: calc(3 * var(--dp, 1px));\n --focus-indicator-offset: calc(2 * var(--dp, 1px));\n --focus-indicator-color: var(--md-sys-color-secondary);\n\n outline-width: var(--focus-indicator-thickness);\n outline-style: solid;\n outline-offset: var(--focus-indicator-offset);\n outline-color: var(--focus-indicator-color);\n }\n\n &[data-disabled] {\n --_md-search-field-background: rgb(\n from var(--md-sys-color-surface-container-high) r g b /\n var(--md-sys-state-disabled-container)\n );\n --_md-search-field-color: rgb(\n from currentColor r g b /\n var(--md-sys-state-disabled-content)\n );\n box-shadow: none;\n }\n }\n\n .search-field [data-button] {\n --md-button-color: var(--_md-search-field-supporting-color);\n\n &[data-disabled] [data-visual-button] {\n background-color: transparent;\n }\n }\n\n .input {\n all: unset;\n\n width: 100%;\n\n padding-inline-start: var(--md-sys-layout-space-16);\n padding-inline-end: var(--md-sys-layout-space-8);\n\n &[data-disabled] {\n cursor: default;\n }\n }\n\n .input::placeholder {\n color: var(--_md-search-field-supporting-color);\n }\n\n .input[data-disabled]::placeholder {\n color: rgb(\n from currentColor r g b /\n var(--md-sys-state-disabled-content)\n );\n }\n}\n","import { clsx } from \"clsx\";\nimport { Search, X } from \"lucide-react\";\nimport { SearchField as AriaSearchField, Input } from \"react-aria-components\";\nimport { IconButton } from \"@/components/Button\";\nimport { Icon } from \"@/components/Icon\";\nimport { typography } from \"@/utils\";\nimport styles from \"./searchField.module.css\";\nimport type { SearchFieldProps } from \"./types\";\n\n/**\n * A search input field providing a leading search icon and automatic clear button.\n *\n * Implements accessible search interactions based on React Aria's `SearchField`,\n * clearing text via keyboard (`Escape`) or the integrated clear button.\n *\n * @example\n * ```tsx\n * import { SearchField } from '@adgytec/web-ui-components';\n *\n * <SearchField\n * placeholder=\"Search documents...\"\n * onSubmit={(query) => console.log('Searching for:', query)}\n * />\n * ```\n */\nexport const SearchField: React.FC<SearchFieldProps> = ({\n placeholder = \"Search\",\n className,\n ...props\n}) => {\n return (\n <AriaSearchField\n className={(renderProps) =>\n clsx(\n styles[\"search-field\"],\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n {...props}\n >\n {({ isEmpty }) => (\n <>\n <Icon icon={Search} size={24} data-search-icon />\n\n <Input\n className={clsx(styles[\"input\"], typography.bodyLarge)}\n placeholder={placeholder}\n />\n\n {!isEmpty && (\n <IconButton\n icon={X}\n size=\"small\"\n width=\"default\"\n color=\"standard\"\n />\n )}\n </>\n )}\n </AriaSearchField>\n );\n};\n"],"mappings":";;;;;;;;;;GCyBaA,KAA2C,EACpD,iBAAc,UACd,cACA,GAAGO,QAGC,kBAACN,GAAD;CACI,YAAY,MACRQ,EACIP,EAAO,iBACP,OAAOQ,KAAc,aACfA,EAAUC,CAAW,IACrBD,CACV;CAEJ,GAAIH;CAEF,WAAA,EAAE,iBACA,kBAAAJ,GAAA,EAAA,UAAA;EACI,kBAACU,GAAD;GAAM,MAAMC;GAAQ,MAAM;GAAI,oBAAA;EAAgB,CAAA;EAE9C,kBAACC,GAAD;GACI,WAAWN,EAAKP,EAAOc,OAAUZ,EAAW,SAAS;GACxC;EAAY,CAAA;EAG5B,CAACa,KACE,kBAACC,GAAD;GACI,MAAMC;GACN,MAAK;GACL,OAAM;GACN,OAAM;EAAU,CAAA;CAG5B,EAAA,CAAA;AAES,CAAA"}
1
+ {"version":3,"file":"SearchField","names":["SearchField","AriaSearchField","styles","_Fragment","typography","searchField_module_default","SearchField$1","props","SearchField","clsx","className","renderProps","Fragment","Icon","Search","Input","\"input\"","isEmpty","IconButton","X"],"sources":["../../src/components/Input/SearchField/searchField.module.css","../../src/components/Input/SearchField/SearchField.tsx"],"sourcesContent":["/* configurable tokens\n*\n* --md-search-field-background\n* --md-search-field-color\n* --md-search-field-supporting-color\n*\n* configurable tokens end */\n\n@layer adgytec.comps {\n .search-field {\n --_md-search-field-background: var(\n --md-search-field-background,\n var(--md-sys-color-surface-container-high)\n );\n --_md-search-field-color: var(\n --md-search-field-color,\n var(--md-sys-color-on-surface)\n );\n --_md-search-field-supporting-color: var(\n --md-search-field-supporting-color,\n var(--md-sys-color-on-surface-variant)\n );\n\n display: flex;\n align-items: center;\n\n background-color: var(--_md-search-field-background);\n color: var(--_md-search-field-color);\n\n box-shadow: var(--md-sys-elevation-shadow-3);\n\n padding-block: var(--md-sys-layout-space-8);\n padding-inline-start: var(--md-sys-layout-space-16);\n padding-inline-end: var(--md-sys-layout-space-8);\n\n border-radius: var(--md-sys-shape-corner-radius-full);\n\n &[data-empty] {\n padding-block: var(--md-sys-layout-space-16);\n }\n\n &:has([data-focused]) {\n --focus-indicator-thickness: calc(3 * var(--dp, 1px));\n --focus-indicator-offset: calc(2 * var(--dp, 1px));\n --focus-indicator-color: var(--md-sys-color-secondary);\n\n outline-width: var(--focus-indicator-thickness);\n outline-style: solid;\n outline-offset: var(--focus-indicator-offset);\n outline-color: var(--focus-indicator-color);\n }\n\n &[data-disabled] {\n --_md-search-field-background: rgb(\n from var(--md-sys-color-surface-container-high) r g b /\n var(--md-sys-state-disabled-container)\n );\n --_md-search-field-color: rgb(\n from currentColor r g b /\n var(--md-sys-state-disabled-content)\n );\n box-shadow: none;\n }\n }\n\n .search-field [data-button] {\n --md-button-color: var(--_md-search-field-supporting-color);\n\n &[data-disabled] [data-visual-button] {\n background-color: transparent;\n }\n }\n\n .input {\n all: unset;\n\n width: 100%;\n\n padding-inline-start: var(--md-sys-layout-space-16);\n padding-inline-end: var(--md-sys-layout-space-8);\n\n &[data-disabled] {\n cursor: default;\n }\n }\n\n .input::placeholder {\n color: var(--_md-search-field-supporting-color);\n }\n\n .input[data-disabled]::placeholder {\n color: rgb(\n from currentColor r g b /\n var(--md-sys-state-disabled-content)\n );\n }\n}\n","import { clsx } from \"clsx\";\nimport { Search, X } from \"lucide-react\";\nimport { SearchField as AriaSearchField, Input } from \"react-aria-components\";\nimport { IconButton } from \"@/components/Button\";\nimport { Icon } from \"@/components/Icon\";\nimport { typography } from \"@/utils\";\nimport styles from \"./searchField.module.css\";\nimport type { SearchFieldProps } from \"./types\";\n\n/**\n * A search input field providing a leading search icon and automatic clear button.\n *\n * Implements accessible search interactions based on React Aria's `SearchField`,\n * clearing text via keyboard (`Escape`) or the integrated clear button.\n *\n * @example\n * ```tsx\n * import { SearchField } from '@adgytec/web-ui-components';\n *\n * <SearchField\n * placeholder=\"Search documents...\"\n * onSubmit={(query) => console.log('Searching for:', query)}\n * />\n * ```\n */\nexport const SearchField: React.FC<SearchFieldProps> = ({\n placeholder = \"Search\",\n className,\n ...props\n}) => {\n return (\n <AriaSearchField\n className={(renderProps) =>\n clsx(\n styles[\"search-field\"],\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n {...props}\n >\n {({ isEmpty }) => (\n <>\n <Icon icon={Search} size={24} data-search-icon />\n\n <Input\n className={clsx(styles[\"input\"], typography.bodyLarge)}\n placeholder={placeholder}\n />\n\n {!isEmpty && (\n <IconButton\n icon={X}\n size=\"small\"\n width=\"default\"\n color=\"standard\"\n />\n )}\n </>\n )}\n </AriaSearchField>\n );\n};\n"],"mappings":";;;;;;;;;;A,GCyBaA,KAA2C,EACpD,iBAAc,UACd,cACA,GAAGO,QAGC,kBAACN,GAAD;CACI,YAAY,MACRQ,EACIP,EAAO,iBACP,OAAOQ,KAAc,aACfA,EAAUC,CAAW,IACrBD,CACV;CAEJ,GAAIH;CAEF,WAAA,EAAE,iBACA,kBAAAJ,GAAA,EAAA,UAAA;EACI,kBAACU,GAAD;GAAM,MAAMC;GAAQ,MAAM;GAAI,oBAAA;EAAgB,CAAA;EAE9C,kBAACC,GAAD;GACI,WAAWN,EAAKP,EAAOc,OAAUZ,EAAW,SAAS;GACxC;EAAY,CAAA;EAG5B,CAACa,KACE,kBAACC,GAAD;GACI,MAAMC;GACN,MAAK;GACL,OAAM;GACN,OAAM;EAAU,CAAA;CAG5B,EAAA,CAAA;AAES,CAAA"}
@@ -2,7 +2,7 @@ import { t as e } from "./compiler-runtime";
2
2
  import { t } from "./Popover";
3
3
  import { clsx as n } from "clsx";
4
4
  import { jsx as r } from "react/jsx-runtime";
5
- import '../assets/SelectPopover.css';//#region src/components/Input/Select/SelectPopover/selectPopover.module.css
5
+ import '../assets/SelectPopover.css';// src/components/Input/Select/SelectPopover/selectPopover.module.css
6
6
  var i = e(), a = { popover: "_popover_108ip_2" }, o = (e) => {
7
7
  let o = (0, i.c)(8), s, c;
8
8
  o[0] === e ? (s = o[1], c = o[2]) : ({className: s, ...c} = e, o[0] = e, o[1] = s, o[2] = c);
@@ -14,7 +14,6 @@ var i = e(), a = { popover: "_popover_108ip_2" }, o = (e) => {
14
14
  ...c
15
15
  }), o[5] = c, o[6] = l, o[7] = u) : u = o[7], u;
16
16
  };
17
- //#endregion
18
17
  export { o as t };
19
18
 
20
19
  //# sourceMappingURL=SelectPopover.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectPopover","names":["_c","styles","require_compiler_runtime","import_compiler_runtime","selectPopover_module_default","SelectPopover","$","className","props","t0","t1","clsx","renderProps","t2","Popover"],"sources":["../../src/components/Input/Select/SelectPopover/selectPopover.module.css","../../src/components/Input/Select/SelectPopover/SelectPopover.tsx"],"sourcesContent":["@layer adgytec.comps {\n .popover {\n min-inline-size: var(--trigger-width);\n\n display: grid;\n grid-template-rows: 1fr;\n }\n}\n","import { clsx } from \"clsx\";\nimport { Popover } from \"@/components/Popover\";\nimport styles from \"./selectPopover.module.css\";\n\n/**\n * Props for the {@link SelectPopover} component.\n * Extends {@link Popover} props.\n */\nexport interface SelectPopoverProps\n extends React.ComponentPropsWithRef<typeof Popover> {}\n\n/**\n * Floating dropdown container for displaying {@link SelectList} items.\n */\nexport const SelectPopover: React.FC<SelectPopoverProps> = ({\n className,\n ...props\n}) => {\n return (\n <Popover\n className={(renderProps) =>\n clsx(\n styles[\"popover\"],\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n {...props}\n />\n );\n};\n"],"mappings":";;;;;kDCcaK,KAA8C,MAAA;CAAA,IAAAC,KAAA,GAAAN,EAAAA,EAAAA,CAAA,CAAA,GAAAO,GAAAC;CAAA,AAAAF,EAAA,OAAAG,KAG1D,IAAAH,EAAA,IAAA,IAAAA,EAAA,OAH2D,eAAA,GAAAE,KAAAC,GAG3D,EAAA,KAAAA,GAAA,EAAA,KAAAF,GAAA,EAAA,KAAAC;CAAA,IAAAE;CAAA,AAAAJ,EAAA,OAAAC,IASgB,IAAAD,EAAA,MANM,KAAA,MACPK,EACIV,EAAM,SACN,OAAOM,KAAc,aACfA,EAAUK,CACF,IAFdL,CAGJ,GAAC,EAAA,KAAAA,GAAA,EAAA,KAAAG;CAAA,IAAAG;CAGP,OAHOP,EAAA,OAAAE,KAAAF,EAAA,OAAAI,KAPT,IAAA,kBAACI,GAAD;EACe,WAAAJ;EAMN,GAEDF;CAAK,CAAA,GACX,EAAA,KAAAA,GAAA,EAAA,KAAAE,GAAA,EAAA,KAAAG,KAAA,IAAAP,EAAA,IAVFO;AAUE"}
1
+ {"version":3,"file":"SelectPopover","names":["_c","styles","require_compiler_runtime","import_compiler_runtime","selectPopover_module_default","SelectPopover","$","className","props","t0","t1","clsx","renderProps","t2","Popover"],"sources":["../../src/components/Input/Select/SelectPopover/selectPopover.module.css","../../src/components/Input/Select/SelectPopover/SelectPopover.tsx"],"sourcesContent":["@layer adgytec.comps {\n .popover {\n min-inline-size: var(--trigger-width);\n\n display: grid;\n grid-template-rows: 1fr;\n }\n}\n","import { clsx } from \"clsx\";\nimport { Popover } from \"@/components/Popover\";\nimport styles from \"./selectPopover.module.css\";\n\n/**\n * Props for the {@link SelectPopover} component.\n * Extends {@link Popover} props.\n */\nexport interface SelectPopoverProps\n extends React.ComponentPropsWithRef<typeof Popover> {}\n\n/**\n * Floating dropdown container for displaying {@link SelectList} items.\n */\nexport const SelectPopover: React.FC<SelectPopoverProps> = ({\n className,\n ...props\n}) => {\n return (\n <Popover\n className={(renderProps) =>\n clsx(\n styles[\"popover\"],\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n {...props}\n />\n );\n};\n"],"mappings":";;;;;A,kDCcaK,KAA8C,MAAA;CAAA,IAAAC,KAAA,GAAAN,EAAAA,EAAAA,CAAA,CAAA,GAAAO,GAAAC;CAAA,AAAAF,EAAA,OAAAG,KAG1D,IAAAH,EAAA,IAAA,IAAAA,EAAA,OAH2D,eAAA,GAAAE,KAAAC,GAG3D,EAAA,KAAAA,GAAA,EAAA,KAAAF,GAAA,EAAA,KAAAC;CAAA,IAAAE;CAAA,AAAAJ,EAAA,OAAAC,IASgB,IAAAD,EAAA,MANM,KAAA,MACPK,EACIV,EAAM,SACN,OAAOM,KAAc,aACfA,EAAUK,CACF,IAFdL,CAGJ,GAAC,EAAA,KAAAA,GAAA,EAAA,KAAAG;CAAA,IAAAG;CAGP,OAHOP,EAAA,OAAAE,KAAAF,EAAA,OAAAI,KAPT,IAAA,kBAACI,GAAD;EACe,WAAAJ;EAMN,GAEDF;CAAK,CAAA,GACX,EAAA,KAAAA,GAAA,EAAA,KAAAE,GAAA,EAAA,KAAAG,KAAA,IAAAP,EAAA,IAVFO;AAUE"}
@@ -7,7 +7,7 @@ import { useContext as s } from "react";
7
7
  import { jsx as c, jsxs as l } from "react/jsx-runtime";
8
8
  import { Button as u, SelectStateContext as d, SelectValue as f } from "react-aria-components";
9
9
  import { ChevronDown as p } from "lucide-react";
10
- import '../assets/SelectTrigger.css';//#region src/components/Input/Select/SelectTrigger/selectTrigger.module.css
10
+ import '../assets/SelectTrigger.css';// src/components/Input/Select/SelectTrigger/selectTrigger.module.css
11
11
  var m = e(), h = {
12
12
  trigger: "_trigger_pud16_2",
13
13
  "select-value": "_select-value_pud16_37"
@@ -35,7 +35,6 @@ function _(e) {
35
35
  let { selectedText: t, isPlaceholder: n, defaultChildren: r } = e;
36
36
  return n ? r : t;
37
37
  }
38
- //#endregion
39
38
  export { g as t };
40
39
 
41
40
  //# sourceMappingURL=SelectTrigger.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectTrigger","names":["ChevronDown","TextFieldIconSize","_c","clsx","styles","require_compiler_runtime","Icon","UnsetStyles","EditorInputStyles","EditorStyles","clsx$1","import_compiler_runtime","selectTrigger_module_default","SelectTrigger","$","invalid","useContext","SelectStateContext","t0","typography","t1","t2","t3","SelectValue","_temp","ChevronDown","t4","props","Button","isPlaceholder","defaultChildren","selectedText"],"sources":["../../src/components/Input/Select/SelectTrigger/selectTrigger.module.css","../../src/components/Input/Select/SelectTrigger/SelectTrigger.tsx"],"sourcesContent":["@layer adgytec.overrides {\n .trigger {\n --rotate: 0;\n\n justify-content: space-between;\n cursor: pointer;\n\n &[data-pressed] {\n --rotate: 180deg;\n }\n\n > svg {\n color: var(--group-color);\n rotate: var(--rotate);\n transition: rotate var(--md-sys-motion-expressive-fast-spatial)\n var(--md-sys-motion-expressive-fast-spatial-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n }\n\n &[data-pressed] {\n --outline-color: var(--outline-color-focused-normal);\n --outline-color-focused: var(--outline-color);\n\n &[data-invalid] {\n --outline-color: var(--outline-color-invalid);\n }\n }\n\n &[data-disabled] {\n cursor: default;\n }\n }\n\n .select-value {\n flex: 1;\n text-align: start;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n &[data-placeholder] {\n color: var(--placeholder-color);\n }\n }\n}\n","import clsx from \"clsx\";\nimport { ChevronDown } from \"lucide-react\";\nimport { useContext } from \"react\";\nimport { Button, SelectStateContext, SelectValue } from \"react-aria-components\";\nimport { Icon } from \"@/components/Icon\";\nimport { typography } from \"@/utils\";\nimport {\n EditorInputStyles,\n EditorStyles,\n TextFieldIconSize,\n UnsetStyles,\n} from \"../../core\";\nimport styles from \"./selectTrigger.module.css\";\n\n/**\n * Props for the {@link SelectTrigger} component.\n * Extends React Aria's `Button` props (excluding `children`).\n */\nexport interface SelectTriggerProps\n extends Omit<React.ComponentPropsWithRef<typeof Button>, \"children\"> {}\n\n/**\n * The clickable input trigger button that displays the selected value and toggles the select dropdown menu.\n */\nexport const SelectTrigger: React.FC<SelectTriggerProps> = (props) => {\n const selectContextVal = useContext(SelectStateContext);\n const invalid = selectContextVal?.displayValidation.isInvalid;\n\n return (\n <Button\n className={clsx(\n UnsetStyles,\n EditorStyles,\n EditorInputStyles,\n typography.bodyLarge,\n styles[\"trigger\"]\n )}\n {...props}\n data-invalid={invalid || undefined}\n data-select-trigger={true}\n >\n <SelectValue className={clsx(styles[\"select-value\"])}>\n {({ selectedText, isPlaceholder, defaultChildren }) =>\n isPlaceholder ? defaultChildren : selectedText\n }\n </SelectValue>\n\n <Icon icon={ChevronDown} size={TextFieldIconSize} />\n </Button>\n );\n};\n"],"mappings":";;;;;;;;;;;;;GCwBaa,KAA8C,MAAA;CAAA,IAAAC,KAAA,GAAAZ,EAAAA,EAAAA,CAAA,CAAA,GAEvDa,IADyBC,EAAWC,CACpB,CAAA,EAAgB,kBAA6B,WAACC;CAAA,AAAAJ,EAAA,OAAA,OAAA,IAAA,2BAAA,KAI3C,IAAAX,EACPI,GACAE,GACAD,GACAW,EAAU,WACVf,EAAM,OACV,GAAC,EAAA,KAAAc,KAAA,IAAAJ,EAAA;CAEa,IAAAM,IAAAL,KAAA,KAAA,GAAoBM,GAAAC;CAAA,AAAAR,EAAA,OAAA,OAAA,IAAA,2BAAA,KAGlC,IAAA,kBAACS,GAAD;EAAwB,WAAApB,EAAKC,EAAO,eAAe;EAC9C,UAAAoB;CADO,CAAA,GAMZ,IAAA,kBAAClB,GAAD;EAAYN,MAAAyB;EAAmBxB,MAAAA;CAAiB,CAAA,GAAI,EAAA,KAAAoB,GAAA,EAAA,KAAAC,MAAA,IAAAR,EAAA,IAAA,IAAAA,EAAA;CAAA,IAAAY;CAC/C,OAD+CZ,EAAA,OAAAa,KAAAb,EAAA,OAAAM,KAlBxD,IAAA,kBAACQ,GAAD;EACe,WAAAV;EAMV,GACGS;EACU,gBAAAP;EACO,uBAAA;EAVzB,UAAA,CAYIC,GAMAC,CAlBG;KAmBE,EAAA,KAAAK,GAAA,EAAA,KAAAP,GAAA,EAAA,KAAAM,KAAA,IAAAZ,EAAA,IAnBTY;AAmBS;AAxB0C,SAAAF,EAAA,GAAA;CAkBzC,IAAA,EAAA,iBAAA,kBAAA,uBAAAN;CAAgD,OAC9CW,IAAAC,IAAAC;AAA8C"}
1
+ {"version":3,"file":"SelectTrigger","names":["ChevronDown","TextFieldIconSize","_c","clsx","styles","require_compiler_runtime","Icon","UnsetStyles","EditorInputStyles","EditorStyles","clsx$1","import_compiler_runtime","selectTrigger_module_default","SelectTrigger","$","invalid","useContext","SelectStateContext","t0","typography","t1","t2","t3","SelectValue","_temp","ChevronDown","t4","props","Button","isPlaceholder","defaultChildren","selectedText"],"sources":["../../src/components/Input/Select/SelectTrigger/selectTrigger.module.css","../../src/components/Input/Select/SelectTrigger/SelectTrigger.tsx"],"sourcesContent":["@layer adgytec.overrides {\n .trigger {\n --rotate: 0;\n\n justify-content: space-between;\n cursor: pointer;\n\n &[data-pressed] {\n --rotate: 180deg;\n }\n\n > svg {\n color: var(--group-color);\n rotate: var(--rotate);\n transition: rotate var(--md-sys-motion-expressive-fast-spatial)\n var(--md-sys-motion-expressive-fast-spatial-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n }\n\n &[data-pressed] {\n --outline-color: var(--outline-color-focused-normal);\n --outline-color-focused: var(--outline-color);\n\n &[data-invalid] {\n --outline-color: var(--outline-color-invalid);\n }\n }\n\n &[data-disabled] {\n cursor: default;\n }\n }\n\n .select-value {\n flex: 1;\n text-align: start;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n\n &[data-placeholder] {\n color: var(--placeholder-color);\n }\n }\n}\n","import clsx from \"clsx\";\nimport { ChevronDown } from \"lucide-react\";\nimport { useContext } from \"react\";\nimport { Button, SelectStateContext, SelectValue } from \"react-aria-components\";\nimport { Icon } from \"@/components/Icon\";\nimport { typography } from \"@/utils\";\nimport {\n EditorInputStyles,\n EditorStyles,\n TextFieldIconSize,\n UnsetStyles,\n} from \"../../core\";\nimport styles from \"./selectTrigger.module.css\";\n\n/**\n * Props for the {@link SelectTrigger} component.\n * Extends React Aria's `Button` props (excluding `children`).\n */\nexport interface SelectTriggerProps\n extends Omit<React.ComponentPropsWithRef<typeof Button>, \"children\"> {}\n\n/**\n * The clickable input trigger button that displays the selected value and toggles the select dropdown menu.\n */\nexport const SelectTrigger: React.FC<SelectTriggerProps> = (props) => {\n const selectContextVal = useContext(SelectStateContext);\n const invalid = selectContextVal?.displayValidation.isInvalid;\n\n return (\n <Button\n className={clsx(\n UnsetStyles,\n EditorStyles,\n EditorInputStyles,\n typography.bodyLarge,\n styles[\"trigger\"]\n )}\n {...props}\n data-invalid={invalid || undefined}\n data-select-trigger={true}\n >\n <SelectValue className={clsx(styles[\"select-value\"])}>\n {({ selectedText, isPlaceholder, defaultChildren }) =>\n isPlaceholder ? defaultChildren : selectedText\n }\n </SelectValue>\n\n <Icon icon={ChevronDown} size={TextFieldIconSize} />\n </Button>\n );\n};\n"],"mappings":";;;;;;;;;;;;;A,GCwBaa,KAA8C,MAAA;CAAA,IAAAC,KAAA,GAAAZ,EAAAA,EAAAA,CAAA,CAAA,GAEvDa,IADyBC,EAAWC,CACpB,CAAA,EAAgB,kBAA6B,WAACC;CAAA,AAAAJ,EAAA,OAAA,OAAA,IAAA,2BAAA,KAI3C,IAAAX,EACPI,GACAE,GACAD,GACAW,EAAU,WACVf,EAAM,OACV,GAAC,EAAA,KAAAc,KAAA,IAAAJ,EAAA;CAEa,IAAAM,IAAAL,KAAA,KAAA,GAAoBM,GAAAC;CAAA,AAAAR,EAAA,OAAA,OAAA,IAAA,2BAAA,KAGlC,IAAA,kBAACS,GAAD;EAAwB,WAAApB,EAAKC,EAAO,eAAe;EAC9C,UAAAoB;CADO,CAAA,GAMZ,IAAA,kBAAClB,GAAD;EAAYN,MAAAyB;EAAmBxB,MAAAA;CAAiB,CAAA,GAAI,EAAA,KAAAoB,GAAA,EAAA,KAAAC,MAAA,IAAAR,EAAA,IAAA,IAAAA,EAAA;CAAA,IAAAY;CAC/C,OAD+CZ,EAAA,OAAAa,KAAAb,EAAA,OAAAM,KAlBxD,IAAA,kBAACQ,GAAD;EACe,WAAAV;EAMV,GACGS;EACU,gBAAAP;EACO,uBAAA;EAVzB,UAAA,CAYIC,GAMAC,CAlBG;C,IAmBE,EAAA,KAAAK,GAAA,EAAA,KAAAP,GAAA,EAAA,KAAAM,KAAA,IAAAZ,EAAA,IAnBTY;AAmBS;AAxB0C,SAAAF,EAAA,GAAA;CAkBzC,IAAA,EAAA,iBAAA,kBAAA,uBAAAN;CAAgD,OAC9CW,IAAAC,IAAAC;AAA8C"}
@@ -8,7 +8,7 @@ import { useContext as o } from "react";
8
8
  import { Fragment as s, jsx as c, jsxs as l } from "react/jsx-runtime";
9
9
  import { Dialog as u, Header as d, Heading as f } from "react-aria-components";
10
10
  import { X as p } from "lucide-react";
11
- import '../assets/SideSheet.css';//#region src/components/Sheets/SideSheet/sideSheet.module.css
11
+ import '../assets/SideSheet.css';// src/components/Sheets/SideSheet/SideSheet/sideSheet.module.css
12
12
  var m = e(), h = {
13
13
  "side-sheet-dialog": "_side-sheet-dialog_6ff5y_10",
14
14
  "side-sheet": "_side-sheet_6ff5y_10",
@@ -71,7 +71,6 @@ var m = e(), h = {
71
71
  children: T
72
72
  }), r[14] = b, r[15] = C, r[16] = w, r[17] = T, r[18] = E) : E = r[18], E;
73
73
  };
74
- //#endregion
75
74
  export { g as n, _ as t };
76
75
 
77
76
  //# sourceMappingURL=SideSheet.map
@@ -1 +1 @@
1
- {"version":3,"file":"SideSheet","names":["alignment","layout","_c","clsx","styles","headline","X","alignment","_c","clsx","styles","_Fragment","require_compiler_runtime","SideSheetContext","clsx$1","import_compiler_runtime","sideSheet_module_default","SideSheetDialog","$","className","props","t0","useContext","t1","t2","alignment","layout","DialogContext","Dialog","SideSheet","actions","children","headline","hasActions","t3","Fragment","Header","Heading","typography","IconButton","X","renderProps","t4"],"sources":["../../src/components/Sheets/SideSheet/sideSheet.module.css","../../src/components/Sheets/SideSheet/SideSheetDialog.tsx","../../src/components/Sheets/SideSheet/SideSheet.tsx"],"sourcesContent":["/* configurable tokens\n*\n* --md-side-sheet-background\n* --md-side-sheet-color\n* --md-side-sheet-headline-color\n*\n* configurable tokens end */\n\n@layer adgytec.comps {\n .side-sheet-dialog {\n --_md-side-sheet-background: var(\n --md-side-sheet-background,\n var(--md-sys-color-surface-container-low)\n );\n --_md-side-sheet-color: var(\n --md-side-sheet-color,\n var(--md-sys-color-on-surface)\n );\n --_md-side-sheet-headline-color: var(\n --md-side-sheet-headline-color,\n var(--md-sys-color-on-surface-variant)\n );\n --_md-side-sheet-padding-inline: var(--md-sys-layout-space-16);\n --_max-inline-size: calc(400 * var(--dp, 1px));\n\n inline-size: min(100svi, var(--_max-inline-size));\n block-size: 100dvb;\n\n display: grid;\n grid-template-rows: 1fr;\n\n background-color: var(--_md-side-sheet-background);\n color: var(--_md-side-sheet-color);\n\n box-shadow: var(--md-sys-elevation-shadow-1);\n border-radius: var(--md-sys-shape-corner-radius-large);\n\n outline: none;\n\n &[data-layout=\"detached\"] {\n block-size: calc(100dvb - calc(2 * var(--_detached-margin)));\n inline-size: min(\n calc(100svi - calc(2 * var(--_detached-margin))),\n var(--_max-inline-size)\n );\n }\n\n &[data-layout=\"standard\"] {\n &[data-alignment=\"start\"] {\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n }\n\n &[data-alignment=\"end\"] {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n }\n }\n }\n\n .side-sheet {\n grid-template-rows: auto 1fr;\n padding-block: var(--md-sys-layout-space-16);\n\n &[data-actions] {\n grid-template-rows: auto 1fr auto;\n }\n }\n\n .header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--md-sys-layout-space-12);\n\n padding-inline: var(--_md-side-sheet-padding-inline);\n padding-block-end: var(--md-sys-layout-space-12);\n }\n\n .close {\n margin-inline-start: auto;\n }\n\n .headline {\n color: var(--_md-side-sheet-headline-color);\n }\n\n .main {\n padding-inline: var(--_md-side-sheet-padding-inline);\n overflow-y: auto;\n\n padding-block: var(--md-sys-layout-space-12);\n }\n\n .actions {\n --_divider-thickness: calc(1 * var(--dp, 1px));\n --_divider-color: rgb(\n from var(--md-sys-color-outline) r g b /\n var(--md-sys-state-divider)\n );\n\n padding-inline: var(--_md-side-sheet-padding-inline);\n padding-block-start: var(--md-sys-layout-space-12);\n display: flex;\n gap: var(--md-sys-layout-space-12);\n\n border-block-start: var(--_divider-thickness) solid\n var(--_divider-color);\n\n &[data-alignment=\"start\"] {\n justify-content: end;\n }\n\n &[data-alignment=\"end\"] {\n justify-content: start;\n }\n }\n}\n","import clsx from \"clsx\";\nimport { useContext } from \"react\";\nimport { Dialog } from \"react-aria-components\";\nimport { DialogContext } from \"@/components/Dialog\";\nimport { SideSheetContext } from \"../SideSheetModal\";\nimport styles from \"./sideSheet.module.css\";\nimport type { SideSheetDialogProps } from \"./types\";\n\n/**\n * Low-level dialog container for side sheets, useful for custom layout structures.\n *\n * Consumes {@link SideSheetContext} to apply appropriate `data-alignment` and `data-layout`\n * attributes for responsive positioning, border radiuses, and size constraints.\n * Also provides `DialogContext` with `true` for modal integration.\n *\n * @example\n * ```tsx\n * import { DialogTrigger, Header, Heading } from \"react-aria-components\";\n * import {\n * Button,\n * IconButton,\n * ModalOverlay,\n * SideSheetDialog,\n * SideSheetModal,\n * } from \"@adgytec/web-ui-components\";\n * import { X } from \"lucide-react\";\n *\n * export function Example() {\n * return (\n * <DialogTrigger>\n * <Button label=\"Open Custom Sheet\" />\n * <ModalOverlay>\n * <SideSheetModal alignment=\"end\" layout=\"standard\">\n * <SideSheetDialog>\n * {({ close }) => (\n * <>\n * <Header>\n * <Heading slot=\"title\">Custom Title</Heading>\n * <IconButton icon={X} onPress={close} aria-label=\"Close\" />\n * </Header>\n * <div>Custom content goes here.</div>\n * </>\n * )}\n * </SideSheetDialog>\n * </SideSheetModal>\n * </ModalOverlay>\n * </DialogTrigger>\n * );\n * }\n * ```\n */\nexport const SideSheetDialog: React.FC<SideSheetDialogProps> = ({\n className,\n ...props\n}) => {\n const { layout, alignment } = useContext(SideSheetContext);\n\n return (\n <DialogContext value={true}>\n <Dialog\n className={clsx(styles[\"side-sheet-dialog\"], className)}\n data-alignment={alignment}\n data-layout={layout}\n {...props}\n />\n </DialogContext>\n );\n};\n","import clsx from \"clsx\";\nimport { X } from \"lucide-react\";\nimport { useContext } from \"react\";\nimport { Header, Heading } from \"react-aria-components\";\nimport { IconButton } from \"@/components/Button\";\nimport { typography } from \"@/utils\";\nimport { SideSheetContext } from \"../SideSheetModal\";\nimport { SideSheetDialog } from \"./SideSheetDialog\";\nimport styles from \"./sideSheet.module.css\";\nimport type { SideSheetProps } from \"./types\";\n\n/**\n * High-level content container for side sheets, conforming to\n * [Material 3 Side Sheets](https://m3.material.io/components/side-sheets/overview).\n *\n * Provides a standard structured side sheet layout containing:\n * - A top header with an optional `headline` (`typography.titleLarge`) and a built-in close `IconButton` (`X`).\n * - A scrollable `main` content area.\n * - An optional bottom `actions` footer, automatically aligned with the sheet's alignment setting.\n *\n * Configurable CSS tokens:\n * - `--md-side-sheet-background`: Background color of the side sheet (`var(--md-sys-color-surface-container-low)`).\n * - `--md-side-sheet-color`: Text color of the side sheet (`var(--md-sys-color-on-surface)`).\n * - `--md-side-sheet-headline-color`: Color of the side sheet headline (`var(--md-sys-color-on-surface-variant)`).\n *\n * @example\n * ```tsx\n * import { DialogTrigger } from \"react-aria-components\";\n * import {\n * Button,\n * ModalOverlay,\n * SideSheet,\n * SideSheetModal,\n * } from \"@adgytec/web-ui-components\";\n *\n * export function Example() {\n * return (\n * <DialogTrigger>\n * <Button label=\"Open Side Sheet\" />\n * <ModalOverlay>\n * <SideSheetModal alignment=\"end\" layout=\"standard\">\n * <SideSheet\n * headline=\"Side Sheet Title\"\n * actions={[\n * <Button key=\"save\" label=\"Save\" onPress={() => {}} />,\n * <Button key=\"cancel\" label=\"Cancel\" variant=\"outline\" onPress={() => {}} />,\n * ]}\n * >\n * <p>This is the side sheet content.</p>\n * </SideSheet>\n * </SideSheetModal>\n * </ModalOverlay>\n * </DialogTrigger>\n * );\n * }\n * ```\n */\nexport const SideSheet: React.FC<SideSheetProps> = ({\n headline,\n actions,\n className,\n children,\n ...props\n}) => {\n const { alignment } = useContext(SideSheetContext);\n const hasActions = Array.isArray(actions) ? actions.length > 0 : !!actions;\n\n return (\n <SideSheetDialog\n className={clsx(styles[\"side-sheet\"], className)}\n {...props}\n data-actions={hasActions || undefined}\n >\n {(renderProps) => (\n <>\n <Header\n className={clsx(styles[\"header\"])}\n data-headline={!!headline || undefined}\n >\n {headline && (\n <Heading\n slot=\"title\"\n className={clsx(\n styles[\"headline\"],\n typography.titleLarge\n )}\n >\n {headline}\n </Heading>\n )}\n\n <IconButton\n slot=\"close\"\n icon={X}\n color=\"standard\"\n className={clsx(styles[\"close\"])}\n />\n </Header>\n\n <div className={clsx(styles[\"main\"])}>\n {typeof children === \"function\"\n ? children(renderProps)\n : children}\n </div>\n\n {hasActions && (\n <div\n className={clsx(styles[\"actions\"])}\n data-alignment={alignment}\n >\n {typeof actions === \"function\"\n ? actions(renderProps)\n : actions}\n </div>\n )}\n </>\n )}\n </SideSheetDialog>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"SideSheet","names":["alignment","layout","_c","clsx","styles","headline","X","alignment","_c","clsx","styles","_Fragment","require_compiler_runtime","SideSheetContext","clsx$1","import_compiler_runtime","sideSheet_module_default","SideSheetDialog","$","className","props","t0","useContext","t1","t2","alignment","layout","DialogContext","Dialog","SideSheet","actions","children","headline","hasActions","t3","Fragment","Header","Heading","typography","IconButton","X","renderProps","t4"],"sources":["../../src/components/Sheets/SideSheet/SideSheet/sideSheet.module.css","../../src/components/Sheets/SideSheet/SideSheet/SideSheetDialog.tsx","../../src/components/Sheets/SideSheet/SideSheet/SideSheet.tsx"],"sourcesContent":["/* configurable tokens\n*\n* --md-side-sheet-background\n* --md-side-sheet-color\n* --md-side-sheet-headline-color\n*\n* configurable tokens end */\n\n@layer adgytec.comps {\n .side-sheet-dialog {\n --_md-side-sheet-background: var(\n --md-side-sheet-background,\n var(--md-sys-color-surface-container-low)\n );\n --_md-side-sheet-color: var(\n --md-side-sheet-color,\n var(--md-sys-color-on-surface)\n );\n --_md-side-sheet-headline-color: var(\n --md-side-sheet-headline-color,\n var(--md-sys-color-on-surface-variant)\n );\n --_md-side-sheet-padding-inline: var(--md-sys-layout-space-16);\n --_max-inline-size: calc(400 * var(--dp, 1px));\n\n inline-size: min(100svi, var(--_max-inline-size));\n block-size: 100dvb;\n\n display: grid;\n grid-template-rows: 1fr;\n\n background-color: var(--_md-side-sheet-background);\n color: var(--_md-side-sheet-color);\n\n box-shadow: var(--md-sys-elevation-shadow-1);\n border-radius: var(--md-sys-shape-corner-radius-large);\n\n outline: none;\n\n &[data-layout=\"detached\"] {\n block-size: calc(100dvb - calc(2 * var(--_detached-margin)));\n inline-size: min(\n calc(100svi - calc(2 * var(--_detached-margin))),\n var(--_max-inline-size)\n );\n }\n\n &[data-layout=\"standard\"] {\n &[data-alignment=\"start\"] {\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n }\n\n &[data-alignment=\"end\"] {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n }\n }\n }\n\n .side-sheet {\n grid-template-rows: auto 1fr;\n padding-block: var(--md-sys-layout-space-16);\n\n &[data-actions] {\n grid-template-rows: auto 1fr auto;\n }\n }\n\n .header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--md-sys-layout-space-12);\n\n padding-inline: var(--_md-side-sheet-padding-inline);\n padding-block-end: var(--md-sys-layout-space-12);\n }\n\n .close {\n margin-inline-start: auto;\n }\n\n .headline {\n color: var(--_md-side-sheet-headline-color);\n }\n\n .main {\n padding-inline: var(--_md-side-sheet-padding-inline);\n overflow-y: auto;\n\n padding-block: var(--md-sys-layout-space-12);\n }\n\n .actions {\n --_divider-thickness: calc(1 * var(--dp, 1px));\n --_divider-color: rgb(\n from var(--md-sys-color-outline) r g b /\n var(--md-sys-state-divider)\n );\n\n padding-inline: var(--_md-side-sheet-padding-inline);\n padding-block-start: var(--md-sys-layout-space-12);\n display: flex;\n gap: var(--md-sys-layout-space-12);\n\n border-block-start: var(--_divider-thickness) solid\n var(--_divider-color);\n\n &[data-alignment=\"start\"] {\n justify-content: end;\n }\n\n &[data-alignment=\"end\"] {\n justify-content: start;\n }\n }\n}\n","import clsx from \"clsx\";\nimport { useContext } from \"react\";\nimport { Dialog } from \"react-aria-components\";\nimport { DialogContext } from \"@/components/Dialog\";\nimport { SideSheetContext } from \"../SideSheetModal\";\nimport styles from \"./sideSheet.module.css\";\nimport type { SideSheetDialogProps } from \"./types\";\n\n/**\n * Low-level dialog container for side sheets, useful for custom layout structures.\n *\n * Consumes {@link SideSheetContext} to apply appropriate `data-alignment` and `data-layout`\n * attributes for responsive positioning, border radiuses, and size constraints.\n * Also provides `DialogContext` with `true` for modal integration.\n *\n * @example\n * ```tsx\n * import { DialogTrigger, Header, Heading } from \"react-aria-components\";\n * import {\n * Button,\n * IconButton,\n * ModalOverlay,\n * SideSheetDialog,\n * SideSheetModal,\n * } from \"@adgytec/web-ui-components\";\n * import { X } from \"lucide-react\";\n *\n * export function Example() {\n * return (\n * <DialogTrigger>\n * <Button label=\"Open Custom Sheet\" />\n * <ModalOverlay>\n * <SideSheetModal alignment=\"end\" layout=\"standard\">\n * <SideSheetDialog>\n * {({ close }) => (\n * <>\n * <Header>\n * <Heading slot=\"title\">Custom Title</Heading>\n * <IconButton icon={X} onPress={close} aria-label=\"Close\" />\n * </Header>\n * <div>Custom content goes here.</div>\n * </>\n * )}\n * </SideSheetDialog>\n * </SideSheetModal>\n * </ModalOverlay>\n * </DialogTrigger>\n * );\n * }\n * ```\n */\nexport const SideSheetDialog: React.FC<SideSheetDialogProps> = ({\n className,\n ...props\n}) => {\n const { layout, alignment } = useContext(SideSheetContext);\n\n return (\n <DialogContext value={true}>\n <Dialog\n className={clsx(styles[\"side-sheet-dialog\"], className)}\n data-alignment={alignment}\n data-layout={layout}\n {...props}\n />\n </DialogContext>\n );\n};\n","import clsx from \"clsx\";\nimport { X } from \"lucide-react\";\nimport { useContext } from \"react\";\nimport { Header, Heading } from \"react-aria-components\";\nimport { IconButton } from \"@/components/Button\";\nimport { typography } from \"@/utils\";\nimport { SideSheetContext } from \"../SideSheetModal\";\nimport { SideSheetDialog } from \"./SideSheetDialog\";\nimport styles from \"./sideSheet.module.css\";\nimport type { SideSheetProps } from \"./types\";\n\n/**\n * High-level content container for side sheets, conforming to\n * [Material 3 Side Sheets](https://m3.material.io/components/side-sheets/overview).\n *\n * Provides a standard structured side sheet layout containing:\n * - A top header with an optional `headline` (`typography.titleLarge`) and a built-in close `IconButton` (`X`).\n * - A scrollable `main` content area.\n * - An optional bottom `actions` footer, automatically aligned with the sheet's alignment setting.\n *\n * Configurable CSS tokens:\n * - `--md-side-sheet-background`: Background color of the side sheet (`var(--md-sys-color-surface-container-low)`).\n * - `--md-side-sheet-color`: Text color of the side sheet (`var(--md-sys-color-on-surface)`).\n * - `--md-side-sheet-headline-color`: Color of the side sheet headline (`var(--md-sys-color-on-surface-variant)`).\n *\n * @example\n * ```tsx\n * import { DialogTrigger } from \"react-aria-components\";\n * import {\n * Button,\n * ModalOverlay,\n * SideSheet,\n * SideSheetModal,\n * } from \"@adgytec/web-ui-components\";\n *\n * export function Example() {\n * return (\n * <DialogTrigger>\n * <Button label=\"Open Side Sheet\" />\n * <ModalOverlay>\n * <SideSheetModal alignment=\"end\" layout=\"standard\">\n * <SideSheet\n * headline=\"Side Sheet Title\"\n * actions={[\n * <Button key=\"save\" label=\"Save\" onPress={() => {}} />,\n * <Button key=\"cancel\" label=\"Cancel\" variant=\"outline\" onPress={() => {}} />,\n * ]}\n * >\n * <p>This is the side sheet content.</p>\n * </SideSheet>\n * </SideSheetModal>\n * </ModalOverlay>\n * </DialogTrigger>\n * );\n * }\n * ```\n */\nexport const SideSheet: React.FC<SideSheetProps> = ({\n headline,\n actions,\n className,\n children,\n ...props\n}) => {\n const { alignment } = useContext(SideSheetContext);\n const hasActions = Array.isArray(actions) ? actions.length > 0 : !!actions;\n\n return (\n <SideSheetDialog\n className={clsx(styles[\"side-sheet\"], className)}\n {...props}\n data-actions={hasActions || undefined}\n >\n {(renderProps) => (\n <>\n <Header\n className={clsx(styles[\"header\"])}\n data-headline={!!headline || undefined}\n >\n {headline && (\n <Heading\n slot=\"title\"\n className={clsx(\n styles[\"headline\"],\n typography.titleLarge\n )}\n >\n {headline}\n </Heading>\n )}\n\n <IconButton\n slot=\"close\"\n icon={X}\n color=\"standard\"\n className={clsx(styles[\"close\"])}\n />\n </Header>\n\n <div className={clsx(styles[\"main\"])}>\n {typeof children === \"function\"\n ? children(renderProps)\n : children}\n </div>\n\n {hasActions && (\n <div\n className={clsx(styles[\"actions\"])}\n data-alignment={alignment}\n >\n {typeof actions === \"function\"\n ? actions(renderProps)\n : actions}\n </div>\n )}\n </>\n )}\n </SideSheetDialog>\n );\n};\n"],"mappings":"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"}
@@ -2,11 +2,11 @@ import e from "clsx";
2
2
  import { createContext as t } from "react";
3
3
  import { jsx as n } from "react/jsx-runtime";
4
4
  import { Modal as r } from "react-aria-components";
5
- import '../assets/SideSheetModal.css';//#region src/components/Sheets/SideSheetModal/context.ts
5
+ import '../assets/SideSheetModal.css';// src/components/Sheets/SideSheet/SideSheetModal/context.ts
6
6
  var i = t({
7
7
  layout: "standard",
8
8
  alignment: "end"
9
- }), a = { modal: "_modal_1gjq1_2" }, o = ({ className: t, alignment: o = "end", layout: s = "standard", ...c }) => /* @__PURE__ */ n(i, {
9
+ }), a = { modal: "_modal_dthov_2" }, o = ({ className: t, alignment: o = "end", layout: s = "standard", ...c }) => /* @__PURE__ */ n(i, {
10
10
  value: {
11
11
  alignment: o,
12
12
  layout: s
@@ -18,7 +18,6 @@ var i = t({
18
18
  ...c
19
19
  })
20
20
  });
21
- //#endregion
22
21
  export { i as n, o as t };
23
22
 
24
23
  //# sourceMappingURL=SideSheetModal.map
@@ -1 +1 @@
1
- {"version":3,"file":"SideSheetModal","names":["clsx","styles","clsx$1","SideSheetContext","createContext","sideSheetModal_module_default","SideSheetModal","props","Modal","alignment","layout","\"modal\"","className","renderProps"],"sources":["../../src/components/Sheets/SideSheetModal/context.ts","../../src/components/Sheets/SideSheetModal/sideSheetModal.module.css","../../src/components/Sheets/SideSheetModal/SideSheetModal.tsx"],"sourcesContent":["import { createContext } from \"react\";\nimport type { SheetLayout } from \"../core\";\nimport type { SideSheetAlignment } from \"./types\";\n\n/**\n * Context value passed from {@link SideSheetModal} to descendant side sheet components like {@link SideSheetDialog} and {@link SideSheet}.\n */\nexport type SideSheetContextValue = {\n /**\n * Current layout style (`\"standard\"` or `\"detached\"`).\n */\n layout: SheetLayout;\n /**\n * Current alignment edge (`\"start\"` or `\"end\"`).\n */\n alignment: SideSheetAlignment;\n};\n\n/**\n * React context providing layout and alignment properties for side sheets.\n * Default values are `layout: \"standard\"` and `alignment: \"end\"`.\n */\nexport const SideSheetContext = createContext<SideSheetContextValue>({\n layout: \"standard\",\n alignment: \"end\",\n});\n","@layer adgytec.comps {\n .modal {\n --_detached-margin: var(--md-sys-layout-space-16);\n\n position: fixed;\n\n &[data-layout=\"detached\"] {\n margin: var(--_detached-margin);\n }\n\n &[data-alignment=\"start\"] {\n --_from: -100%;\n }\n\n &[data-alignment=\"end\"] {\n --_from: 100%;\n\n inset-inline-end: 0;\n }\n\n transition: translate var(--_modal-motion) var(--_modal-motion-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n\n &[data-entering],\n &[data-exiting] {\n translate: var(--_from);\n }\n }\n}\n","import clsx from \"clsx\";\nimport { Modal } from \"react-aria-components\";\nimport { SideSheetContext } from \"./context\";\nimport styles from \"./sideSheetModal.module.css\";\nimport type { SideSheetModalProps } from \"./types\";\n\n/**\n * Modal container for a side sheet ({@link SideSheet} or {@link SideSheetDialog}).\n *\n * Implements [Material 3 Side Sheets](https://m3.material.io/components/side-sheets/overview)\n * positioning and animations using React Aria Components `Modal`. Sets `data-alignment` and\n * `data-layout` attributes to control entry/exit slide animations and viewport anchoring,\n * and provides layout and alignment configurations to children through {@link SideSheetContext}.\n *\n * @example\n * ```tsx\n * import { DialogTrigger } from \"react-aria-components\";\n * import {\n * Button,\n * ModalOverlay,\n * SideSheet,\n * SideSheetModal,\n * } from \"@adgytec/web-ui-components\";\n *\n * export function Example() {\n * return (\n * <DialogTrigger>\n * <Button label=\"Open Details\" />\n * <ModalOverlay>\n * <SideSheetModal alignment=\"end\" layout=\"standard\">\n * <SideSheet headline=\"Details\">\n * <p>Side sheet content goes here.</p>\n * </SideSheet>\n * </SideSheetModal>\n * </ModalOverlay>\n * </DialogTrigger>\n * );\n * }\n * ```\n */\nexport const SideSheetModal: React.FC<SideSheetModalProps> = ({\n className,\n alignment = \"end\",\n layout = \"standard\",\n ...props\n}) => {\n return (\n <SideSheetContext value={{ alignment, layout }}>\n <Modal\n data-alignment={alignment}\n data-layout={layout}\n className={(renderProps) =>\n clsx(\n styles[\"modal\"],\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n {...props}\n />\n </SideSheetContext>\n );\n};\n"],"mappings":";;;;;AAsBA,IAAaG,IAAmBC,EAAqC;CACjE,QAAQ;CACR,WAAW;AACf,CAAC,oCEeYE,KAAiD,EAC1D,cACA,eAAY,OACZ,YAAS,YACT,GAAGC,QAGC,kBAACJ,GAAD;CAAkB,OAAO;EAAE;EAAW;CAAO;CACzC,UAAA,kBAACK,GAAD;EACI,kBAAgBC;EAChB,eAAaC;EACb,YAAY,MACRV,EACIC,EAAOU,OACP,OAAOC,KAAc,aACfA,EAAUC,CAAW,IACrBD,CACV;EAEJ,GAAIL;CAAM,CAAA;AAEA,CAAA"}
1
+ {"version":3,"file":"SideSheetModal","names":["clsx","styles","clsx$1","SideSheetContext","createContext","sideSheetModal_module_default","SideSheetModal","props","Modal","alignment","layout","\"modal\"","className","renderProps"],"sources":["../../src/components/Sheets/SideSheet/SideSheetModal/context.ts","../../src/components/Sheets/SideSheet/SideSheetModal/sideSheetModal.module.css","../../src/components/Sheets/SideSheet/SideSheetModal/SideSheetModal.tsx"],"sourcesContent":["import { createContext } from \"react\";\nimport type { SheetLayout } from \"../../core\";\nimport type { SideSheetAlignment } from \"./types\";\n\n/**\n * Context value passed from {@link SideSheetModal} to descendant side sheet components like {@link SideSheetDialog} and {@link SideSheet}.\n */\nexport type SideSheetContextValue = {\n /**\n * Current layout style (`\"standard\"` or `\"detached\"`).\n */\n layout: SheetLayout;\n /**\n * Current alignment edge (`\"start\"` or `\"end\"`).\n */\n alignment: SideSheetAlignment;\n};\n\n/**\n * React context providing layout and alignment properties for side sheets.\n * Default values are `layout: \"standard\"` and `alignment: \"end\"`.\n */\nexport const SideSheetContext = createContext<SideSheetContextValue>({\n layout: \"standard\",\n alignment: \"end\",\n});\n","@layer adgytec.comps {\n .modal {\n --_sheet-modal-motion: var(--md-sys-motion-expressive-fast-spatial);\n --_sheet-modal-motion-duration: var(\n --md-sys-motion-expressive-fast-spatial-duration\n );\n\n --_detached-margin: var(--md-sys-layout-space-16);\n\n position: fixed;\n\n &[data-layout=\"standard\"] {\n --_sheet-modal-motion: var(--md-sys-motion-expressive-fast-effects);\n --_sheet-modal-motion-duration: var(\n --md-sys-motion-expressive-fast-effects-duration\n );\n }\n\n &[data-layout=\"detached\"] {\n margin: var(--_detached-margin);\n }\n\n &[data-alignment=\"start\"] {\n --_from: -100%;\n }\n\n &[data-alignment=\"end\"] {\n --_from: 100%;\n\n inset-inline-end: 0;\n }\n\n transition: translate var(--_sheet-modal-motion)\n var(--_sheet-modal-motion-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n\n &[data-entering],\n &[data-exiting] {\n translate: var(--_from);\n }\n }\n}\n","import clsx from \"clsx\";\nimport { Modal } from \"react-aria-components\";\nimport { SideSheetContext } from \"./context\";\nimport styles from \"./sideSheetModal.module.css\";\nimport type { SideSheetModalProps } from \"./types\";\n\n/**\n * Modal container for a side sheet ({@link SideSheet} or {@link SideSheetDialog}).\n *\n * Implements [Material 3 Side Sheets](https://m3.material.io/components/side-sheets/overview)\n * positioning and animations using React Aria Components `Modal`. Sets `data-alignment` and\n * `data-layout` attributes to control entry/exit slide animations and viewport anchoring,\n * and provides layout and alignment configurations to children through {@link SideSheetContext}.\n *\n * @example\n * ```tsx\n * import { DialogTrigger } from \"react-aria-components\";\n * import {\n * Button,\n * ModalOverlay,\n * SideSheet,\n * SideSheetModal,\n * } from \"@adgytec/web-ui-components\";\n *\n * export function Example() {\n * return (\n * <DialogTrigger>\n * <Button label=\"Open Details\" />\n * <ModalOverlay>\n * <SideSheetModal alignment=\"end\" layout=\"standard\">\n * <SideSheet headline=\"Details\">\n * <p>Side sheet content goes here.</p>\n * </SideSheet>\n * </SideSheetModal>\n * </ModalOverlay>\n * </DialogTrigger>\n * );\n * }\n * ```\n */\nexport const SideSheetModal: React.FC<SideSheetModalProps> = ({\n className,\n alignment = \"end\",\n layout = \"standard\",\n ...props\n}) => {\n return (\n <SideSheetContext value={{ alignment, layout }}>\n <Modal\n data-alignment={alignment}\n data-layout={layout}\n className={(renderProps) =>\n clsx(\n styles[\"modal\"],\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n {...props}\n />\n </SideSheetContext>\n );\n};\n"],"mappings":";;;;;AAsBA,IAAaG,IAAmBC,EAAqC;CACjE,QAAQ;CACR,WAAW;AACf,CAAC,G,iCEeYE,KAAiD,EAC1D,cACA,eAAY,OACZ,YAAS,YACT,GAAGC,QAGC,kBAACJ,GAAD;CAAkB,OAAO;EAAE;EAAW;CAAO;CACzC,UAAA,kBAACK,GAAD;EACI,kBAAgBC;EAChB,eAAaC;EACb,YAAY,MACRV,EACIC,EAAOU,OACP,OAAOC,KAAc,aACfA,EAAUC,CAAW,IACrBD,CACV;EAEJ,GAAIL;CAAM,CAAA;AAEA,CAAA"}
@@ -68,7 +68,6 @@ import '../assets/Slider.css';var h = {
68
68
  }
69
69
  });
70
70
  };
71
- //#endregion
72
71
  export { g as t };
73
72
 
74
73
  //# sourceMappingURL=Slider.map
@@ -1 +1 @@
1
- {"version":3,"file":"Slider","names":["Slider","AriaSlider","clsx","_Fragment","Label","styles","SliderThumb","Icon","Label$1","SliderStyles","SliderColors","TrackContainerStyles","TrackStyles","SliderStops","SliderThumb$1","clsx$1","slider_module_default","Slider$1","props","canShowIcon","size","iconSize","Slider","className","renderProps","thumbValue","state","visibleIcon","insetIcon","minInsetIcon","Fragment","label","orientation","SliderTrack","SliderSizeStyles","\"icon\"","isDisabled","thumbLabel"],"sources":["../../src/components/Input/Slider/Slider/slider.module.css","../../src/components/Input/Slider/Slider/Slider.tsx"],"sourcesContent":["@layer adgytec.comps {\n .visual-track {\n position: absolute;\n inset: 0;\n z-index: 0;\n\n border-radius: var(--_md-slider-track-shape);\n\n display: flex;\n gap: var(--_track-gap);\n\n &[data-orientation=\"horizontal\"] {\n inset-inline: var(--_orientation-inset);\n }\n\n &[data-orientation=\"vertical\"] {\n flex-direction: column-reverse;\n inset-block: var(--_orientation-inset);\n }\n }\n\n .active-track {\n background-color: var(--_active-track-color);\n border-radius: var(--_md-slider-track-shape);\n\n &[data-orientation=\"horizontal\"] {\n border-start-end-radius: var(--_md-slider-track-inner-shape);\n border-end-end-radius: var(--_md-slider-track-inner-shape);\n }\n\n &[data-orientation=\"vertical\"] {\n border-start-end-radius: var(--_md-slider-track-inner-shape);\n border-start-start-radius: var(--_md-slider-track-inner-shape);\n }\n }\n\n .inactive-track {\n background-color: var(--_inactive-track-color);\n border-radius: var(--_md-slider-track-shape);\n\n &[data-orientation=\"horizontal\"] {\n border-start-start-radius: var(--_md-slider-track-inner-shape);\n border-end-start-radius: var(--_md-slider-track-inner-shape);\n }\n\n &[data-orientation=\"vertical\"] {\n border-end-end-radius: var(--_md-slider-track-inner-shape);\n border-end-start-radius: var(--_md-slider-track-inner-shape);\n }\n }\n\n .icon {\n --_min-icon-gap: calc(var(--_track-gap) / 1.5);\n\n position: absolute;\n\n color: var(--_md-slider-icon-color);\n transition: color var(--md-sys-motion-standard-fast-spatial)\n var(--md-sys-motion-standard-fast-spatial-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n\n &[data-minimum-value] {\n color: var(--_md-slider-minimum-value-icon-color);\n }\n\n &[data-disabled] {\n color: rgb(\n from var(--md-sys-color-inverse-on-surface) r g b /\n var(--md-sys-state-disabled-content)\n );\n\n &[data-minimum-value] {\n color: rgb(\n from var(--md-sys-color-on-surface) r g b /\n var(--md-sys-state-disabled-container)\n );\n }\n }\n\n &[data-orientation=\"horizontal\"] {\n inset-block-start: 50%;\n translate: 0 -50%;\n\n &[data-minimum-value] {\n inset-inline-start: var(--_min-icon-gap);\n }\n }\n\n &[data-orientation=\"vertical\"] {\n inset-block-end: 0;\n inset-inline-start: 50%;\n translate: -50% 0;\n\n &[data-minimum-value] {\n inset-block-end: var(--_min-icon-gap);\n }\n }\n }\n}\n","import clsx from \"clsx\";\nimport { Slider as AriaSlider, SliderTrack } from \"react-aria-components\";\nimport { Icon } from \"@/components/Icon\";\nimport { Label } from \"../../Label\";\nimport {\n SliderColors,\n SliderSizeStyles,\n SliderStyles,\n TrackContainerStyles,\n TrackStyles,\n} from \"../core\";\nimport { SliderStops } from \"../SliderStops\";\nimport { SliderThumb } from \"../SliderThumb\";\nimport styles from \"./slider.module.css\";\nimport type { SliderProps } from \"./types\";\n\n/**\n * Material Design 3 single-value slider component.\n *\n * Allows users to choose a specific numeric value along a track using a draggable thumb.\n * Supports configurable sizes, step indicators via [`SliderStops`](file:///home/rohan/work/adgytec/adgytec-web-ui-components/src/components/Input/Slider/SliderStops/SliderStops.tsx),\n * inset icons with automatic minimum-value swapping, and custom output formatting.\n *\n * @example\n * ```tsx\n * import { Slider } from \"@adgytec/web-ui-components\";\n * import { Volume2, VolumeX } from \"lucide-react\";\n *\n * <Slider\n * label=\"Volume\"\n * minValue={0}\n * maxValue={100}\n * defaultValue={50}\n * size=\"medium\"\n * insetIcon={Volume2}\n * minInsetIcon={VolumeX}\n * />\n * ```\n */\nexport const Slider = <T extends number>({\n label,\n thumbLabel,\n size = \"small\",\n step = 1,\n minValue = 0,\n maxValue = 100,\n showInBetweenSteps,\n insetIcon,\n minInsetIcon,\n maxStops,\n outputRenderer,\n className,\n ...props\n}: SliderProps<T>) => {\n const canShowIcon = size !== \"extra-small\" && size !== \"small\";\n const iconSize = size === \"extra-large\" ? 32 : 24;\n\n return (\n <AriaSlider\n minValue={minValue}\n maxValue={maxValue}\n step={step}\n className={(renderProps) =>\n clsx(\n SliderStyles,\n SliderColors,\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n {...props}\n >\n {({ orientation, state, isDisabled }) => {\n const thumbValue = state.getThumbPercent(0);\n\n let visibleIcon = insetIcon;\n if (thumbValue === 0 && minInsetIcon) {\n visibleIcon = minInsetIcon;\n }\n\n return (\n <>\n {label && <Label>{label}</Label>}\n\n <div\n className={clsx(TrackContainerStyles)}\n data-orientation={orientation}\n >\n <SliderTrack\n className={clsx(\n TrackStyles,\n SliderSizeStyles(size)\n )}\n >\n <div\n className={clsx(styles[\"visual-track\"])}\n data-orientation={orientation}\n >\n <div\n className={clsx(styles[\"active-track\"])}\n data-orientation={orientation}\n style={{\n flexGrow: state.getThumbPercent(0),\n }}\n />\n\n <div\n className={clsx(\n styles[\"inactive-track\"]\n )}\n style={{\n flexGrow:\n 1 - state.getThumbPercent(0),\n }}\n data-orientation={orientation}\n />\n </div>\n\n {canShowIcon && visibleIcon && (\n <Icon\n icon={visibleIcon}\n size={iconSize}\n className={clsx(styles[\"icon\"])}\n data-minimum-value={\n thumbValue === 0 || undefined\n }\n data-disabled={isDisabled || undefined}\n data-orientation={orientation}\n />\n )}\n\n <SliderThumb\n size={size}\n orientation={orientation}\n aria-label={thumbLabel}\n outputRenderer={outputRenderer}\n />\n\n <SliderStops\n minValue={minValue}\n maxValue={maxValue}\n step={step}\n orientation={orientation}\n showInBetweenSteps={showInBetweenSteps}\n maxStops={maxStops}\n />\n </SliderTrack>\n </div>\n </>\n );\n }}\n </AriaSlider>\n );\n};\n"],"mappings":";;;;;;;;;;;;;GCuCaA,KAA4B,EACrC,UACA,eACA,UAAO,SACP,UAAO,GACP,cAAW,GACX,cAAW,KACX,uBACA,cACA,iBACA,aACA,mBACA,cACA,GAAGkB,QACe;CAClB,IAAMC,IAAcC,MAAS,iBAAiBA,MAAS,SACjDC,IAAWD,MAAS,gBAAgB,KAAK;CAE/C,OACI,kBAACnB,GAAD;EACc;EACA;EACJ;EACN,YAAY,MACRC,EACIO,GACAC,GACA,OAAOa,KAAc,aACfA,EAAUC,CAAW,IACrBD,CACV;EAEJ,GAAIL;EAEF,WAAA,EAAE,gBAAa,UAAO,oBAAiB;GACrC,IAAMO,IAAaC,EAAM,gBAAgB,CAAC,GAEtCC,IAAcC;GAKlB,OAJIH,MAAe,KAAKI,MACpB,IAAcA,IAId,kBAAA1B,GAAA,EAAA,UAAA,CACK4B,KAAS,kBAAC3B,GAAD,EAAA,UAAQ2B,EAAa,CAAA,GAE/B,kBAAC,OAAD;IACI,WAAW7B,EAAKS,CAAoB;IACpC,oBAAkBqB;IAElB,UAAA,kBAACC,GAAD;KACI,WAAW/B,EACPU,GACAsB,EAAiBd,CAAI,CACzB;KAJJ,UAAA;MAMI,kBAAC,OAAD;OACI,WAAWlB,EAAKG,EAAO,eAAe;OACtC,oBAAkB2B;OAFtB,UAAA,CAII,kBAAC,OAAD;QACI,WAAW9B,EAAKG,EAAO,eAAe;QACtC,oBAAkB2B;QAClB,OAAO,EACH,UAAUN,EAAM,gBAAgB,CAAC,EACrC;OAAE,CAAA,GAGN,kBAAC,OAAD;QACI,WAAWxB,EACPG,EAAO,iBACX;QACA,OAAO,EACH,UACI,IAAIqB,EAAM,gBAAgB,CAAC,EACnC;QACA,oBAAkBM;OAAY,CAAA,CAEjC;;MAEJb,KAAeQ,KACZ,kBAACpB,GAAD;OACI,MAAMoB;OACN,MAAMN;OACN,WAAWnB,EAAKG,EAAO8B,IAAO;OAC9B,sBACIV,MAAe,KAAK,KAAA;OAExB,iBAAeW,KAAc,KAAA;OAC7B,oBAAkBJ;MAAY,CAAA;MAItC,kBAAC1B,GAAD;OACU;OACO;OACb,cAAY+B;OACI;MAAe,CAAA;MAGnC,kBAACxB,GAAD;OACc;OACA;OACJ;OACO;OACO;OACV;MAAS,CAAA;KAEd;;GACZ,CAAA,CACT,EAAA,CAAA;EAER;CACQ,CAAA;AAEpB"}
1
+ {"version":3,"file":"Slider","names":["Slider","AriaSlider","clsx","_Fragment","Label","styles","SliderThumb","Icon","Label$1","SliderStyles","SliderColors","TrackContainerStyles","TrackStyles","SliderStops","SliderThumb$1","clsx$1","slider_module_default","Slider$1","props","canShowIcon","size","iconSize","Slider","className","renderProps","thumbValue","state","visibleIcon","insetIcon","minInsetIcon","Fragment","label","orientation","SliderTrack","SliderSizeStyles","\"icon\"","isDisabled","thumbLabel"],"sources":["../../src/components/Input/Slider/Slider/slider.module.css","../../src/components/Input/Slider/Slider/Slider.tsx"],"sourcesContent":["@layer adgytec.comps {\n .visual-track {\n position: absolute;\n inset: 0;\n z-index: 0;\n\n border-radius: var(--_md-slider-track-shape);\n\n display: flex;\n gap: var(--_track-gap);\n\n &[data-orientation=\"horizontal\"] {\n inset-inline: var(--_orientation-inset);\n }\n\n &[data-orientation=\"vertical\"] {\n flex-direction: column-reverse;\n inset-block: var(--_orientation-inset);\n }\n }\n\n .active-track {\n background-color: var(--_active-track-color);\n border-radius: var(--_md-slider-track-shape);\n\n &[data-orientation=\"horizontal\"] {\n border-start-end-radius: var(--_md-slider-track-inner-shape);\n border-end-end-radius: var(--_md-slider-track-inner-shape);\n }\n\n &[data-orientation=\"vertical\"] {\n border-start-end-radius: var(--_md-slider-track-inner-shape);\n border-start-start-radius: var(--_md-slider-track-inner-shape);\n }\n }\n\n .inactive-track {\n background-color: var(--_inactive-track-color);\n border-radius: var(--_md-slider-track-shape);\n\n &[data-orientation=\"horizontal\"] {\n border-start-start-radius: var(--_md-slider-track-inner-shape);\n border-end-start-radius: var(--_md-slider-track-inner-shape);\n }\n\n &[data-orientation=\"vertical\"] {\n border-end-end-radius: var(--_md-slider-track-inner-shape);\n border-end-start-radius: var(--_md-slider-track-inner-shape);\n }\n }\n\n .icon {\n --_min-icon-gap: calc(var(--_track-gap) / 1.5);\n\n position: absolute;\n\n color: var(--_md-slider-icon-color);\n transition: color var(--md-sys-motion-standard-fast-spatial)\n var(--md-sys-motion-standard-fast-spatial-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n\n &[data-minimum-value] {\n color: var(--_md-slider-minimum-value-icon-color);\n }\n\n &[data-disabled] {\n color: rgb(\n from var(--md-sys-color-inverse-on-surface) r g b /\n var(--md-sys-state-disabled-content)\n );\n\n &[data-minimum-value] {\n color: rgb(\n from var(--md-sys-color-on-surface) r g b /\n var(--md-sys-state-disabled-container)\n );\n }\n }\n\n &[data-orientation=\"horizontal\"] {\n inset-block-start: 50%;\n translate: 0 -50%;\n\n &[data-minimum-value] {\n inset-inline-start: var(--_min-icon-gap);\n }\n }\n\n &[data-orientation=\"vertical\"] {\n inset-block-end: 0;\n inset-inline-start: 50%;\n translate: -50% 0;\n\n &[data-minimum-value] {\n inset-block-end: var(--_min-icon-gap);\n }\n }\n }\n}\n","import clsx from \"clsx\";\nimport { Slider as AriaSlider, SliderTrack } from \"react-aria-components\";\nimport { Icon } from \"@/components/Icon\";\nimport { Label } from \"../../Label\";\nimport {\n SliderColors,\n SliderSizeStyles,\n SliderStyles,\n TrackContainerStyles,\n TrackStyles,\n} from \"../core\";\nimport { SliderStops } from \"../SliderStops\";\nimport { SliderThumb } from \"../SliderThumb\";\nimport styles from \"./slider.module.css\";\nimport type { SliderProps } from \"./types\";\n\n/**\n * Material Design 3 single-value slider component.\n *\n * Allows users to choose a specific numeric value along a track using a draggable thumb.\n * Supports configurable sizes, step indicators via [`SliderStops`](src/components/Input/Slider/SliderStops/SliderStops.tsx),\n * inset icons with automatic minimum-value swapping, and custom output formatting.\n *\n * @example\n * ```tsx\n * import { Slider } from \"@adgytec/web-ui-components\";\n * import { Volume2, VolumeX } from \"lucide-react\";\n *\n * <Slider\n * label=\"Volume\"\n * minValue={0}\n * maxValue={100}\n * defaultValue={50}\n * size=\"medium\"\n * insetIcon={Volume2}\n * minInsetIcon={VolumeX}\n * />\n * ```\n */\nexport const Slider = <T extends number>({\n label,\n thumbLabel,\n size = \"small\",\n step = 1,\n minValue = 0,\n maxValue = 100,\n showInBetweenSteps,\n insetIcon,\n minInsetIcon,\n maxStops,\n outputRenderer,\n className,\n ...props\n}: SliderProps<T>) => {\n const canShowIcon = size !== \"extra-small\" && size !== \"small\";\n const iconSize = size === \"extra-large\" ? 32 : 24;\n\n return (\n <AriaSlider\n minValue={minValue}\n maxValue={maxValue}\n step={step}\n className={(renderProps) =>\n clsx(\n SliderStyles,\n SliderColors,\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n {...props}\n >\n {({ orientation, state, isDisabled }) => {\n const thumbValue = state.getThumbPercent(0);\n\n let visibleIcon = insetIcon;\n if (thumbValue === 0 && minInsetIcon) {\n visibleIcon = minInsetIcon;\n }\n\n return (\n <>\n {label && <Label>{label}</Label>}\n\n <div\n className={clsx(TrackContainerStyles)}\n data-orientation={orientation}\n >\n <SliderTrack\n className={clsx(\n TrackStyles,\n SliderSizeStyles(size)\n )}\n >\n <div\n className={clsx(styles[\"visual-track\"])}\n data-orientation={orientation}\n >\n <div\n className={clsx(styles[\"active-track\"])}\n data-orientation={orientation}\n style={{\n flexGrow: state.getThumbPercent(0),\n }}\n />\n\n <div\n className={clsx(\n styles[\"inactive-track\"]\n )}\n style={{\n flexGrow:\n 1 - state.getThumbPercent(0),\n }}\n data-orientation={orientation}\n />\n </div>\n\n {canShowIcon && visibleIcon && (\n <Icon\n icon={visibleIcon}\n size={iconSize}\n className={clsx(styles[\"icon\"])}\n data-minimum-value={\n thumbValue === 0 || undefined\n }\n data-disabled={isDisabled || undefined}\n data-orientation={orientation}\n />\n )}\n\n <SliderThumb\n size={size}\n orientation={orientation}\n aria-label={thumbLabel}\n outputRenderer={outputRenderer}\n />\n\n <SliderStops\n minValue={minValue}\n maxValue={maxValue}\n step={step}\n orientation={orientation}\n showInBetweenSteps={showInBetweenSteps}\n maxStops={maxStops}\n />\n </SliderTrack>\n </div>\n </>\n );\n }}\n </AriaSlider>\n );\n};\n"],"mappings":";;;;;;;;;;;;;A,GCuCaA,KAA4B,EACrC,UACA,eACA,UAAO,SACP,UAAO,GACP,cAAW,GACX,cAAW,KACX,uBACA,cACA,iBACA,aACA,mBACA,cACA,GAAGkB,QACe;CAClB,IAAMC,IAAcC,MAAS,iBAAiBA,MAAS,SACjDC,IAAWD,MAAS,gBAAgB,KAAK;CAE/C,OACI,kBAACnB,GAAD;EACc;EACA;EACJ;EACN,YAAY,MACRC,EACIO,GACAC,GACA,OAAOa,KAAc,aACfA,EAAUC,CAAW,IACrBD,CACV;EAEJ,GAAIL;EAEF,WAAA,EAAE,gBAAa,UAAO,oBAAiB;GACrC,IAAMO,IAAaC,EAAM,gBAAgB,CAAC,GAEtCC,IAAcC;GAKlB,OAJIH,MAAe,KAAKI,MACpB,IAAcA,IAId,kBAAA1B,GAAA,EAAA,UAAA,CACK4B,KAAS,kBAAC3B,GAAD,EAAA,UAAQ2B,EAAa,CAAA,GAE/B,kBAAC,OAAD;IACI,WAAW7B,EAAKS,CAAoB;IACpC,oBAAkBqB;IAElB,UAAA,kBAACC,GAAD;KACI,WAAW/B,EACPU,GACAsB,EAAiBd,CAAI,CACzB;KAJJ,UAAA;MAMI,kBAAC,OAAD;OACI,WAAWlB,EAAKG,EAAO,eAAe;OACtC,oBAAkB2B;OAFtB,UAAA,CAII,kBAAC,OAAD;QACI,WAAW9B,EAAKG,EAAO,eAAe;QACtC,oBAAkB2B;QAClB,OAAO,EACH,UAAUN,EAAM,gBAAgB,CAAC,EACrC;OAAE,CAAA,GAGN,kBAAC,OAAD;QACI,WAAWxB,EACPG,EAAO,iBACX;QACA,OAAO,EACH,UACI,IAAIqB,EAAM,gBAAgB,CAAC,EACnC;QACA,oBAAkBM;OAAY,CAAA,CAEjC;;MAEJb,KAAeQ,KACZ,kBAACpB,GAAD;OACI,MAAMoB;OACN,MAAMN;OACN,WAAWnB,EAAKG,EAAO8B,IAAO;OAC9B,sBACIV,MAAe,KAAK,KAAA;OAExB,iBAAeW,KAAc,KAAA;OAC7B,oBAAkBJ;MAAY,CAAA;MAItC,kBAAC1B,GAAD;OACU;OACO;OACb,cAAY+B;OACI;MAAe,CAAA;MAGnC,kBAACxB,GAAD;OACc;OACA;OACJ;OACO;OACO;OACV;MAAS,CAAA;KAEd;;GACZ,CAAA,CACT,EAAA,CAAA;EAER;CACQ,CAAA;AAEpB"}
@@ -4,7 +4,7 @@ import n from "clsx";
4
4
  import { createContext as r, useContext as i } from "react";
5
5
  import { jsx as a } from "react/jsx-runtime";
6
6
  import { SliderOutput as o } from "react-aria-components";
7
- import '../assets/SliderOutput.css';//#region src/components/Input/Slider/SliderThumb/context.ts
7
+ import '../assets/SliderOutput.css';// src/components/Input/Slider/SliderThumb/context.ts
8
8
  var s = e(), c = r({}), l = { output: "_output_licmo_2" }, u = (e) => {
9
9
  let r = (0, s.c)(12), u, d;
10
10
  r[0] === e ? (u = r[1], d = r[2]) : ({className: u, ...d} = e, r[0] = e, r[1] = u, r[2] = d);
@@ -21,7 +21,6 @@ var s = e(), c = r({}), l = { output: "_output_licmo_2" }, u = (e) => {
21
21
  "data-slider-output": !0
22
22
  }), r[5] = d, r[6] = g, r[7] = _, r[8] = v, r[9] = y, r[10] = b, r[11] = x) : x = r[11], x;
23
23
  };
24
- //#endregion
25
24
  export { c as n, u as t };
26
25
 
27
26
  //# sourceMappingURL=SliderOutput.map
@@ -1 +1 @@
1
- {"version":3,"file":"SliderOutput","names":["SliderOutput","_c","clsx","styles","AriaSliderOutput","require_compiler_runtime","clsx$1","import_compiler_runtime","SliderThumbStateContext","createContext","sliderOutput_module_default","SliderOutput$1","$","className","props","t0","useContext","t1","typography","renderProps","t2","isFocusVisible","t3","isDragging","t4","isHovered","t5","isFocused","t6","SliderOutput"],"sources":["../../src/components/Input/Slider/SliderThumb/context.ts","../../src/components/Input/Slider/SliderOutput/sliderOutput.module.css","../../src/components/Input/Slider/SliderOutput/SliderOutput.tsx"],"sourcesContent":["import { createContext } from \"react\";\n\n/**\n * State values exposed by the parent [`SliderThumb`](file:///home/rohan/work/adgytec/adgytec-web-ui-components/src/components/Input/Slider/SliderThumb/SliderThumb.tsx)\n * representing current user interactions.\n */\nexport type SliderThumbStateContextValue = {\n /**\n * Whether the slider thumb is currently being dragged.\n */\n isDragging?: boolean;\n /**\n * Whether the slider thumb is currently hovered by a pointer.\n */\n isHovered?: boolean;\n /**\n * Whether the slider thumb currently has input focus.\n */\n isFocused?: boolean;\n /**\n * Whether the slider thumb has visible focus styling (e.g. via keyboard navigation).\n */\n isFocusVisible?: boolean;\n};\n\n/**\n * React context providing thumb interaction state to child components such as\n * [`SliderOutput`](file:///home/rohan/work/adgytec/adgytec-web-ui-components/src/components/Input/Slider/SliderOutput/SliderOutput.tsx).\n */\nexport const SliderThumbStateContext =\n createContext<SliderThumbStateContextValue>({});\n","@layer adgytec.comps {\n .output {\n position: absolute;\n\n padding-block: var(--md-sys-layout-space-12);\n padding-inline: var(--md-sys-layout-space-16);\n\n background-color: var(--_md-slider-output-background);\n color: var(--_md-slider-output-color);\n border-radius: var(--md-sys-shape-corner-radius-full);\n\n &[data-orientation=\"horizontal\"] {\n inset-block-end: 100%;\n inset-inline-start: 50%;\n translate: -50% calc(-4 * var(--dp, 1px));\n\n transform-origin: bottom;\n }\n\n &[data-orientation=\"vertical\"] {\n inset-inline-end: 100%;\n inset-block-start: 50%;\n translate: calc(-4 * var(--dp, 1px)) -50%;\n\n transform-origin: right;\n }\n\n scale: 0;\n opacity: 0;\n\n transition:\n scale var(--md-sys-motion-expressive-fast-spatial)\n var(--md-sys-motion-expressive-fast-spatial-duration),\n opacity var(--md-sys-motion-expressive-fast-effects)\n var(--md-sys-motion-expressive-fast-effects-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n\n &[data-dragging],\n &[data-focus-visible] {\n scale: 1;\n opacity: 1;\n }\n }\n}\n","import clsx from \"clsx\";\nimport { useContext } from \"react\";\nimport { SliderOutput as AriaSliderOutput } from \"react-aria-components\";\nimport { typography } from \"@/utils\";\nimport { SliderThumbStateContext } from \"../SliderThumb/context\";\nimport styles from \"./sliderOutput.module.css\";\n\n/**\n * Props for the [`SliderOutput`](file:///home/rohan/work/adgytec/adgytec-web-ui-components/src/components/Input/Slider/SliderOutput/SliderOutput.tsx) component.\n */\nexport interface SliderOutputProps\n extends React.ComponentPropsWithRef<typeof AriaSliderOutput> {}\n\n/**\n * Output tooltip / badge component displaying the current value of the slider thumb.\n *\n * Automatically connects to [`SliderThumbStateContext`](file:///home/rohan/work/adgytec/adgytec-web-ui-components/src/components/Input/Slider/SliderThumb/context.ts)\n * to reflect hover, focus, and dragging states on data attributes.\n *\n * @example\n * ```tsx\n * <SliderOutput>\n * {({ state }) => `${state.getThumbValueLabel(0)}%`}\n * </SliderOutput>\n * ```\n */\nexport const SliderOutput: React.FC<SliderOutputProps> = ({\n className,\n ...props\n}) => {\n const { isDragging, isHovered, isFocused, isFocusVisible } = useContext(\n SliderThumbStateContext\n );\n\n return (\n <AriaSliderOutput\n className={(renderProps) =>\n clsx(\n styles[\"output\"],\n typography.labelLarge,\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n {...props}\n data-focus-visible={isFocusVisible || undefined}\n data-dragging={isDragging || undefined}\n data-hovered={isHovered || undefined}\n data-focused={isFocused || undefined}\n data-slider-output\n />\n );\n};\n"],"mappings":";;;;;;;aA6BaQ,IACTC,EAA4C,CAAC,CAAC,sCEJrCT,KAA4C,MAAA;CAAA,IAAAY,KAAA,GAAAX,EAAAA,EAAAA,CAAA,EAAA,GAAAY,GAAAC;CAAA,AAAAF,EAAA,OAAAG,KAGxD,IAAAH,EAAA,IAAA,IAAAA,EAAA,OAHyD,eAAA,GAAAE,KAAAC,GAGzD,EAAA,KAAAA,GAAA,EAAA,KAAAF,GAAA,EAAA,KAAAC;CACG,IAAA,EAAA,eAAA,cAAA,cAAA,sBAA6DE,EACzDR,CACJ,GAAES;CAAA,AAAAL,EAAA,OAAAC,IAWW,IAAAD,EAAA,MAPM,KAAA,MACPV,EACIC,EAAM,QACNe,EAAU,YACV,OAAOL,KAAc,aACfA,EAAUM,CACF,IAFdN,CAGJ,GAAC,EAAA,KAAAA,GAAA,EAAA,KAAAI;CAGe,IAAAG,IAAAC,KAAA,KAAA,GACLC,IAAAC,KAAA,KAAA,GACDC,IAAAC,KAAA,KAAA,GACAC,IAAAC,KAAA,KAAA,GAAsBC;CAEtC,OAFsChB,EAAA,OAAAE,KAAAF,EAAA,OAAAK,KAAAL,EAAA,OAAAQ,KAAAR,EAAA,OAAAU,KAAAV,EAAA,OAAAY,KAAAZ,EAAA,QAAAc,KAdxC,IAAA,kBAACtB,GAAD;EACe,WAAAa;EAON,GAEDH;EACgB,sBAAAM;EACL,iBAAAE;EACD,gBAAAE;EACA,gBAAAE;EACd,sBAAA;CAAkB,CAAA,GACpB,EAAA,KAAAZ,GAAA,EAAA,KAAAG,GAAA,EAAA,KAAAG,GAAA,EAAA,KAAAE,GAAA,EAAA,KAAAE,GAAA,EAAA,MAAAE,GAAA,EAAA,MAAAE,KAAA,IAAAhB,EAAA,KAhBFgB;AAgBE"}
1
+ {"version":3,"file":"SliderOutput","names":["SliderOutput","_c","clsx","styles","AriaSliderOutput","require_compiler_runtime","clsx$1","import_compiler_runtime","SliderThumbStateContext","createContext","sliderOutput_module_default","SliderOutput$1","$","className","props","t0","useContext","t1","typography","renderProps","t2","isFocusVisible","t3","isDragging","t4","isHovered","t5","isFocused","t6","SliderOutput"],"sources":["../../src/components/Input/Slider/SliderThumb/context.ts","../../src/components/Input/Slider/SliderOutput/sliderOutput.module.css","../../src/components/Input/Slider/SliderOutput/SliderOutput.tsx"],"sourcesContent":["import { createContext } from \"react\";\n\n/**\n * State values exposed by the parent [`SliderThumb`](src/components/Input/Slider/SliderThumb/SliderThumb.tsx)\n * representing current user interactions.\n */\nexport type SliderThumbStateContextValue = {\n /**\n * Whether the slider thumb is currently being dragged.\n */\n isDragging?: boolean;\n /**\n * Whether the slider thumb is currently hovered by a pointer.\n */\n isHovered?: boolean;\n /**\n * Whether the slider thumb currently has input focus.\n */\n isFocused?: boolean;\n /**\n * Whether the slider thumb has visible focus styling (e.g. via keyboard navigation).\n */\n isFocusVisible?: boolean;\n};\n\n/**\n * React context providing thumb interaction state to child components such as\n * [`SliderOutput`](src/components/Input/Slider/SliderOutput/SliderOutput.tsx).\n */\nexport const SliderThumbStateContext =\n createContext<SliderThumbStateContextValue>({});\n","@layer adgytec.comps {\n .output {\n position: absolute;\n\n padding-block: var(--md-sys-layout-space-12);\n padding-inline: var(--md-sys-layout-space-16);\n\n background-color: var(--_md-slider-output-background);\n color: var(--_md-slider-output-color);\n border-radius: var(--md-sys-shape-corner-radius-full);\n\n &[data-orientation=\"horizontal\"] {\n inset-block-end: 100%;\n inset-inline-start: 50%;\n translate: -50% calc(-4 * var(--dp, 1px));\n\n transform-origin: bottom;\n }\n\n &[data-orientation=\"vertical\"] {\n inset-inline-end: 100%;\n inset-block-start: 50%;\n translate: calc(-4 * var(--dp, 1px)) -50%;\n\n transform-origin: right;\n }\n\n scale: 0;\n opacity: 0;\n\n transition:\n scale var(--md-sys-motion-expressive-fast-spatial)\n var(--md-sys-motion-expressive-fast-spatial-duration),\n opacity var(--md-sys-motion-expressive-fast-effects)\n var(--md-sys-motion-expressive-fast-effects-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n\n &[data-dragging],\n &[data-focus-visible] {\n scale: 1;\n opacity: 1;\n }\n }\n}\n","import clsx from \"clsx\";\nimport { useContext } from \"react\";\nimport { SliderOutput as AriaSliderOutput } from \"react-aria-components\";\nimport { typography } from \"@/utils\";\nimport { SliderThumbStateContext } from \"../SliderThumb/context\";\nimport styles from \"./sliderOutput.module.css\";\n\n/**\n * Props for the [`SliderOutput`](src/components/Input/Slider/SliderOutput/SliderOutput.tsx) component.\n */\nexport interface SliderOutputProps\n extends React.ComponentPropsWithRef<typeof AriaSliderOutput> {}\n\n/**\n * Output tooltip / badge component displaying the current value of the slider thumb.\n *\n * Automatically connects to [`SliderThumbStateContext`](src/components/Input/Slider/SliderThumb/context.ts)\n * to reflect hover, focus, and dragging states on data attributes.\n *\n * @example\n * ```tsx\n * <SliderOutput>\n * {({ state }) => `${state.getThumbValueLabel(0)}%`}\n * </SliderOutput>\n * ```\n */\nexport const SliderOutput: React.FC<SliderOutputProps> = ({\n className,\n ...props\n}) => {\n const { isDragging, isHovered, isFocused, isFocusVisible } = useContext(\n SliderThumbStateContext\n );\n\n return (\n <AriaSliderOutput\n className={(renderProps) =>\n clsx(\n styles[\"output\"],\n typography.labelLarge,\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n {...props}\n data-focus-visible={isFocusVisible || undefined}\n data-dragging={isDragging || undefined}\n data-hovered={isHovered || undefined}\n data-focused={isFocused || undefined}\n data-slider-output\n />\n );\n};\n"],"mappings":";;;;;;;A,aA6BaQ,IACTC,EAA4C,CAAC,CAAC,G,mCEJrCT,KAA4C,MAAA;CAAA,IAAAY,KAAA,GAAAX,EAAAA,EAAAA,CAAA,EAAA,GAAAY,GAAAC;CAAA,AAAAF,EAAA,OAAAG,KAGxD,IAAAH,EAAA,IAAA,IAAAA,EAAA,OAHyD,eAAA,GAAAE,KAAAC,GAGzD,EAAA,KAAAA,GAAA,EAAA,KAAAF,GAAA,EAAA,KAAAC;CACG,IAAA,EAAA,eAAA,cAAA,cAAA,sBAA6DE,EACzDR,CACJ,GAAES;CAAA,AAAAL,EAAA,OAAAC,IAWW,IAAAD,EAAA,MAPM,KAAA,MACPV,EACIC,EAAM,QACNe,EAAU,YACV,OAAOL,KAAc,aACfA,EAAUM,CACF,IAFdN,CAGJ,GAAC,EAAA,KAAAA,GAAA,EAAA,KAAAI;CAGe,IAAAG,IAAAC,KAAA,KAAA,GACLC,IAAAC,KAAA,KAAA,GACDC,IAAAC,KAAA,KAAA,GACAC,IAAAC,KAAA,KAAA,GAAsBC;CAEtC,OAFsChB,EAAA,OAAAE,KAAAF,EAAA,OAAAK,KAAAL,EAAA,OAAAQ,KAAAR,EAAA,OAAAU,KAAAV,EAAA,OAAAY,KAAAZ,EAAA,QAAAc,KAdxC,IAAA,kBAACtB,GAAD;EACe,WAAAa;EAON,GAEDH;EACgB,sBAAAM;EACL,iBAAAE;EACD,gBAAAE;EACA,gBAAAE;EACd,sBAAA;CAAkB,CAAA,GACpB,EAAA,KAAAZ,GAAA,EAAA,KAAAG,GAAA,EAAA,KAAAG,GAAA,EAAA,KAAAE,GAAA,EAAA,KAAAE,GAAA,EAAA,MAAAE,GAAA,EAAA,MAAAE,KAAA,IAAAhB,EAAA,KAhBFgB;AAgBE"}
@@ -2,7 +2,7 @@ import e from "clsx";
2
2
  import { useContext as t, useMemo as n } from "react";
3
3
  import { jsx as r } from "react/jsx-runtime";
4
4
  import { SliderStateContext as i } from "react-aria-components";
5
- import '../assets/SliderStops.css';//#region src/components/Input/Slider/SliderStops/core.ts
5
+ import '../assets/SliderStops.css';// src/components/Input/Slider/SliderStops/core.ts
6
6
  var a = 20, o = (e) => {
7
7
  let t = 0, n = e.toString(), r = n.toLowerCase().indexOf("e-");
8
8
  if (r > 0) t = Math.abs(Math.floor(Math.log10(Math.abs(e)))) + r;
@@ -118,7 +118,6 @@ var a = 20, o = (e) => {
118
118
  })
119
119
  });
120
120
  };
121
- //#endregion
122
121
  export { _ as t };
123
122
 
124
123
  //# sourceMappingURL=SliderStops.map
@@ -1 +1 @@
1
- {"version":3,"file":"SliderStops","names":["stops","clsx","styles","clsx$1","DEFAULT_MAX_STOPS","getStepPrecision","precision","stepString","step","exponentialIndex","pointIndex","roundToStepPrecision","value","pow","snapValueToStep","remainder","minValue","snappedValue","maxValue","calcStops","range","lastStopValue","createStop","stopValue","showInBetweenSteps","stops","nextValue","maxStops","checkInActiveRangeStandardSlider","thumbValue","checkInActiveRangeRangeSlider","firstThumbValue","secondThumbValue","checkInActiveRangeCenteredSlider","midValue","checkInActiveRange","slider","checkIsBelowThumb","shouldHide","sliderStops_module_default","SliderStops","stops_0","useMemo","orientation","sliderState","useContext","SliderStateContext","shouldHideActive","\"stops\"","inActiveRange","belowThumb","hide","style","percent","\"stop\""],"sources":["../../src/components/Input/Slider/SliderStops/core.ts","../../src/components/Input/Slider/SliderStops/sliderStops.module.css","../../src/components/Input/Slider/SliderStops/SliderStops.tsx"],"sourcesContent":["import type { SliderVariant } from \"../core\";\nimport type { CalculateStops, Stop } from \"./types\";\n\nconst DEFAULT_MAX_STOPS = 20;\n\n/**\n * Clamps a numeric value between minimum and maximum bounds.\n *\n * @param value - The input value to clamp.\n * @param min - The lower bound. Defaults to `-Infinity`.\n * @param max - The upper bound. Defaults to `Infinity`.\n * @returns The clamped value within `[min, max]`.\n */\nexport const clamp = (\n value: number,\n min: number = -Infinity,\n max: number = Infinity\n): number => {\n return Math.min(Math.max(value, min), max);\n};\n\n/**\n * Calculates the decimal precision (number of decimal places) of a step value.\n *\n * Supports standard fractional numbers (e.g. `0.01` -> 2) and scientific notation (e.g. `1e-7` -> 7).\n *\n * @param step - The step increment.\n * @returns The number of decimal places represented by the step.\n */\nexport const getStepPrecision = (step: number): number => {\n let precision = 0;\n\n const stepString = step.toString();\n\n const exponentialIndex = stepString.toLowerCase().indexOf(\"e-\");\n\n if (exponentialIndex > 0) {\n precision =\n Math.abs(Math.floor(Math.log10(Math.abs(step)))) + exponentialIndex;\n } else {\n const pointIndex = stepString.indexOf(\".\");\n\n if (pointIndex >= 0) {\n precision = stepString.length - pointIndex;\n }\n }\n\n return precision;\n};\n\n/**\n * Rounds a numeric value to the precision determined by the step value\n * to eliminate floating-point calculation inaccuracies.\n *\n * @param value - The value to round.\n * @param step - The step determining precision.\n * @returns The rounded numeric value.\n */\nexport const roundToStepPrecision = (value: number, step: number): number => {\n const precision = getStepPrecision(step);\n\n if (precision <= 0) {\n return value;\n }\n\n const pow = 10 ** precision;\n\n return Math.round(value * pow) / pow;\n};\n\n/**\n * Snaps a given number to the nearest valid step increment between min and max bounds.\n *\n * @param options - Configuration object containing value, minValue, maxValue, and step.\n * @returns The snapped value aligned to the step grid.\n */\nexport const snapValueToStep = ({\n value,\n minValue,\n maxValue,\n step,\n}: {\n value: number;\n minValue: number;\n maxValue: number;\n step: number;\n}): number => {\n const remainder = (value - minValue) % step;\n\n let snappedValue = roundToStepPrecision(\n Math.abs(remainder) * 2 >= step\n ? value + Math.sign(remainder) * (step - Math.abs(remainder))\n : value - remainder,\n step\n );\n\n if (snappedValue < minValue) {\n snappedValue = minValue;\n } else if (snappedValue > maxValue) {\n snappedValue =\n minValue +\n Math.floor(\n roundToStepPrecision((maxValue - minValue) / step, step)\n ) *\n step;\n }\n\n snappedValue = roundToStepPrecision(snappedValue, step);\n\n return snappedValue;\n};\n\n/**\n * Generates all valid slider tick stops along the track using stepping logic\n * compatible with React Aria.\n *\n * If the number of generated stops exceeds `maxStops` or `showInBetweenSteps` is false,\n * only the minimum and maximum boundaries are returned to prevent excessive DOM nodes.\n *\n * @param options - Stop calculation configuration.\n * @returns Array of calculated {@link Stop} objects with `stopValue` and `percent`.\n */\nexport const calcStops: CalculateStops = ({\n minValue,\n maxValue,\n step,\n showInBetweenSteps = true,\n maxStops = DEFAULT_MAX_STOPS,\n}) => {\n /**\n * Invalid configuration fallback.\n */\n if (step <= 0 || Number.isNaN(step) || maxValue < minValue) {\n return [];\n }\n\n const range = maxValue - minValue;\n\n /**\n * React Aria consistent last valid stop.\n *\n * Example:\n * min=0\n * max=10\n * step=3\n *\n * valid values:\n * 0 3 6 9\n */\n const lastStopValue = snapValueToStep({\n value: maxValue,\n minValue,\n maxValue,\n step,\n });\n\n const createStop = (stopValue: number): Stop => ({\n stopValue,\n percent: range === 0 ? 0 : (stopValue - minValue) / range,\n });\n\n /**\n * Reduced stop rendering mode.\n */\n if (step === 1 || !showInBetweenSteps) {\n return [createStop(minValue), createStop(lastStopValue)];\n }\n\n const stops: Stop[] = [];\n\n let value = minValue;\n\n while (value <= lastStopValue) {\n stops.push(createStop(value));\n\n const nextValue = snapValueToStep({\n value: value + step,\n minValue,\n maxValue,\n step,\n });\n\n /**\n * Prevent infinite loops caused by\n * floating precision edge cases.\n */\n if (nextValue === value) {\n break;\n }\n\n value = nextValue;\n\n /**\n * DOM safety guard.\n */\n if (stops.length > maxStops) {\n return [createStop(minValue), createStop(lastStopValue)];\n }\n }\n\n return stops;\n};\n\nconst checkInActiveRangeStandardSlider = ({\n thumbValue,\n stopValue,\n}: {\n thumbValue: number;\n stopValue: number;\n}): boolean => {\n return stopValue < thumbValue;\n};\n\nconst checkInActiveRangeRangeSlider = ({\n firstThumbValue,\n secondThumbValue,\n stopValue,\n}: {\n firstThumbValue: number;\n secondThumbValue: number;\n stopValue: number;\n}): boolean => {\n return stopValue > firstThumbValue && stopValue < secondThumbValue;\n};\n\nconst checkInActiveRangeCenteredSlider = ({\n thumbValue,\n stopValue,\n midValue,\n}: {\n thumbValue: number;\n stopValue: number;\n midValue: number;\n}): boolean => {\n return (\n (stopValue < midValue && stopValue > thumbValue) ||\n (stopValue > midValue && stopValue < thumbValue) ||\n stopValue === midValue\n );\n};\n\n/**\n * Determines whether a given tick stop falls within the active (highlighted) track range\n * for the specified slider variant.\n *\n * - Standard slider: stops strictly below the thumb.\n * - Range slider: stops strictly between the start and end thumbs.\n * - Centered slider: stops between the mid-value and the thumb position.\n *\n * @param options - Configuration containing the slider variant, thumb values, mid-value, and stopValue.\n * @returns `true` if the stop is within the active highlighted track segment.\n */\nexport const checkInActiveRange = ({\n slider,\n midValue,\n firstThumbValue,\n secondThumbValue,\n stopValue,\n}: {\n slider: SliderVariant;\n midValue: number;\n firstThumbValue: number;\n secondThumbValue: number;\n stopValue: number;\n}): boolean => {\n switch (slider) {\n case \"standard\":\n return checkInActiveRangeStandardSlider({\n thumbValue: firstThumbValue,\n stopValue,\n });\n\n case \"range\":\n return checkInActiveRangeRangeSlider({\n firstThumbValue,\n secondThumbValue,\n stopValue,\n });\n\n case \"centered\":\n return checkInActiveRangeCenteredSlider({\n thumbValue: firstThumbValue,\n midValue,\n stopValue,\n });\n }\n};\n\n/**\n * Checks whether a given stop coincides directly with any active thumb position.\n *\n * @param options - First and second thumb values, plus the candidate stopValue.\n * @returns `true` if the stop is located directly underneath a thumb.\n */\nexport const checkIsBelowThumb = ({\n firstThumbValue,\n secondThumbValue,\n stopValue,\n}: {\n firstThumbValue: number;\n secondThumbValue: number;\n stopValue: number;\n}): boolean => {\n return stopValue === firstThumbValue || stopValue === secondThumbValue;\n};\n\n/**\n * Checks whether a stop indicator should be visually hidden.\n *\n * For centered sliders, the center anchor point is hidden to avoid overlapping track visuals.\n *\n * @param options - Slider variant, midValue, and stopValue.\n * @returns `true` if the stop indicator should be hidden.\n */\nexport const shouldHide = ({\n slider,\n midValue,\n stopValue,\n}: {\n slider: SliderVariant;\n midValue: number;\n stopValue: number;\n}): boolean => {\n if (slider !== \"centered\") {\n return false;\n }\n\n return stopValue === midValue;\n};\n","@layer adgytec.comps {\n .stops {\n position: absolute;\n inset: 0;\n pointer-events: none;\n }\n\n .stop {\n position: absolute;\n\n &[data-orientation=\"horizontal\"] {\n inset-block-start: 50%;\n translate: -50% -50%;\n }\n\n &[data-orientation=\"vertical\"] {\n inset-inline-start: 50%;\n translate: -50% 50%;\n }\n\n inline-size: var(--md-sys-layout-space-4);\n aspect-ratio: 1 / 1;\n\n border-radius: var(--md-sys-shape-corner-radius-full);\n background-color: var(--_md-slider-inactive-stop-color);\n\n transition: background-color var(--md-sys-motion-standard-fast-spatial)\n var(--md-sys-motion-standard-fast-spatial-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n\n &[data-in-active] {\n background-color: var(--_md-slider-active-stop-color);\n }\n\n &[data-hide] {\n background-color: transparent;\n }\n\n &[data-disabled] {\n background-color: rgb(\n from var(--md-sys-color-on-surface) r g b /\n var(--md-sys-state-disabled-container)\n );\n\n &[data-in-active] {\n background-color: rgb(\n from var(--md-sys-color-inverse-on-surface) r g b /\n var(--md-sys-state-disabled-content)\n );\n }\n\n &[data-hide] {\n background-color: transparent;\n }\n }\n\n &[data-below-thumb] {\n background-color: transparent;\n }\n }\n}\n","import clsx from \"clsx\";\nimport { useContext, useMemo } from \"react\";\nimport { SliderStateContext } from \"react-aria-components\";\nimport {\n calcStops,\n checkInActiveRange,\n checkIsBelowThumb,\n shouldHide,\n} from \"./core\";\nimport styles from \"./sliderStops.module.css\";\nimport type { SliderStopsProps } from \"./types\";\n\n/**\n * Component that renders step tick mark indicators along a slider track.\n *\n * Positions tick indicators using percentage offsets computed from `minValue`, `maxValue`,\n * and `step`. Distinguishes between active and inactive track sections and hides stops\n * directly beneath active thumbs.\n *\n * @example\n * ```tsx\n * <SliderStops\n * minValue={0}\n * maxValue={100}\n * step={10}\n * orientation=\"horizontal\"\n * showInBetweenSteps\n * />\n * ```\n */\nexport const SliderStops: React.FC<SliderStopsProps> = ({\n orientation,\n slider = \"standard\",\n minValue,\n maxValue,\n step,\n showInBetweenSteps,\n maxStops,\n}) => {\n const stops = useMemo(() => {\n const stops = calcStops({\n minValue,\n maxValue,\n step,\n showInBetweenSteps,\n maxStops,\n });\n if (orientation === \"vertical\") {\n stops.reverse();\n }\n\n return stops;\n }, [minValue, maxValue, step, showInBetweenSteps, orientation, maxStops]);\n\n const sliderState = useContext(SliderStateContext);\n if (!sliderState) return null;\n\n const midValue = (minValue + maxValue) / 2;\n const firstThumbValue = sliderState.getThumbValue(0);\n const secondThumbValue = sliderState.getThumbValue(1) ?? NaN;\n\n const shouldHideActive = stops.length === 2;\n\n return (\n <div\n className={clsx(styles[\"stops\"])}\n data-orientation={orientation}\n data-slider-stops\n >\n {stops.map(({ stopValue, percent }) => {\n const inActiveRange = checkInActiveRange({\n slider,\n midValue,\n firstThumbValue,\n secondThumbValue,\n stopValue,\n });\n\n const belowThumb = checkIsBelowThumb({\n firstThumbValue,\n secondThumbValue,\n stopValue,\n });\n\n const hide = shouldHide({ slider, midValue, stopValue });\n\n const style =\n orientation === \"horizontal\"\n ? { insetInlineStart: `${percent * 100}%` }\n : { insetBlockEnd: `${percent * 100}%` };\n\n return (\n <div\n key={stopValue}\n style={style}\n data-orientation={orientation}\n className={clsx(styles[\"stop\"])}\n data-disabled={sliderState.isDisabled || undefined}\n data-below-thumb={belowThumb || undefined}\n data-stop-value={stopValue}\n data-in-active={inActiveRange || undefined}\n data-hide={\n hide ||\n (shouldHideActive && inActiveRange) ||\n undefined\n }\n data-slider-stop\n />\n );\n })}\n </div>\n );\n};\n"],"mappings":";;;;;AAGA,IAAMI,IAAoB,IA0BbC,KAAoB,MAAyB;CACtD,IAAIC,IAAY,GAEVC,IAAaC,EAAK,SAAS,GAE3BC,IAAmBF,EAAW,YAAY,CAAC,CAAC,QAAQ,IAAI;CAE9D,IAAIE,IAAmB,GACnB,IACI,KAAK,IAAI,KAAK,MAAM,KAAK,MAAM,KAAK,IAAID,CAAI,CAAC,CAAC,CAAC,IAAIC;MACpD;EACH,IAAMC,IAAaH,EAAW,QAAQ,GAAG;EAEzC,AAAIG,KAAc,MACd,IAAYH,EAAW,SAASG;CAExC;CAEA,OAAOJ;AACX,GAUaK,KAAwB,GAAe,MAAyB;CACzE,IAAML,IAAYD,EAAiBG,CAAI;CAEvC,IAAIF,KAAa,GACb,OAAOM;CAGX,IAAMC,IAAM,MAAMP;CAElB,OAAO,KAAK,MAAMM,IAAQC,CAAG,IAAIA;AACrC,GAQaC,KAAmB,EAC5B,UACA,aACA,aACA,cAMU;CACV,IAAMC,KAAaH,IAAQI,KAAYR,GAEnCS,IAAeN,EACf,KAAK,IAAII,CAAS,IAAI,KAAKP,IACrBI,IAAQ,KAAK,KAAKG,CAAS,KAAKP,IAAO,KAAK,IAAIO,CAAS,KACzDH,IAAQG,GACdP,CACJ;CAeA,OAbIS,IAAeD,IACf,IAAeA,IACRC,IAAeC,MACtB,IACIF,IACA,KAAK,MACDL,GAAsBO,IAAWF,KAAYR,GAAMA,CAAI,CAC3D,IACIA,IAGZ,IAAeG,EAAqBM,GAAcT,CAAI,GAE/CS;AACX,GAYaE,KAA6B,EACtC,aACA,aACA,SACA,wBAAqB,IACrB,cAAWf,QACT;CAIF,IAAII,KAAQ,KAAK,OAAO,MAAMA,CAAI,KAAKU,IAAWF,GAC9C,OAAO,CAAA;CAGX,IAAMI,IAAQF,IAAWF,GAanBK,IAAgBP,EAAgB;EAClC,OAAOI;EACP;EACA;EACA;CACJ,CAAC,GAEKI,KAAc,OAA6B;EAC7C;EACA,SAASF,MAAU,IAAI,KAAKG,IAAYP,KAAYI;CACxD;CAKA,IAAIZ,MAAS,KAAK,CAACgB,GACf,OAAO,CAACF,EAAWN,CAAQ,GAAGM,EAAWD,CAAa,CAAC;CAG3D,IAAMI,IAAgB,CAAA,GAElBb,IAAQI;CAEZ,OAAOJ,KAASS,IAAe;EAC3B,EAAM,KAAKC,EAAWV,CAAK,CAAC;EAE5B,IAAMc,IAAYZ,EAAgB;GAC9B,OAAOF,IAAQJ;GACf;GACA;GACA;EACJ,CAAC;EAMD,IAAIkB,MAAcd,GACd;EAQJ,IALA,IAAQc,GAKJD,EAAM,SAASE,GACf,OAAO,CAACL,EAAWN,CAAQ,GAAGM,EAAWD,CAAa,CAAC;CAE/D;CAEA,OAAOI;AACX,GAEMG,KAAoC,EACtC,eACA,mBAKOL,IAAYM,GAGjBC,KAAiC,EACnC,oBACA,qBACA,mBAMOP,IAAYQ,KAAmBR,IAAYS,GAGhDC,KAAoC,EACtC,eACA,cACA,kBAOKV,IAAYW,KAAYX,IAAYM,KACpCN,IAAYW,KAAYX,IAAYM,KACrCN,MAAcW,GAeTC,KAAsB,EAC/B,WACA,aACA,oBACA,qBACA,mBAOW;CACX,QAAQC,GAAR;EACI,KAAK,YACD,OAAOR,EAAiC;GACpC,YAAYG;GACZ;EACJ,CAAC;EAEL,KAAK,SACD,OAAOD,EAA8B;GACjC;GACA;GACA;EACJ,CAAC;EAEL,KAAK,YACD,OAAOG,EAAiC;GACpC,YAAYF;GACZ;GACA;EACJ,CAAC;CACT;AACJ,GAQaM,KAAqB,EAC9B,oBACA,qBACA,mBAMOd,MAAcQ,KAAmBR,MAAcS,GAW7CM,KAAc,EACvB,WACA,aACA,mBAMIF,MAAW,cAIRb,MAAcW;;;GEzSZM,KAA2C,EACpD,gBACA,YAAS,YACT,aACA,aACA,SACA,uBACA,kBACE;CACF,IAAMxC,IAAQ0C,QAAc;EACxB,IAAMjB,IAAQN,EAAU;GACpB;GACA;GACA;GACA;GACA;EACJ,CAAC;EAKD,OAJIwB,MAAgB,cAChBlB,EAAM,QAAQ,GAGXA;CACX,GAAG;EAACT;EAAUE;EAAUV;EAAMgB;EAAoBmB;EAAahB;CAAQ,CAAC,GAElEiB,IAAcC,EAAWC,CAAkB;CACjD,IAAI,CAACF,GAAa,OAAO;CAEzB,IAAMV,KAAYlB,IAAWE,KAAY,GACnCa,IAAkBa,EAAY,cAAc,CAAC,GAC7CZ,IAAmBY,EAAY,cAAc,CAAC,KAAK,KAEnDG,IAAmB/C,EAAM,WAAW;CAE1C,OACI,kBAAC,OAAD;EACI,WAAWC,EAAKC,EAAO8C,KAAQ;EAC/B,oBAAkBL;EAClB,qBAAA;EAEC3C,UAAAA,EAAM,KAAK,EAAE,cAAW,iBAAc;GACnC,IAAMiD,IAAgBd,EAAmB;IACrC;IACA;IACA;IACA;IACA;GACJ,CAAC,GAEKe,IAAab,EAAkB;IACjC;IACA;IACA;GACJ,CAAC,GAEKc,IAAOb,EAAW;IAAE;IAAQ;IAAU;GAAU,CAAC,GAEjDc,IACFT,MAAgB,eACV,EAAE,kBAAkB,GAAGU,IAAU,IAAG,GAAI,IACxC,EAAE,eAAe,GAAGA,IAAU,IAAG,GAAI;GAE/C,OACI,kBAAC,OAAD;IAEW;IACP,oBAAkBV;IAClB,WAAW1C,EAAKC,EAAOoD,IAAO;IAC9B,iBAAeV,EAAY,cAAc,KAAA;IACzC,oBAAkBM,KAAc,KAAA;IAChC,mBAAiB3B;IACjB,kBAAgB0B,KAAiB,KAAA;IACjC,aACIE,KACCJ,KAAoBE,KACrB,KAAA;IAEJ,oBAAA;GAAgB,GAbX1B,CAaW;EAG5B,CAAC;CACA,CAAA;AAEb"}
1
+ {"version":3,"file":"SliderStops","names":["stops","clsx","styles","clsx$1","DEFAULT_MAX_STOPS","getStepPrecision","precision","stepString","step","exponentialIndex","pointIndex","roundToStepPrecision","value","pow","snapValueToStep","remainder","minValue","snappedValue","maxValue","calcStops","range","lastStopValue","createStop","stopValue","showInBetweenSteps","stops","nextValue","maxStops","checkInActiveRangeStandardSlider","thumbValue","checkInActiveRangeRangeSlider","firstThumbValue","secondThumbValue","checkInActiveRangeCenteredSlider","midValue","checkInActiveRange","slider","checkIsBelowThumb","shouldHide","sliderStops_module_default","SliderStops","stops_0","useMemo","orientation","sliderState","useContext","SliderStateContext","shouldHideActive","\"stops\"","inActiveRange","belowThumb","hide","style","percent","\"stop\""],"sources":["../../src/components/Input/Slider/SliderStops/core.ts","../../src/components/Input/Slider/SliderStops/sliderStops.module.css","../../src/components/Input/Slider/SliderStops/SliderStops.tsx"],"sourcesContent":["import type { SliderVariant } from \"../core\";\nimport type { CalculateStops, Stop } from \"./types\";\n\nconst DEFAULT_MAX_STOPS = 20;\n\n/**\n * Clamps a numeric value between minimum and maximum bounds.\n *\n * @param value - The input value to clamp.\n * @param min - The lower bound. Defaults to `-Infinity`.\n * @param max - The upper bound. Defaults to `Infinity`.\n * @returns The clamped value within `[min, max]`.\n */\nexport const clamp = (\n value: number,\n min: number = -Infinity,\n max: number = Infinity\n): number => {\n return Math.min(Math.max(value, min), max);\n};\n\n/**\n * Calculates the decimal precision (number of decimal places) of a step value.\n *\n * Supports standard fractional numbers (e.g. `0.01` -> 2) and scientific notation (e.g. `1e-7` -> 7).\n *\n * @param step - The step increment.\n * @returns The number of decimal places represented by the step.\n */\nexport const getStepPrecision = (step: number): number => {\n let precision = 0;\n\n const stepString = step.toString();\n\n const exponentialIndex = stepString.toLowerCase().indexOf(\"e-\");\n\n if (exponentialIndex > 0) {\n precision =\n Math.abs(Math.floor(Math.log10(Math.abs(step)))) + exponentialIndex;\n } else {\n const pointIndex = stepString.indexOf(\".\");\n\n if (pointIndex >= 0) {\n precision = stepString.length - pointIndex;\n }\n }\n\n return precision;\n};\n\n/**\n * Rounds a numeric value to the precision determined by the step value\n * to eliminate floating-point calculation inaccuracies.\n *\n * @param value - The value to round.\n * @param step - The step determining precision.\n * @returns The rounded numeric value.\n */\nexport const roundToStepPrecision = (value: number, step: number): number => {\n const precision = getStepPrecision(step);\n\n if (precision <= 0) {\n return value;\n }\n\n const pow = 10 ** precision;\n\n return Math.round(value * pow) / pow;\n};\n\n/**\n * Snaps a given number to the nearest valid step increment between min and max bounds.\n *\n * @param options - Configuration object containing value, minValue, maxValue, and step.\n * @returns The snapped value aligned to the step grid.\n */\nexport const snapValueToStep = ({\n value,\n minValue,\n maxValue,\n step,\n}: {\n value: number;\n minValue: number;\n maxValue: number;\n step: number;\n}): number => {\n const remainder = (value - minValue) % step;\n\n let snappedValue = roundToStepPrecision(\n Math.abs(remainder) * 2 >= step\n ? value + Math.sign(remainder) * (step - Math.abs(remainder))\n : value - remainder,\n step\n );\n\n if (snappedValue < minValue) {\n snappedValue = minValue;\n } else if (snappedValue > maxValue) {\n snappedValue =\n minValue +\n Math.floor(\n roundToStepPrecision((maxValue - minValue) / step, step)\n ) *\n step;\n }\n\n snappedValue = roundToStepPrecision(snappedValue, step);\n\n return snappedValue;\n};\n\n/**\n * Generates all valid slider tick stops along the track using stepping logic\n * compatible with React Aria.\n *\n * If the number of generated stops exceeds `maxStops` or `showInBetweenSteps` is false,\n * only the minimum and maximum boundaries are returned to prevent excessive DOM nodes.\n *\n * @param options - Stop calculation configuration.\n * @returns Array of calculated {@link Stop} objects with `stopValue` and `percent`.\n */\nexport const calcStops: CalculateStops = ({\n minValue,\n maxValue,\n step,\n showInBetweenSteps = true,\n maxStops = DEFAULT_MAX_STOPS,\n}) => {\n /**\n * Invalid configuration fallback.\n */\n if (step <= 0 || Number.isNaN(step) || maxValue < minValue) {\n return [];\n }\n\n const range = maxValue - minValue;\n\n /**\n * React Aria consistent last valid stop.\n *\n * Example:\n * min=0\n * max=10\n * step=3\n *\n * valid values:\n * 0 3 6 9\n */\n const lastStopValue = snapValueToStep({\n value: maxValue,\n minValue,\n maxValue,\n step,\n });\n\n const createStop = (stopValue: number): Stop => ({\n stopValue,\n percent: range === 0 ? 0 : (stopValue - minValue) / range,\n });\n\n /**\n * Reduced stop rendering mode.\n */\n if (step === 1 || !showInBetweenSteps) {\n return [createStop(minValue), createStop(lastStopValue)];\n }\n\n const stops: Stop[] = [];\n\n let value = minValue;\n\n while (value <= lastStopValue) {\n stops.push(createStop(value));\n\n const nextValue = snapValueToStep({\n value: value + step,\n minValue,\n maxValue,\n step,\n });\n\n /**\n * Prevent infinite loops caused by\n * floating precision edge cases.\n */\n if (nextValue === value) {\n break;\n }\n\n value = nextValue;\n\n /**\n * DOM safety guard.\n */\n if (stops.length > maxStops) {\n return [createStop(minValue), createStop(lastStopValue)];\n }\n }\n\n return stops;\n};\n\nconst checkInActiveRangeStandardSlider = ({\n thumbValue,\n stopValue,\n}: {\n thumbValue: number;\n stopValue: number;\n}): boolean => {\n return stopValue < thumbValue;\n};\n\nconst checkInActiveRangeRangeSlider = ({\n firstThumbValue,\n secondThumbValue,\n stopValue,\n}: {\n firstThumbValue: number;\n secondThumbValue: number;\n stopValue: number;\n}): boolean => {\n return stopValue > firstThumbValue && stopValue < secondThumbValue;\n};\n\nconst checkInActiveRangeCenteredSlider = ({\n thumbValue,\n stopValue,\n midValue,\n}: {\n thumbValue: number;\n stopValue: number;\n midValue: number;\n}): boolean => {\n return (\n (stopValue < midValue && stopValue > thumbValue) ||\n (stopValue > midValue && stopValue < thumbValue) ||\n stopValue === midValue\n );\n};\n\n/**\n * Determines whether a given tick stop falls within the active (highlighted) track range\n * for the specified slider variant.\n *\n * - Standard slider: stops strictly below the thumb.\n * - Range slider: stops strictly between the start and end thumbs.\n * - Centered slider: stops between the mid-value and the thumb position.\n *\n * @param options - Configuration containing the slider variant, thumb values, mid-value, and stopValue.\n * @returns `true` if the stop is within the active highlighted track segment.\n */\nexport const checkInActiveRange = ({\n slider,\n midValue,\n firstThumbValue,\n secondThumbValue,\n stopValue,\n}: {\n slider: SliderVariant;\n midValue: number;\n firstThumbValue: number;\n secondThumbValue: number;\n stopValue: number;\n}): boolean => {\n switch (slider) {\n case \"standard\":\n return checkInActiveRangeStandardSlider({\n thumbValue: firstThumbValue,\n stopValue,\n });\n\n case \"range\":\n return checkInActiveRangeRangeSlider({\n firstThumbValue,\n secondThumbValue,\n stopValue,\n });\n\n case \"centered\":\n return checkInActiveRangeCenteredSlider({\n thumbValue: firstThumbValue,\n midValue,\n stopValue,\n });\n }\n};\n\n/**\n * Checks whether a given stop coincides directly with any active thumb position.\n *\n * @param options - First and second thumb values, plus the candidate stopValue.\n * @returns `true` if the stop is located directly underneath a thumb.\n */\nexport const checkIsBelowThumb = ({\n firstThumbValue,\n secondThumbValue,\n stopValue,\n}: {\n firstThumbValue: number;\n secondThumbValue: number;\n stopValue: number;\n}): boolean => {\n return stopValue === firstThumbValue || stopValue === secondThumbValue;\n};\n\n/**\n * Checks whether a stop indicator should be visually hidden.\n *\n * For centered sliders, the center anchor point is hidden to avoid overlapping track visuals.\n *\n * @param options - Slider variant, midValue, and stopValue.\n * @returns `true` if the stop indicator should be hidden.\n */\nexport const shouldHide = ({\n slider,\n midValue,\n stopValue,\n}: {\n slider: SliderVariant;\n midValue: number;\n stopValue: number;\n}): boolean => {\n if (slider !== \"centered\") {\n return false;\n }\n\n return stopValue === midValue;\n};\n","@layer adgytec.comps {\n .stops {\n position: absolute;\n inset: 0;\n pointer-events: none;\n }\n\n .stop {\n position: absolute;\n\n &[data-orientation=\"horizontal\"] {\n inset-block-start: 50%;\n translate: -50% -50%;\n }\n\n &[data-orientation=\"vertical\"] {\n inset-inline-start: 50%;\n translate: -50% 50%;\n }\n\n inline-size: var(--md-sys-layout-space-4);\n aspect-ratio: 1 / 1;\n\n border-radius: var(--md-sys-shape-corner-radius-full);\n background-color: var(--_md-slider-inactive-stop-color);\n\n transition: background-color var(--md-sys-motion-standard-fast-spatial)\n var(--md-sys-motion-standard-fast-spatial-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n\n &[data-in-active] {\n background-color: var(--_md-slider-active-stop-color);\n }\n\n &[data-hide] {\n background-color: transparent;\n }\n\n &[data-disabled] {\n background-color: rgb(\n from var(--md-sys-color-on-surface) r g b /\n var(--md-sys-state-disabled-container)\n );\n\n &[data-in-active] {\n background-color: rgb(\n from var(--md-sys-color-inverse-on-surface) r g b /\n var(--md-sys-state-disabled-content)\n );\n }\n\n &[data-hide] {\n background-color: transparent;\n }\n }\n\n &[data-below-thumb] {\n background-color: transparent;\n }\n }\n}\n","import clsx from \"clsx\";\nimport { useContext, useMemo } from \"react\";\nimport { SliderStateContext } from \"react-aria-components\";\nimport {\n calcStops,\n checkInActiveRange,\n checkIsBelowThumb,\n shouldHide,\n} from \"./core\";\nimport styles from \"./sliderStops.module.css\";\nimport type { SliderStopsProps } from \"./types\";\n\n/**\n * Component that renders step tick mark indicators along a slider track.\n *\n * Positions tick indicators using percentage offsets computed from `minValue`, `maxValue`,\n * and `step`. Distinguishes between active and inactive track sections and hides stops\n * directly beneath active thumbs.\n *\n * @example\n * ```tsx\n * <SliderStops\n * minValue={0}\n * maxValue={100}\n * step={10}\n * orientation=\"horizontal\"\n * showInBetweenSteps\n * />\n * ```\n */\nexport const SliderStops: React.FC<SliderStopsProps> = ({\n orientation,\n slider = \"standard\",\n minValue,\n maxValue,\n step,\n showInBetweenSteps,\n maxStops,\n}) => {\n const stops = useMemo(() => {\n const stops = calcStops({\n minValue,\n maxValue,\n step,\n showInBetweenSteps,\n maxStops,\n });\n if (orientation === \"vertical\") {\n stops.reverse();\n }\n\n return stops;\n }, [minValue, maxValue, step, showInBetweenSteps, orientation, maxStops]);\n\n const sliderState = useContext(SliderStateContext);\n if (!sliderState) return null;\n\n const midValue = (minValue + maxValue) / 2;\n const firstThumbValue = sliderState.getThumbValue(0);\n const secondThumbValue = sliderState.getThumbValue(1) ?? NaN;\n\n const shouldHideActive = stops.length === 2;\n\n return (\n <div\n className={clsx(styles[\"stops\"])}\n data-orientation={orientation}\n data-slider-stops\n >\n {stops.map(({ stopValue, percent }) => {\n const inActiveRange = checkInActiveRange({\n slider,\n midValue,\n firstThumbValue,\n secondThumbValue,\n stopValue,\n });\n\n const belowThumb = checkIsBelowThumb({\n firstThumbValue,\n secondThumbValue,\n stopValue,\n });\n\n const hide = shouldHide({ slider, midValue, stopValue });\n\n const style =\n orientation === \"horizontal\"\n ? { insetInlineStart: `${percent * 100}%` }\n : { insetBlockEnd: `${percent * 100}%` };\n\n return (\n <div\n key={stopValue}\n style={style}\n data-orientation={orientation}\n className={clsx(styles[\"stop\"])}\n data-disabled={sliderState.isDisabled || undefined}\n data-below-thumb={belowThumb || undefined}\n data-stop-value={stopValue}\n data-in-active={inActiveRange || undefined}\n data-hide={\n hide ||\n (shouldHideActive && inActiveRange) ||\n undefined\n }\n data-slider-stop\n />\n );\n })}\n </div>\n );\n};\n"],"mappings":"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"}
@@ -23,7 +23,6 @@ import '../assets/SliderThumb.css';var a = {
23
23
  }) : u : /* @__PURE__ */ r(t, { children: ({ state: e }) => e.getThumbValueLabel(o) })
24
24
  })
25
25
  });
26
- //#endregion
27
26
  export { o as t };
28
27
 
29
28
  //# sourceMappingURL=SliderThumb.map
@@ -1 +1 @@
1
- {"version":3,"file":"SliderThumb","names":["SliderThumb","AriaSliderThumb","clsx","styles","SliderOutput","SliderThumbStateContext","clsx$1","sliderThumb_module_default","SliderThumb$1","props","SliderThumb","\"thumb\"","size","className","renderProps","orientation","renderProp","outputRenderer","index","SliderOutput$1","state"],"sources":["../../src/components/Input/Slider/SliderThumb/sliderThumb.module.css","../../src/components/Input/Slider/SliderThumb/SliderThumb.tsx"],"sourcesContent":["@layer adgytec.comps {\n .thumb {\n /* thumb */\n --_md-slider-thumb-thickness: var(--md-sys-layout-space-4);\n }\n\n .extra-small {\n /* thumb */\n --_md-slider-thumb-size: calc(44 * var(--dp, 1px));\n }\n\n .small {\n /* thumb */\n --_md-slider-thumb-size: calc(44 * var(--dp, 1px));\n }\n\n .medium {\n /* thumb */\n --_md-slider-thumb-size: calc(52 * var(--dp, 1px));\n }\n\n .large {\n /* thumb */\n --_md-slider-thumb-size: calc(68 * var(--dp, 1px));\n }\n\n .extra-large {\n /* thumb */\n --_md-slider-thumb-size: calc(108 * var(--dp, 1px));\n }\n\n .thumb {\n --_thumb-block-size: var(--_md-slider-thumb-size);\n --_thumb-inline-size: var(--_md-slider-thumb-thickness);\n\n position: absolute;\n transform-origin: center;\n\n &[data-orientation=\"horizontal\"] {\n inset-block-start: 50%;\n }\n\n &[data-orientation=\"vertical\"] {\n --_thumb-block-size: var(--_md-slider-thumb-thickness);\n --_thumb-inline-size: var(--_md-slider-thumb-size);\n\n inset-inline-start: 50%;\n }\n\n inline-size: var(--_thumb-inline-size);\n block-size: var(--_thumb-block-size);\n\n outline: none;\n border-radius: var(--md-sys-shape-corner-radius-full);\n\n background-color: var(--_md-slider-thumb-color);\n\n transition:\n block-size var(--md-sys-motion-expressive-fast-spatial)\n var(--md-sys-motion-expressive-fast-spatial-duration),\n inline-size var(--md-sys-motion-expressive-fast-spatial)\n var(--md-sys-motion-expressive-fast-spatial-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n\n &[data-z-index-increase] {\n z-index: 1;\n }\n\n &[data-focus-visible]::before {\n --focus-indicator-thickness: calc(3 * var(--dp, 1px));\n --focus-indicator-offset: calc(6 * var(--dp, 1px));\n --focus-indicator-color: var(--md-sys-color-secondary);\n\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n\n z-index: 2;\n\n outline-width: var(--focus-indicator-thickness);\n outline-style: solid;\n outline-offset: var(--focus-indicator-offset);\n outline-color: var(--focus-indicator-color);\n }\n\n &[data-dragging],\n &[data-focus-visible] {\n --_md-slider-thumb-thickness: calc(2 * var(--dp, 1px));\n }\n\n &[data-disabled] {\n background-color: rgb(\n from var(--md-sys-color-on-surface) r g b /\n var(--md-sys-state-disabled-content)\n );\n }\n }\n}\n","import clsx from \"clsx\";\nimport type { Orientation } from \"react-aria\";\nimport { SliderThumb as AriaSliderThumb } from \"react-aria-components\";\nimport type { OutputRenderer, SliderSize } from \"../core\";\nimport { SliderOutput } from \"../SliderOutput\";\nimport { SliderThumbStateContext } from \"./context\";\nimport styles from \"./sliderThumb.module.css\";\n\n/**\n * Props for the [`SliderThumb`](file:///home/rohan/work/adgytec/adgytec-web-ui-components/src/components/Input/Slider/SliderThumb/SliderThumb.tsx) component.\n */\nexport interface SliderThumbProps\n extends Omit<\n React.ComponentPropsWithRef<typeof AriaSliderThumb>,\n \"children\"\n > {\n /**\n * Layout orientation of the slider track.\n */\n orientation: Orientation;\n /**\n * Size variant determining the dimensions of the thumb handle.\n */\n size: SliderSize;\n /**\n * Custom renderer or static node for the thumb value tooltip output.\n */\n outputRenderer?: OutputRenderer;\n}\n\n/**\n * Draggable handle component within a slider track.\n *\n * Wraps React Aria's `SliderThumb`, managing state transitions (drag, hover, focus)\n * and hosting the [`SliderOutput`](file:///home/rohan/work/adgytec/adgytec-web-ui-components/src/components/Input/Slider/SliderOutput/SliderOutput.tsx)\n * value bubble.\n *\n * @example\n * ```tsx\n * <SliderThumb\n * index={0}\n * size=\"medium\"\n * orientation=\"horizontal\"\n * aria-label=\"Volume level\"\n * />\n * ```\n */\nexport const SliderThumb: React.FC<SliderThumbProps> = ({\n index = 0,\n orientation,\n className,\n size,\n outputRenderer,\n ...props\n}) => {\n return (\n <AriaSliderThumb\n index={index}\n className={(renderProps) =>\n clsx(\n styles[\"thumb\"],\n styles[size],\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n data-orientation={orientation}\n {...props}\n data-slider-thumb\n >\n {(renderProp) => (\n <SliderThumbStateContext value={renderProp}>\n {outputRenderer ? (\n typeof outputRenderer === \"function\" ? (\n outputRenderer({\n ...renderProp,\n thumbIndex: index,\n })\n ) : (\n outputRenderer\n )\n ) : (\n <SliderOutput>\n {({ state }) => state.getThumbValueLabel(index)}\n </SliderOutput>\n )}\n </SliderThumbStateContext>\n )}\n </AriaSliderThumb>\n );\n};\n"],"mappings":";;;;;;;;;;;GC+CaA,KAA2C,EACpD,WAAQ,GACR,gBACA,cACA,SACA,mBACA,GAAGS,QAGC,kBAACR,GAAD;CACW;CACP,YAAY,MACRC,EACIC,EAAOQ,OACPR,EAAOS,IACP,OAAOC,KAAc,aACfA,EAAUC,CAAW,IACrBD,CACV;CAEJ,oBAAkBE;CAClB,GAAIN;CACJ,qBAAA;CAEE,WAAA,MACE,kBAACJ,GAAD;EAAyB,OAAOW;EAC3B,UAAAC,IACG,OAAOA,KAAmB,aACtBA,EAAe;GACX,GAAGD;GACH,YAAYE;EAChB,CAAC,IAEDD,IAGJ,kBAACb,GAAD,EAAA,WACM,EAAE,eAAYgB,EAAM,mBAAmBF,CAAK,EACpC,CAAA;CAEG,CAAA;AAEhB,CAAA"}
1
+ {"version":3,"file":"SliderThumb","names":["SliderThumb","AriaSliderThumb","clsx","styles","SliderOutput","SliderThumbStateContext","clsx$1","sliderThumb_module_default","SliderThumb$1","props","SliderThumb","\"thumb\"","size","className","renderProps","orientation","renderProp","outputRenderer","index","SliderOutput$1","state"],"sources":["../../src/components/Input/Slider/SliderThumb/sliderThumb.module.css","../../src/components/Input/Slider/SliderThumb/SliderThumb.tsx"],"sourcesContent":["@layer adgytec.comps {\n .thumb {\n /* thumb */\n --_md-slider-thumb-thickness: var(--md-sys-layout-space-4);\n }\n\n .extra-small {\n /* thumb */\n --_md-slider-thumb-size: calc(44 * var(--dp, 1px));\n }\n\n .small {\n /* thumb */\n --_md-slider-thumb-size: calc(44 * var(--dp, 1px));\n }\n\n .medium {\n /* thumb */\n --_md-slider-thumb-size: calc(52 * var(--dp, 1px));\n }\n\n .large {\n /* thumb */\n --_md-slider-thumb-size: calc(68 * var(--dp, 1px));\n }\n\n .extra-large {\n /* thumb */\n --_md-slider-thumb-size: calc(108 * var(--dp, 1px));\n }\n\n .thumb {\n --_thumb-block-size: var(--_md-slider-thumb-size);\n --_thumb-inline-size: var(--_md-slider-thumb-thickness);\n\n position: absolute;\n transform-origin: center;\n\n &[data-orientation=\"horizontal\"] {\n inset-block-start: 50%;\n }\n\n &[data-orientation=\"vertical\"] {\n --_thumb-block-size: var(--_md-slider-thumb-thickness);\n --_thumb-inline-size: var(--_md-slider-thumb-size);\n\n inset-inline-start: 50%;\n }\n\n inline-size: var(--_thumb-inline-size);\n block-size: var(--_thumb-block-size);\n\n outline: none;\n border-radius: var(--md-sys-shape-corner-radius-full);\n\n background-color: var(--_md-slider-thumb-color);\n\n transition:\n block-size var(--md-sys-motion-expressive-fast-spatial)\n var(--md-sys-motion-expressive-fast-spatial-duration),\n inline-size var(--md-sys-motion-expressive-fast-spatial)\n var(--md-sys-motion-expressive-fast-spatial-duration);\n\n @media (prefers-reduced-motion) {\n transition: none;\n }\n\n &[data-z-index-increase] {\n z-index: 1;\n }\n\n &[data-focus-visible]::before {\n --focus-indicator-thickness: calc(3 * var(--dp, 1px));\n --focus-indicator-offset: calc(6 * var(--dp, 1px));\n --focus-indicator-color: var(--md-sys-color-secondary);\n\n content: \"\";\n position: absolute;\n inset: 0;\n border-radius: inherit;\n\n z-index: 2;\n\n outline-width: var(--focus-indicator-thickness);\n outline-style: solid;\n outline-offset: var(--focus-indicator-offset);\n outline-color: var(--focus-indicator-color);\n }\n\n &[data-dragging],\n &[data-focus-visible] {\n --_md-slider-thumb-thickness: calc(2 * var(--dp, 1px));\n }\n\n &[data-disabled] {\n background-color: rgb(\n from var(--md-sys-color-on-surface) r g b /\n var(--md-sys-state-disabled-content)\n );\n }\n }\n}\n","import clsx from \"clsx\";\nimport type { Orientation } from \"react-aria\";\nimport { SliderThumb as AriaSliderThumb } from \"react-aria-components\";\nimport type { OutputRenderer, SliderSize } from \"../core\";\nimport { SliderOutput } from \"../SliderOutput\";\nimport { SliderThumbStateContext } from \"./context\";\nimport styles from \"./sliderThumb.module.css\";\n\n/**\n * Props for the [`SliderThumb`](src/components/Input/Slider/SliderThumb/SliderThumb.tsx) component.\n */\nexport interface SliderThumbProps\n extends Omit<\n React.ComponentPropsWithRef<typeof AriaSliderThumb>,\n \"children\"\n > {\n /**\n * Layout orientation of the slider track.\n */\n orientation: Orientation;\n /**\n * Size variant determining the dimensions of the thumb handle.\n */\n size: SliderSize;\n /**\n * Custom renderer or static node for the thumb value tooltip output.\n */\n outputRenderer?: OutputRenderer;\n}\n\n/**\n * Draggable handle component within a slider track.\n *\n * Wraps React Aria's `SliderThumb`, managing state transitions (drag, hover, focus)\n * and hosting the [`SliderOutput`](src/components/Input/Slider/SliderOutput/SliderOutput.tsx)\n * value bubble.\n *\n * @example\n * ```tsx\n * <SliderThumb\n * index={0}\n * size=\"medium\"\n * orientation=\"horizontal\"\n * aria-label=\"Volume level\"\n * />\n * ```\n */\nexport const SliderThumb: React.FC<SliderThumbProps> = ({\n index = 0,\n orientation,\n className,\n size,\n outputRenderer,\n ...props\n}) => {\n return (\n <AriaSliderThumb\n index={index}\n className={(renderProps) =>\n clsx(\n styles[\"thumb\"],\n styles[size],\n typeof className === \"function\"\n ? className(renderProps)\n : className\n )\n }\n data-orientation={orientation}\n {...props}\n data-slider-thumb\n >\n {(renderProp) => (\n <SliderThumbStateContext value={renderProp}>\n {outputRenderer ? (\n typeof outputRenderer === \"function\" ? (\n outputRenderer({\n ...renderProp,\n thumbIndex: index,\n })\n ) : (\n outputRenderer\n )\n ) : (\n <SliderOutput>\n {({ state }) => state.getThumbValueLabel(index)}\n </SliderOutput>\n )}\n </SliderThumbStateContext>\n )}\n </AriaSliderThumb>\n );\n};\n"],"mappings":";;;;;;;;;;;A,GC+CaA,KAA2C,EACpD,WAAQ,GACR,gBACA,cACA,SACA,mBACA,GAAGS,QAGC,kBAACR,GAAD;CACW;CACP,YAAY,MACRC,EACIC,EAAOQ,OACPR,EAAOS,IACP,OAAOC,KAAc,aACfA,EAAUC,CAAW,IACrBD,CACV;CAEJ,oBAAkBE;CAClB,GAAIN;CACJ,qBAAA;CAEE,WAAA,MACE,kBAACJ,GAAD;EAAyB,OAAOW;EAC3B,UAAAC,IACG,OAAOA,KAAmB,aACtBA,EAAe;GACX,GAAGD;GACH,YAAYE;EAChB,CAAC,IAEDD,IAGJ,kBAACb,GAAD,EAAA,WACM,EAAE,eAAYgB,EAAM,mBAAmBF,CAAK,EACpC,CAAA;CAEG,CAAA;AAEhB,CAAA"}
@@ -5,7 +5,7 @@ import { createContext as r, useContext as i, useMemo as a } from "react";
5
5
  import { jsx as o, jsxs as s } from "react/jsx-runtime";
6
6
  import { Text as c, UNSTABLE_Toast as l, UNSTABLE_ToastContent as u, UNSTABLE_ToastQueue as d, UNSTABLE_ToastRegion as f } from "react-aria-components";
7
7
  import { X as p } from "lucide-react";
8
- import '../assets/Snackbar.css';//#region src/components/Snackbar/context.ts
8
+ import '../assets/Snackbar.css';// src/components/Snackbar/context.ts
9
9
  var m = r(null);
10
10
  function h() {
11
11
  let e = i(m);
@@ -46,7 +46,6 @@ var g = {
46
46
  })]
47
47
  });
48
48
  };
49
- //#endregion
50
49
  export { m as n, h as r, _ as t };
51
50
 
52
51
  //# sourceMappingURL=Snackbar.map