@gnome-ui/react 1.45.0 → 1.45.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (857) hide show
  1. package/dist/components/AboutDialog/AboutDialog.cjs +1 -1
  2. package/dist/components/AboutDialog/AboutDialog.cjs.map +1 -1
  3. package/dist/components/AboutDialog/AboutDialog.d.ts +1 -1
  4. package/dist/components/AboutDialog/AboutDialog.js +3 -4
  5. package/dist/components/AboutDialog/AboutDialog.js.map +1 -1
  6. package/dist/components/AboutDialog/AboutDialog.module.css.cjs +1 -1
  7. package/dist/components/AboutDialog/AboutDialog.module.css.cjs.map +1 -1
  8. package/dist/components/AboutDialog/AboutDialog.module.css.js +30 -31
  9. package/dist/components/AboutDialog/AboutDialog.module.css.js.map +1 -1
  10. package/dist/components/AboutDialog/index.d.ts +1 -1
  11. package/dist/components/AboutDialog.cjs +1 -1
  12. package/dist/components/ActionRow/ActionRow.cjs +1 -1
  13. package/dist/components/ActionRow/ActionRow.cjs.map +1 -1
  14. package/dist/components/ActionRow/ActionRow.d.ts +2 -2
  15. package/dist/components/ActionRow/ActionRow.js +2 -2
  16. package/dist/components/ActionRow/ActionRow.js.map +1 -1
  17. package/dist/components/ActionRow/ActionRow.module.css.cjs +1 -1
  18. package/dist/components/ActionRow/ActionRow.module.css.cjs.map +1 -1
  19. package/dist/components/ActionRow/ActionRow.module.css.js +9 -9
  20. package/dist/components/ActionRow/ActionRow.module.css.js.map +1 -1
  21. package/dist/components/ActionRow/index.d.ts +1 -1
  22. package/dist/components/ActionRow.cjs +1 -1
  23. package/dist/components/Avatar/Avatar.cjs +1 -1
  24. package/dist/components/Avatar/Avatar.cjs.map +1 -1
  25. package/dist/components/Avatar/Avatar.d.ts +3 -3
  26. package/dist/components/Avatar/Avatar.js +2 -2
  27. package/dist/components/Avatar/Avatar.js.map +1 -1
  28. package/dist/components/Avatar/Avatar.module.css.cjs +1 -1
  29. package/dist/components/Avatar/Avatar.module.css.cjs.map +1 -1
  30. package/dist/components/Avatar/Avatar.module.css.js +16 -16
  31. package/dist/components/Avatar/Avatar.module.css.js.map +1 -1
  32. package/dist/components/Avatar/index.d.ts +1 -1
  33. package/dist/components/Avatar.cjs +1 -1
  34. package/dist/components/AvatarRotator/AvatarRotator.cjs +1 -1
  35. package/dist/components/AvatarRotator/AvatarRotator.cjs.map +1 -1
  36. package/dist/components/AvatarRotator/AvatarRotator.d.ts +1 -1
  37. package/dist/components/AvatarRotator/AvatarRotator.js +2 -2
  38. package/dist/components/AvatarRotator/AvatarRotator.js.map +1 -1
  39. package/dist/components/AvatarRotator/index.d.ts +1 -1
  40. package/dist/components/AvatarRotator.cjs +1 -1
  41. package/dist/components/Badge/Badge.cjs +1 -1
  42. package/dist/components/Badge/Badge.cjs.map +1 -1
  43. package/dist/components/Badge/Badge.d.ts +2 -2
  44. package/dist/components/Badge/Badge.js +2 -2
  45. package/dist/components/Badge/Badge.js.map +1 -1
  46. package/dist/components/Badge/Badge.module.css.cjs +1 -1
  47. package/dist/components/Badge/Badge.module.css.cjs.map +1 -1
  48. package/dist/components/Badge/Badge.module.css.js +9 -9
  49. package/dist/components/Badge/Badge.module.css.js.map +1 -1
  50. package/dist/components/Badge/index.d.ts +1 -1
  51. package/dist/components/Badge.cjs +1 -1
  52. package/dist/components/Banner/Banner.cjs +1 -1
  53. package/dist/components/Banner/Banner.cjs.map +1 -1
  54. package/dist/components/Banner/Banner.d.ts +2 -2
  55. package/dist/components/Banner/Banner.js +34 -36
  56. package/dist/components/Banner/Banner.js.map +1 -1
  57. package/dist/components/Banner/Banner.module.css.cjs +1 -1
  58. package/dist/components/Banner/Banner.module.css.cjs.map +1 -1
  59. package/dist/components/Banner/Banner.module.css.js +15 -16
  60. package/dist/components/Banner/Banner.module.css.js.map +1 -1
  61. package/dist/components/Banner/index.d.ts +1 -1
  62. package/dist/components/Banner.cjs +1 -1
  63. package/dist/components/Bin/Bin.cjs +1 -1
  64. package/dist/components/Bin/Bin.cjs.map +1 -1
  65. package/dist/components/Bin/Bin.d.ts +1 -1
  66. package/dist/components/Bin/Bin.js +4 -6
  67. package/dist/components/Bin/Bin.js.map +1 -1
  68. package/dist/components/Bin/index.d.ts +1 -1
  69. package/dist/components/Bin.cjs +1 -1
  70. package/dist/components/Blockquote/Blockquote.cjs +1 -1
  71. package/dist/components/Blockquote/Blockquote.cjs.map +1 -1
  72. package/dist/components/Blockquote/Blockquote.d.ts +2 -2
  73. package/dist/components/Blockquote/Blockquote.js +24 -26
  74. package/dist/components/Blockquote/Blockquote.js.map +1 -1
  75. package/dist/components/Blockquote/Blockquote.module.css.cjs +1 -1
  76. package/dist/components/Blockquote/Blockquote.module.css.cjs.map +1 -1
  77. package/dist/components/Blockquote/Blockquote.module.css.js +11 -11
  78. package/dist/components/Blockquote/Blockquote.module.css.js.map +1 -1
  79. package/dist/components/Blockquote/index.d.ts +1 -1
  80. package/dist/components/Blockquote.cjs +1 -1
  81. package/dist/components/BottomSheet/BottomSheet.cjs +1 -1
  82. package/dist/components/BottomSheet/BottomSheet.cjs.map +1 -1
  83. package/dist/components/BottomSheet/BottomSheet.d.ts +2 -2
  84. package/dist/components/BottomSheet/BottomSheet.js +2 -3
  85. package/dist/components/BottomSheet/BottomSheet.js.map +1 -1
  86. package/dist/components/BottomSheet/BottomSheet.module.css.cjs +1 -1
  87. package/dist/components/BottomSheet/BottomSheet.module.css.cjs.map +1 -1
  88. package/dist/components/BottomSheet/BottomSheet.module.css.js +10 -11
  89. package/dist/components/BottomSheet/BottomSheet.module.css.js.map +1 -1
  90. package/dist/components/BottomSheet/index.d.ts +1 -1
  91. package/dist/components/BottomSheet.cjs +1 -1
  92. package/dist/components/Box/Box.cjs +1 -1
  93. package/dist/components/Box/Box.cjs.map +1 -1
  94. package/dist/components/Box/Box.d.ts +4 -4
  95. package/dist/components/Box/Box.js +2 -2
  96. package/dist/components/Box/Box.js.map +1 -1
  97. package/dist/components/Box/index.d.ts +1 -1
  98. package/dist/components/Box.cjs +1 -1
  99. package/dist/components/BoxedList/BoxedList.cjs +1 -1
  100. package/dist/components/BoxedList/BoxedList.cjs.map +1 -1
  101. package/dist/components/BoxedList/BoxedList.d.ts +2 -2
  102. package/dist/components/BoxedList/BoxedList.js +2 -3
  103. package/dist/components/BoxedList/BoxedList.js.map +1 -1
  104. package/dist/components/BoxedList/BoxedList.module.css.cjs +1 -1
  105. package/dist/components/BoxedList/BoxedList.module.css.cjs.map +1 -1
  106. package/dist/components/BoxedList/BoxedList.module.css.js +5 -5
  107. package/dist/components/BoxedList/BoxedList.module.css.js.map +1 -1
  108. package/dist/components/BoxedList/index.d.ts +1 -1
  109. package/dist/components/BoxedList.cjs +1 -1
  110. package/dist/components/BreakpointBin/BreakpointBin.cjs +1 -1
  111. package/dist/components/BreakpointBin/BreakpointBin.cjs.map +1 -1
  112. package/dist/components/BreakpointBin/BreakpointBin.d.ts +2 -2
  113. package/dist/components/BreakpointBin/BreakpointBin.js +3 -3
  114. package/dist/components/BreakpointBin/BreakpointBin.js.map +1 -1
  115. package/dist/components/BreakpointBin/index.d.ts +1 -1
  116. package/dist/components/BreakpointBin.cjs +1 -1
  117. package/dist/components/Button/Button.cjs +1 -1
  118. package/dist/components/Button/Button.cjs.map +1 -1
  119. package/dist/components/Button/Button.d.ts +3 -3
  120. package/dist/components/Button/Button.js.map +1 -1
  121. package/dist/components/Button/Button.module.css.cjs +1 -1
  122. package/dist/components/Button/Button.module.css.cjs.map +1 -1
  123. package/dist/components/Button/Button.module.css.js +11 -11
  124. package/dist/components/Button/Button.module.css.js.map +1 -1
  125. package/dist/components/Button/index.d.ts +1 -1
  126. package/dist/components/Button.cjs +1 -1
  127. package/dist/components/ButtonContent/ButtonContent.cjs +1 -1
  128. package/dist/components/ButtonContent/ButtonContent.cjs.map +1 -1
  129. package/dist/components/ButtonContent/ButtonContent.d.ts +2 -2
  130. package/dist/components/ButtonContent/ButtonContent.js +24 -26
  131. package/dist/components/ButtonContent/ButtonContent.js.map +1 -1
  132. package/dist/components/ButtonContent/index.d.ts +1 -1
  133. package/dist/components/ButtonContent.cjs +1 -1
  134. package/dist/components/ButtonRow/ButtonRow.cjs +1 -1
  135. package/dist/components/ButtonRow/ButtonRow.cjs.map +1 -1
  136. package/dist/components/ButtonRow/ButtonRow.d.ts +2 -2
  137. package/dist/components/ButtonRow/ButtonRow.js +22 -24
  138. package/dist/components/ButtonRow/ButtonRow.js.map +1 -1
  139. package/dist/components/ButtonRow/ButtonRow.module.css.cjs +1 -1
  140. package/dist/components/ButtonRow/ButtonRow.module.css.cjs.map +1 -1
  141. package/dist/components/ButtonRow/ButtonRow.module.css.js +7 -7
  142. package/dist/components/ButtonRow/ButtonRow.module.css.js.map +1 -1
  143. package/dist/components/ButtonRow/index.d.ts +1 -1
  144. package/dist/components/ButtonRow.cjs +1 -1
  145. package/dist/components/Card/Card.cjs +1 -1
  146. package/dist/components/Card/Card.cjs.map +1 -1
  147. package/dist/components/Card/Card.d.ts +2 -2
  148. package/dist/components/Card/Card.js +10 -12
  149. package/dist/components/Card/Card.js.map +1 -1
  150. package/dist/components/Card/Card.module.css.cjs +1 -1
  151. package/dist/components/Card/Card.module.css.cjs.map +1 -1
  152. package/dist/components/Card/Card.module.css.js +8 -9
  153. package/dist/components/Card/Card.module.css.js.map +1 -1
  154. package/dist/components/Card/index.d.ts +1 -1
  155. package/dist/components/Card.cjs +1 -1
  156. package/dist/components/Carousel/Carousel.cjs +1 -1
  157. package/dist/components/Carousel/Carousel.cjs.map +1 -1
  158. package/dist/components/Carousel/Carousel.d.ts +4 -4
  159. package/dist/components/Carousel/Carousel.js +35 -40
  160. package/dist/components/Carousel/Carousel.js.map +1 -1
  161. package/dist/components/Carousel/Carousel.module.css.cjs +1 -1
  162. package/dist/components/Carousel/Carousel.module.css.cjs.map +1 -1
  163. package/dist/components/Carousel/Carousel.module.css.js +10 -10
  164. package/dist/components/Carousel/Carousel.module.css.js.map +1 -1
  165. package/dist/components/Carousel/index.d.ts +1 -1
  166. package/dist/components/Carousel.cjs +1 -1
  167. package/dist/components/CheckRow/CheckRow.cjs +1 -1
  168. package/dist/components/CheckRow/CheckRow.cjs.map +1 -1
  169. package/dist/components/CheckRow/CheckRow.d.ts +2 -2
  170. package/dist/components/CheckRow/CheckRow.js +7 -7
  171. package/dist/components/CheckRow/CheckRow.js.map +1 -1
  172. package/dist/components/CheckRow/CheckRow.module.css.cjs +1 -1
  173. package/dist/components/CheckRow/CheckRow.module.css.cjs.map +1 -1
  174. package/dist/components/CheckRow/CheckRow.module.css.js +10 -10
  175. package/dist/components/CheckRow/CheckRow.module.css.js.map +1 -1
  176. package/dist/components/CheckRow/index.d.ts +1 -1
  177. package/dist/components/CheckRow.cjs +1 -1
  178. package/dist/components/Checkbox/Checkbox.cjs +1 -1
  179. package/dist/components/Checkbox/Checkbox.cjs.map +1 -1
  180. package/dist/components/Checkbox/Checkbox.d.ts +3 -3
  181. package/dist/components/Checkbox/Checkbox.js +2 -2
  182. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  183. package/dist/components/Checkbox/Checkbox.module.css.cjs +1 -1
  184. package/dist/components/Checkbox/Checkbox.module.css.cjs.map +1 -1
  185. package/dist/components/Checkbox/Checkbox.module.css.js +1 -1
  186. package/dist/components/Checkbox/Checkbox.module.css.js.map +1 -1
  187. package/dist/components/Checkbox/index.d.ts +1 -1
  188. package/dist/components/Checkbox.cjs +1 -1
  189. package/dist/components/Chip/Chip.cjs +1 -1
  190. package/dist/components/Chip/Chip.cjs.map +1 -1
  191. package/dist/components/Chip/Chip.d.ts +2 -2
  192. package/dist/components/Chip/Chip.js +2 -2
  193. package/dist/components/Chip/Chip.js.map +1 -1
  194. package/dist/components/Chip/Chip.module.css.cjs +1 -1
  195. package/dist/components/Chip/Chip.module.css.cjs.map +1 -1
  196. package/dist/components/Chip/Chip.module.css.js +7 -7
  197. package/dist/components/Chip/Chip.module.css.js.map +1 -1
  198. package/dist/components/Chip/index.d.ts +1 -1
  199. package/dist/components/Chip.cjs +1 -1
  200. package/dist/components/Clamp/Clamp.cjs +1 -1
  201. package/dist/components/Clamp/Clamp.cjs.map +1 -1
  202. package/dist/components/Clamp/Clamp.d.ts +1 -1
  203. package/dist/components/Clamp/Clamp.js +9 -11
  204. package/dist/components/Clamp/Clamp.js.map +1 -1
  205. package/dist/components/Clamp/index.d.ts +1 -1
  206. package/dist/components/Clamp.cjs +1 -1
  207. package/dist/components/ColorPicker/ColorPicker.cjs +1 -1
  208. package/dist/components/ColorPicker/ColorPicker.cjs.map +1 -1
  209. package/dist/components/ColorPicker/ColorPicker.d.ts +6 -6
  210. package/dist/components/ColorPicker/ColorPicker.js +33 -37
  211. package/dist/components/ColorPicker/ColorPicker.js.map +1 -1
  212. package/dist/components/ColorPicker/ColorPicker.module.css.cjs +1 -1
  213. package/dist/components/ColorPicker/ColorPicker.module.css.cjs.map +1 -1
  214. package/dist/components/ColorPicker/ColorPicker.module.css.js +12 -13
  215. package/dist/components/ColorPicker/ColorPicker.module.css.js.map +1 -1
  216. package/dist/components/ColorPicker/index.d.ts +1 -1
  217. package/dist/components/ColorPicker.cjs +1 -1
  218. package/dist/components/ColumnView/ColumnView.cjs +1 -1
  219. package/dist/components/ColumnView/ColumnView.cjs.map +1 -1
  220. package/dist/components/ColumnView/ColumnView.d.ts +4 -4
  221. package/dist/components/ColumnView/ColumnView.js +26 -33
  222. package/dist/components/ColumnView/ColumnView.js.map +1 -1
  223. package/dist/components/ColumnView/ColumnView.module.css.cjs +1 -1
  224. package/dist/components/ColumnView/ColumnView.module.css.cjs.map +1 -1
  225. package/dist/components/ColumnView/ColumnView.module.css.js +22 -22
  226. package/dist/components/ColumnView/ColumnView.module.css.js.map +1 -1
  227. package/dist/components/ColumnView/index.d.ts +1 -1
  228. package/dist/components/ColumnView.cjs +1 -1
  229. package/dist/components/ComboRow/ComboRow.cjs +1 -1
  230. package/dist/components/ComboRow/ComboRow.cjs.map +1 -1
  231. package/dist/components/ComboRow/ComboRow.d.ts +2 -2
  232. package/dist/components/ComboRow/ComboRow.js +2 -4
  233. package/dist/components/ComboRow/ComboRow.js.map +1 -1
  234. package/dist/components/ComboRow/ComboRow.module.css.cjs +1 -1
  235. package/dist/components/ComboRow/ComboRow.module.css.cjs.map +1 -1
  236. package/dist/components/ComboRow/ComboRow.module.css.js +26 -27
  237. package/dist/components/ComboRow/ComboRow.module.css.js.map +1 -1
  238. package/dist/components/ComboRow/index.d.ts +1 -1
  239. package/dist/components/ComboRow.cjs +1 -1
  240. package/dist/components/ContributionGraph/ContributionGraph.cjs +1 -1
  241. package/dist/components/ContributionGraph/ContributionGraph.cjs.map +1 -1
  242. package/dist/components/ContributionGraph/ContributionGraph.d.ts +1 -1
  243. package/dist/components/ContributionGraph/ContributionGraph.js +43 -43
  244. package/dist/components/ContributionGraph/ContributionGraph.js.map +1 -1
  245. package/dist/components/ContributionGraph/index.d.ts +1 -1
  246. package/dist/components/ContributionGraph.cjs +1 -1
  247. package/dist/components/CountDownTimer/CountDownTimer.cjs +1 -1
  248. package/dist/components/CountDownTimer/CountDownTimer.cjs.map +1 -1
  249. package/dist/components/CountDownTimer/CountDownTimer.d.ts +3 -3
  250. package/dist/components/CountDownTimer/CountDownTimer.js +2 -2
  251. package/dist/components/CountDownTimer/CountDownTimer.js.map +1 -1
  252. package/dist/components/CountDownTimer/index.d.ts +1 -1
  253. package/dist/components/CountDownTimer.cjs +1 -1
  254. package/dist/components/Dialog/Dialog.cjs +1 -1
  255. package/dist/components/Dialog/Dialog.cjs.map +1 -1
  256. package/dist/components/Dialog/Dialog.d.ts +5 -5
  257. package/dist/components/Dialog/Dialog.js +2 -2
  258. package/dist/components/Dialog/Dialog.js.map +1 -1
  259. package/dist/components/Dialog/Dialog.module.css.cjs +1 -1
  260. package/dist/components/Dialog/Dialog.module.css.cjs.map +1 -1
  261. package/dist/components/Dialog/Dialog.module.css.js +13 -14
  262. package/dist/components/Dialog/Dialog.module.css.js.map +1 -1
  263. package/dist/components/Dialog/dialogUtils.cjs +1 -1
  264. package/dist/components/Dialog/dialogUtils.cjs.map +1 -1
  265. package/dist/components/Dialog/dialogUtils.js.map +1 -1
  266. package/dist/components/Dialog/index.d.ts +1 -1
  267. package/dist/components/Dialog.cjs +1 -1
  268. package/dist/components/Drawer/Drawer.cjs +1 -1
  269. package/dist/components/Drawer/Drawer.cjs.map +1 -1
  270. package/dist/components/Drawer/Drawer.d.ts +4 -4
  271. package/dist/components/Drawer/Drawer.js +2 -2
  272. package/dist/components/Drawer/Drawer.js.map +1 -1
  273. package/dist/components/Drawer/Drawer.module.css.cjs +1 -1
  274. package/dist/components/Drawer/Drawer.module.css.cjs.map +1 -1
  275. package/dist/components/Drawer/Drawer.module.css.js +14 -15
  276. package/dist/components/Drawer/Drawer.module.css.js.map +1 -1
  277. package/dist/components/Drawer/index.d.ts +1 -1
  278. package/dist/components/Drawer.cjs +1 -1
  279. package/dist/components/Dropdown/Dropdown.cjs +1 -1
  280. package/dist/components/Dropdown/Dropdown.cjs.map +1 -1
  281. package/dist/components/Dropdown/Dropdown.d.ts +3 -3
  282. package/dist/components/Dropdown/Dropdown.js +2 -2
  283. package/dist/components/Dropdown/Dropdown.js.map +1 -1
  284. package/dist/components/Dropdown/Dropdown.module.css.cjs +1 -1
  285. package/dist/components/Dropdown/Dropdown.module.css.cjs.map +1 -1
  286. package/dist/components/Dropdown/Dropdown.module.css.js +22 -23
  287. package/dist/components/Dropdown/Dropdown.module.css.js.map +1 -1
  288. package/dist/components/Dropdown/index.d.ts +1 -1
  289. package/dist/components/Dropdown.cjs +1 -1
  290. package/dist/components/EntryRow/EntryRow.cjs +1 -1
  291. package/dist/components/EntryRow/EntryRow.cjs.map +1 -1
  292. package/dist/components/EntryRow/EntryRow.d.ts +1 -1
  293. package/dist/components/EntryRow/EntryRow.js +2 -2
  294. package/dist/components/EntryRow/EntryRow.js.map +1 -1
  295. package/dist/components/EntryRow/EntryRow.module.css.cjs +1 -1
  296. package/dist/components/EntryRow/EntryRow.module.css.cjs.map +1 -1
  297. package/dist/components/EntryRow/EntryRow.module.css.js +10 -10
  298. package/dist/components/EntryRow/EntryRow.module.css.js.map +1 -1
  299. package/dist/components/EntryRow/index.d.ts +1 -1
  300. package/dist/components/EntryRow.cjs +1 -1
  301. package/dist/components/ExpanderRow/ExpanderRow.cjs +1 -1
  302. package/dist/components/ExpanderRow/ExpanderRow.cjs.map +1 -1
  303. package/dist/components/ExpanderRow/ExpanderRow.d.ts +1 -1
  304. package/dist/components/ExpanderRow/ExpanderRow.js +2 -2
  305. package/dist/components/ExpanderRow/ExpanderRow.js.map +1 -1
  306. package/dist/components/ExpanderRow/ExpanderRow.module.css.cjs +1 -1
  307. package/dist/components/ExpanderRow/ExpanderRow.module.css.cjs.map +1 -1
  308. package/dist/components/ExpanderRow/ExpanderRow.module.css.js +14 -14
  309. package/dist/components/ExpanderRow/ExpanderRow.module.css.js.map +1 -1
  310. package/dist/components/ExpanderRow/index.d.ts +1 -1
  311. package/dist/components/ExpanderRow.cjs +1 -1
  312. package/dist/components/Footer/Footer.cjs +1 -1
  313. package/dist/components/Footer/Footer.cjs.map +1 -1
  314. package/dist/components/Footer/Footer.d.ts +1 -1
  315. package/dist/components/Footer/Footer.js +22 -24
  316. package/dist/components/Footer/Footer.js.map +1 -1
  317. package/dist/components/Footer/index.d.ts +1 -1
  318. package/dist/components/Footer.cjs +1 -1
  319. package/dist/components/Frame/Frame.cjs +1 -1
  320. package/dist/components/Frame/Frame.cjs.map +1 -1
  321. package/dist/components/Frame/Frame.d.ts +1 -1
  322. package/dist/components/Frame/Frame.js +5 -7
  323. package/dist/components/Frame/Frame.js.map +1 -1
  324. package/dist/components/Frame/index.d.ts +1 -1
  325. package/dist/components/Frame.cjs +1 -1
  326. package/dist/components/GnomeProvider/GnomeContext.cjs +1 -1
  327. package/dist/components/GnomeProvider/GnomeContext.cjs.map +1 -1
  328. package/dist/components/GnomeProvider/GnomeContext.d.ts +5 -5
  329. package/dist/components/GnomeProvider/GnomeContext.js.map +1 -1
  330. package/dist/components/GnomeProvider/GnomeProvider.cjs +1 -1
  331. package/dist/components/GnomeProvider/GnomeProvider.cjs.map +1 -1
  332. package/dist/components/GnomeProvider/GnomeProvider.d.ts +1 -1
  333. package/dist/components/GnomeProvider/GnomeProvider.js +2 -2
  334. package/dist/components/GnomeProvider/GnomeProvider.js.map +1 -1
  335. package/dist/components/HeaderBar/HeaderBar.cjs +1 -1
  336. package/dist/components/HeaderBar/HeaderBar.cjs.map +1 -1
  337. package/dist/components/HeaderBar/HeaderBar.d.ts +2 -2
  338. package/dist/components/HeaderBar/HeaderBar.js +26 -28
  339. package/dist/components/HeaderBar/HeaderBar.js.map +1 -1
  340. package/dist/components/HeaderBar/index.d.ts +1 -1
  341. package/dist/components/HeaderBar.cjs +1 -1
  342. package/dist/components/Icon/Icon.cjs +1 -1
  343. package/dist/components/Icon/Icon.cjs.map +1 -1
  344. package/dist/components/Icon/Icon.d.ts +3 -3
  345. package/dist/components/Icon/Icon.js +2 -2
  346. package/dist/components/Icon/Icon.js.map +1 -1
  347. package/dist/components/Icon/index.d.ts +1 -1
  348. package/dist/components/Icon.cjs +1 -1
  349. package/dist/components/IconButton/IconButton.cjs +1 -1
  350. package/dist/components/IconButton/IconButton.cjs.map +1 -1
  351. package/dist/components/IconButton/IconButton.d.ts +2 -2
  352. package/dist/components/IconButton/IconButton.js +4 -4
  353. package/dist/components/IconButton/IconButton.js.map +1 -1
  354. package/dist/components/IconButton/index.d.ts +1 -1
  355. package/dist/components/IconButton.cjs +1 -1
  356. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.cjs +1 -1
  357. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.cjs.map +1 -1
  358. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.d.ts +3 -3
  359. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.js +10 -10
  360. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.js.map +1 -1
  361. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.module.css.cjs +1 -1
  362. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.module.css.cjs.map +1 -1
  363. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.module.css.js +10 -10
  364. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.module.css.js.map +1 -1
  365. package/dist/components/InlineViewSwitcher/InlineViewSwitcherItem.cjs +1 -1
  366. package/dist/components/InlineViewSwitcher/InlineViewSwitcherItem.cjs.map +1 -1
  367. package/dist/components/InlineViewSwitcher/InlineViewSwitcherItem.d.ts +2 -2
  368. package/dist/components/InlineViewSwitcher/InlineViewSwitcherItem.js +2 -2
  369. package/dist/components/InlineViewSwitcher/InlineViewSwitcherItem.js.map +1 -1
  370. package/dist/components/InlineViewSwitcher/index.d.ts +2 -2
  371. package/dist/components/InlineViewSwitcher.cjs +1 -1
  372. package/dist/components/Link/Link.cjs +1 -1
  373. package/dist/components/Link/Link.cjs.map +1 -1
  374. package/dist/components/Link/Link.d.ts +1 -1
  375. package/dist/components/Link/Link.js +2 -2
  376. package/dist/components/Link/Link.js.map +1 -1
  377. package/dist/components/Link/Link.module.css.cjs +1 -1
  378. package/dist/components/Link/Link.module.css.cjs.map +1 -1
  379. package/dist/components/Link/Link.module.css.js +2 -2
  380. package/dist/components/Link/Link.module.css.js.map +1 -1
  381. package/dist/components/Link/index.d.ts +1 -1
  382. package/dist/components/Link.cjs +1 -1
  383. package/dist/components/LinkedGroup/LinkedGroup.cjs +1 -1
  384. package/dist/components/LinkedGroup/LinkedGroup.cjs.map +1 -1
  385. package/dist/components/LinkedGroup/LinkedGroup.d.ts +1 -1
  386. package/dist/components/LinkedGroup/LinkedGroup.js +9 -11
  387. package/dist/components/LinkedGroup/LinkedGroup.js.map +1 -1
  388. package/dist/components/LinkedGroup/LinkedGroup.module.css.cjs +1 -1
  389. package/dist/components/LinkedGroup/LinkedGroup.module.css.cjs.map +1 -1
  390. package/dist/components/LinkedGroup/LinkedGroup.module.css.js +2 -2
  391. package/dist/components/LinkedGroup/LinkedGroup.module.css.js.map +1 -1
  392. package/dist/components/LinkedGroup/index.d.ts +1 -1
  393. package/dist/components/LinkedGroup.cjs +1 -1
  394. package/dist/components/NavigationSplitView/NavigationSplitView.cjs +1 -1
  395. package/dist/components/NavigationSplitView/NavigationSplitView.cjs.map +1 -1
  396. package/dist/components/NavigationSplitView/NavigationSplitView.d.ts +2 -2
  397. package/dist/components/NavigationSplitView/NavigationSplitView.js +2 -2
  398. package/dist/components/NavigationSplitView/NavigationSplitView.js.map +1 -1
  399. package/dist/components/NavigationSplitView/index.d.ts +1 -1
  400. package/dist/components/NavigationSplitView.cjs +1 -1
  401. package/dist/components/NavigationView/NavigationView.cjs +1 -1
  402. package/dist/components/NavigationView/NavigationView.cjs.map +1 -1
  403. package/dist/components/NavigationView/NavigationView.d.ts +4 -4
  404. package/dist/components/NavigationView/NavigationView.js +3 -4
  405. package/dist/components/NavigationView/NavigationView.js.map +1 -1
  406. package/dist/components/NavigationView/NavigationView.module.css.cjs +1 -1
  407. package/dist/components/NavigationView/NavigationView.module.css.cjs.map +1 -1
  408. package/dist/components/NavigationView/NavigationView.module.css.js +11 -12
  409. package/dist/components/NavigationView/NavigationView.module.css.js.map +1 -1
  410. package/dist/components/NavigationView/index.d.ts +2 -2
  411. package/dist/components/NavigationView.cjs +1 -1
  412. package/dist/components/OverlaySplitView/OverlaySplitView.cjs +1 -1
  413. package/dist/components/OverlaySplitView/OverlaySplitView.cjs.map +1 -1
  414. package/dist/components/OverlaySplitView/OverlaySplitView.d.ts +3 -3
  415. package/dist/components/OverlaySplitView/OverlaySplitView.js +2 -2
  416. package/dist/components/OverlaySplitView/OverlaySplitView.js.map +1 -1
  417. package/dist/components/OverlaySplitView/OverlaySplitView.module.css.cjs +1 -1
  418. package/dist/components/OverlaySplitView/OverlaySplitView.module.css.cjs.map +1 -1
  419. package/dist/components/OverlaySplitView/OverlaySplitView.module.css.js +12 -12
  420. package/dist/components/OverlaySplitView/OverlaySplitView.module.css.js.map +1 -1
  421. package/dist/components/OverlaySplitView/index.d.ts +1 -1
  422. package/dist/components/OverlaySplitView.cjs +1 -1
  423. package/dist/components/PasswordEntryRow/PasswordEntryRow.cjs +1 -1
  424. package/dist/components/PasswordEntryRow/PasswordEntryRow.cjs.map +1 -1
  425. package/dist/components/PasswordEntryRow/PasswordEntryRow.d.ts +2 -2
  426. package/dist/components/PasswordEntryRow/PasswordEntryRow.js +2 -2
  427. package/dist/components/PasswordEntryRow/PasswordEntryRow.js.map +1 -1
  428. package/dist/components/PasswordEntryRow/PasswordEntryRow.module.css.cjs +1 -1
  429. package/dist/components/PasswordEntryRow/PasswordEntryRow.module.css.cjs.map +1 -1
  430. package/dist/components/PasswordEntryRow/PasswordEntryRow.module.css.js +1 -1
  431. package/dist/components/PasswordEntryRow/PasswordEntryRow.module.css.js.map +1 -1
  432. package/dist/components/PasswordEntryRow/index.d.ts +1 -1
  433. package/dist/components/PasswordEntryRow.cjs +1 -1
  434. package/dist/components/PathBar/PathBar.cjs +1 -1
  435. package/dist/components/PathBar/PathBar.cjs.map +1 -1
  436. package/dist/components/PathBar/PathBar.d.ts +1 -1
  437. package/dist/components/PathBar/PathBar.js +48 -50
  438. package/dist/components/PathBar/PathBar.js.map +1 -1
  439. package/dist/components/PathBar/PathBar.module.css.cjs +1 -1
  440. package/dist/components/PathBar/PathBar.module.css.cjs.map +1 -1
  441. package/dist/components/PathBar/PathBar.module.css.js +7 -7
  442. package/dist/components/PathBar/PathBar.module.css.js.map +1 -1
  443. package/dist/components/PathBar/index.d.ts +1 -1
  444. package/dist/components/PathBar.cjs +1 -1
  445. package/dist/components/Popover/Popover.cjs +1 -1
  446. package/dist/components/Popover/Popover.cjs.map +1 -1
  447. package/dist/components/Popover/Popover.d.ts +3 -3
  448. package/dist/components/Popover/Popover.js +5 -5
  449. package/dist/components/Popover/Popover.js.map +1 -1
  450. package/dist/components/Popover/Popover.module.css.cjs +1 -1
  451. package/dist/components/Popover/Popover.module.css.cjs.map +1 -1
  452. package/dist/components/Popover/Popover.module.css.js +7 -7
  453. package/dist/components/Popover/Popover.module.css.js.map +1 -1
  454. package/dist/components/Popover/index.d.ts +1 -1
  455. package/dist/components/Popover.cjs +1 -1
  456. package/dist/components/PreferencesDialog/PreferencesDialog.cjs +1 -1
  457. package/dist/components/PreferencesDialog/PreferencesDialog.cjs.map +1 -1
  458. package/dist/components/PreferencesDialog/PreferencesDialog.d.ts +2 -2
  459. package/dist/components/PreferencesDialog/PreferencesDialog.js +2 -3
  460. package/dist/components/PreferencesDialog/PreferencesDialog.js.map +1 -1
  461. package/dist/components/PreferencesDialog/PreferencesDialog.module.css.cjs +1 -1
  462. package/dist/components/PreferencesDialog/PreferencesDialog.module.css.cjs.map +1 -1
  463. package/dist/components/PreferencesDialog/PreferencesDialog.module.css.js +20 -21
  464. package/dist/components/PreferencesDialog/PreferencesDialog.module.css.js.map +1 -1
  465. package/dist/components/PreferencesDialog/index.d.ts +1 -1
  466. package/dist/components/PreferencesDialog.cjs +1 -1
  467. package/dist/components/PreferencesGroup/PreferencesGroup.cjs +1 -1
  468. package/dist/components/PreferencesGroup/PreferencesGroup.cjs.map +1 -1
  469. package/dist/components/PreferencesGroup/PreferencesGroup.d.ts +1 -1
  470. package/dist/components/PreferencesGroup/PreferencesGroup.js +2 -2
  471. package/dist/components/PreferencesGroup/PreferencesGroup.js.map +1 -1
  472. package/dist/components/PreferencesGroup/index.d.ts +1 -1
  473. package/dist/components/PreferencesGroup.cjs +1 -1
  474. package/dist/components/PreferencesPage/PreferencesPage.cjs +1 -1
  475. package/dist/components/PreferencesPage/PreferencesPage.cjs.map +1 -1
  476. package/dist/components/PreferencesPage/PreferencesPage.d.ts +1 -1
  477. package/dist/components/PreferencesPage/PreferencesPage.js +9 -11
  478. package/dist/components/PreferencesPage/PreferencesPage.js.map +1 -1
  479. package/dist/components/PreferencesPage/index.d.ts +1 -1
  480. package/dist/components/PreferencesPage.cjs +1 -1
  481. package/dist/components/ProgressBar/ProgressBar.cjs +1 -1
  482. package/dist/components/ProgressBar/ProgressBar.cjs.map +1 -1
  483. package/dist/components/ProgressBar/ProgressBar.d.ts +4 -4
  484. package/dist/components/ProgressBar/ProgressBar.js +2 -2
  485. package/dist/components/ProgressBar/ProgressBar.js.map +1 -1
  486. package/dist/components/ProgressBar/ProgressBar.module.css.cjs +1 -1
  487. package/dist/components/ProgressBar/ProgressBar.module.css.cjs.map +1 -1
  488. package/dist/components/ProgressBar/ProgressBar.module.css.js +8 -8
  489. package/dist/components/ProgressBar/ProgressBar.module.css.js.map +1 -1
  490. package/dist/components/ProgressBar/index.d.ts +1 -1
  491. package/dist/components/ProgressBar.cjs +1 -1
  492. package/dist/components/RadioButton/RadioButton.cjs +1 -1
  493. package/dist/components/RadioButton/RadioButton.cjs.map +1 -1
  494. package/dist/components/RadioButton/RadioButton.d.ts +3 -3
  495. package/dist/components/RadioButton/RadioButton.js +5 -7
  496. package/dist/components/RadioButton/RadioButton.js.map +1 -1
  497. package/dist/components/RadioButton/RadioButton.module.css.cjs +1 -1
  498. package/dist/components/RadioButton/RadioButton.module.css.cjs.map +1 -1
  499. package/dist/components/RadioButton/RadioButton.module.css.js +1 -1
  500. package/dist/components/RadioButton/RadioButton.module.css.js.map +1 -1
  501. package/dist/components/RadioButton/index.d.ts +1 -1
  502. package/dist/components/RadioButton.cjs +1 -1
  503. package/dist/components/SearchBar/SearchBar.cjs +1 -1
  504. package/dist/components/SearchBar/SearchBar.cjs.map +1 -1
  505. package/dist/components/SearchBar/SearchBar.d.ts +2 -2
  506. package/dist/components/SearchBar/SearchBar.js +3 -5
  507. package/dist/components/SearchBar/SearchBar.js.map +1 -1
  508. package/dist/components/SearchBar/SearchBar.module.css.cjs +1 -1
  509. package/dist/components/SearchBar/SearchBar.module.css.cjs.map +1 -1
  510. package/dist/components/SearchBar/SearchBar.module.css.js +13 -13
  511. package/dist/components/SearchBar/SearchBar.module.css.js.map +1 -1
  512. package/dist/components/SearchBar/index.d.ts +1 -1
  513. package/dist/components/SearchBar.cjs +1 -1
  514. package/dist/components/SegmentedBar/SegmentedBar.cjs +1 -1
  515. package/dist/components/SegmentedBar/SegmentedBar.cjs.map +1 -1
  516. package/dist/components/SegmentedBar/SegmentedBar.d.ts +1 -1
  517. package/dist/components/SegmentedBar/SegmentedBar.js.map +1 -1
  518. package/dist/components/SegmentedBar/SegmentedBar.module.css.cjs +1 -1
  519. package/dist/components/SegmentedBar/SegmentedBar.module.css.cjs.map +1 -1
  520. package/dist/components/SegmentedBar/SegmentedBar.module.css.js +12 -12
  521. package/dist/components/SegmentedBar/SegmentedBar.module.css.js.map +1 -1
  522. package/dist/components/SegmentedBar/index.d.ts +1 -1
  523. package/dist/components/SegmentedBar.cjs +1 -1
  524. package/dist/components/Separator/Separator.cjs +1 -1
  525. package/dist/components/Separator/Separator.cjs.map +1 -1
  526. package/dist/components/Separator/Separator.d.ts +2 -2
  527. package/dist/components/Separator/Separator.js +2 -2
  528. package/dist/components/Separator/Separator.js.map +1 -1
  529. package/dist/components/Separator/index.d.ts +1 -1
  530. package/dist/components/Separator.cjs +1 -1
  531. package/dist/components/ShortcutLabel/ShortcutLabel.cjs +1 -1
  532. package/dist/components/ShortcutLabel/ShortcutLabel.cjs.map +1 -1
  533. package/dist/components/ShortcutLabel/ShortcutLabel.d.ts +1 -1
  534. package/dist/components/ShortcutLabel/ShortcutLabel.js +2 -3
  535. package/dist/components/ShortcutLabel/ShortcutLabel.js.map +1 -1
  536. package/dist/components/ShortcutLabel/index.d.ts +1 -1
  537. package/dist/components/ShortcutLabel.cjs +1 -1
  538. package/dist/components/ShortcutsDialog/ShortcutsDialog.cjs +1 -1
  539. package/dist/components/ShortcutsDialog/ShortcutsDialog.cjs.map +1 -1
  540. package/dist/components/ShortcutsDialog/ShortcutsDialog.d.ts +1 -1
  541. package/dist/components/ShortcutsDialog/ShortcutsDialog.js +2 -4
  542. package/dist/components/ShortcutsDialog/ShortcutsDialog.js.map +1 -1
  543. package/dist/components/ShortcutsDialog/ShortcutsDialog.module.css.cjs +1 -1
  544. package/dist/components/ShortcutsDialog/ShortcutsDialog.module.css.cjs.map +1 -1
  545. package/dist/components/ShortcutsDialog/ShortcutsDialog.module.css.js +23 -24
  546. package/dist/components/ShortcutsDialog/ShortcutsDialog.module.css.js.map +1 -1
  547. package/dist/components/ShortcutsDialog/index.d.ts +1 -1
  548. package/dist/components/ShortcutsDialog.cjs +1 -1
  549. package/dist/components/Sidebar/Sidebar.cjs +1 -1
  550. package/dist/components/Sidebar/Sidebar.cjs.map +1 -1
  551. package/dist/components/Sidebar/Sidebar.d.ts +3 -3
  552. package/dist/components/Sidebar/Sidebar.js +2 -3
  553. package/dist/components/Sidebar/Sidebar.js.map +1 -1
  554. package/dist/components/Sidebar/Sidebar.module.css.cjs +1 -1
  555. package/dist/components/Sidebar/Sidebar.module.css.cjs.map +1 -1
  556. package/dist/components/Sidebar/Sidebar.module.css.js +34 -35
  557. package/dist/components/Sidebar/Sidebar.module.css.js.map +1 -1
  558. package/dist/components/Sidebar/SidebarItem.cjs +1 -1
  559. package/dist/components/Sidebar/SidebarItem.cjs.map +1 -1
  560. package/dist/components/Sidebar/SidebarItem.d.ts +2 -2
  561. package/dist/components/Sidebar/SidebarItem.js +16 -16
  562. package/dist/components/Sidebar/SidebarItem.js.map +1 -1
  563. package/dist/components/Sidebar/SidebarSection.cjs +1 -1
  564. package/dist/components/Sidebar/SidebarSection.cjs.map +1 -1
  565. package/dist/components/Sidebar/SidebarSection.d.ts +1 -1
  566. package/dist/components/Sidebar/SidebarSection.js +0 -1
  567. package/dist/components/Sidebar/SidebarSection.js.map +1 -1
  568. package/dist/components/Sidebar/index.d.ts +4 -4
  569. package/dist/components/Sidebar.cjs +1 -1
  570. package/dist/components/Sidebar.js +3 -3
  571. package/dist/components/Skeleton/Skeleton.cjs +1 -1
  572. package/dist/components/Skeleton/Skeleton.cjs.map +1 -1
  573. package/dist/components/Skeleton/Skeleton.d.ts +2 -2
  574. package/dist/components/Skeleton/Skeleton.js +9 -10
  575. package/dist/components/Skeleton/Skeleton.js.map +1 -1
  576. package/dist/components/Skeleton/Skeleton.module.css.cjs +1 -1
  577. package/dist/components/Skeleton/Skeleton.module.css.cjs.map +1 -1
  578. package/dist/components/Skeleton/Skeleton.module.css.js +7 -7
  579. package/dist/components/Skeleton/Skeleton.module.css.js.map +1 -1
  580. package/dist/components/Skeleton/index.d.ts +1 -1
  581. package/dist/components/Skeleton.cjs +1 -1
  582. package/dist/components/Slider/Slider.cjs +1 -1
  583. package/dist/components/Slider/Slider.cjs.map +1 -1
  584. package/dist/components/Slider/Slider.d.ts +5 -5
  585. package/dist/components/Slider/Slider.js +2 -2
  586. package/dist/components/Slider/Slider.js.map +1 -1
  587. package/dist/components/Slider/Slider.module.css.cjs +1 -1
  588. package/dist/components/Slider/Slider.module.css.cjs.map +1 -1
  589. package/dist/components/Slider/Slider.module.css.js +9 -9
  590. package/dist/components/Slider/Slider.module.css.js.map +1 -1
  591. package/dist/components/Slider/index.d.ts +1 -1
  592. package/dist/components/Slider.cjs +1 -1
  593. package/dist/components/SpinButton/SpinButton.cjs +1 -1
  594. package/dist/components/SpinButton/SpinButton.cjs.map +1 -1
  595. package/dist/components/SpinButton/SpinButton.d.ts +4 -4
  596. package/dist/components/SpinButton/SpinButton.js +2 -2
  597. package/dist/components/SpinButton/SpinButton.js.map +1 -1
  598. package/dist/components/SpinButton/SpinButton.module.css.cjs +1 -1
  599. package/dist/components/SpinButton/SpinButton.module.css.cjs.map +1 -1
  600. package/dist/components/SpinButton/SpinButton.module.css.js +4 -4
  601. package/dist/components/SpinButton/SpinButton.module.css.js.map +1 -1
  602. package/dist/components/SpinButton/index.d.ts +1 -1
  603. package/dist/components/SpinButton.cjs +1 -1
  604. package/dist/components/SpinRow/SpinRow.cjs +1 -1
  605. package/dist/components/SpinRow/SpinRow.cjs.map +1 -1
  606. package/dist/components/SpinRow/SpinRow.d.ts +2 -2
  607. package/dist/components/SpinRow/SpinRow.js +2 -2
  608. package/dist/components/SpinRow/SpinRow.js.map +1 -1
  609. package/dist/components/SpinRow/SpinRow.module.css.cjs +1 -1
  610. package/dist/components/SpinRow/SpinRow.module.css.cjs.map +1 -1
  611. package/dist/components/SpinRow/SpinRow.module.css.js +9 -9
  612. package/dist/components/SpinRow/SpinRow.module.css.js.map +1 -1
  613. package/dist/components/SpinRow/index.d.ts +1 -1
  614. package/dist/components/SpinRow.cjs +1 -1
  615. package/dist/components/Spinner/Spinner.cjs +1 -1
  616. package/dist/components/Spinner/Spinner.cjs.map +1 -1
  617. package/dist/components/Spinner/Spinner.d.ts +2 -2
  618. package/dist/components/Spinner/Spinner.js +2 -2
  619. package/dist/components/Spinner/Spinner.js.map +1 -1
  620. package/dist/components/Spinner/Spinner.module.css.cjs +1 -1
  621. package/dist/components/Spinner/Spinner.module.css.cjs.map +1 -1
  622. package/dist/components/Spinner/Spinner.module.css.js +5 -5
  623. package/dist/components/Spinner/Spinner.module.css.js.map +1 -1
  624. package/dist/components/Spinner/index.d.ts +1 -1
  625. package/dist/components/Spinner.cjs +1 -1
  626. package/dist/components/SplitButton/SplitButton.cjs +1 -1
  627. package/dist/components/SplitButton/SplitButton.cjs.map +1 -1
  628. package/dist/components/SplitButton/SplitButton.d.ts +3 -3
  629. package/dist/components/SplitButton/SplitButton.js +2 -2
  630. package/dist/components/SplitButton/SplitButton.js.map +1 -1
  631. package/dist/components/SplitButton/SplitButton.module.css.cjs +1 -1
  632. package/dist/components/SplitButton/SplitButton.module.css.cjs.map +1 -1
  633. package/dist/components/SplitButton/SplitButton.module.css.js +10 -10
  634. package/dist/components/SplitButton/SplitButton.module.css.js.map +1 -1
  635. package/dist/components/SplitButton/index.d.ts +1 -1
  636. package/dist/components/SplitButton.cjs +1 -1
  637. package/dist/components/StatusBadge/StatusBadge.cjs +1 -1
  638. package/dist/components/StatusBadge/StatusBadge.cjs.map +1 -1
  639. package/dist/components/StatusBadge/StatusBadge.d.ts +2 -2
  640. package/dist/components/StatusBadge/StatusBadge.js +9 -11
  641. package/dist/components/StatusBadge/StatusBadge.js.map +1 -1
  642. package/dist/components/StatusBadge/index.d.ts +1 -1
  643. package/dist/components/StatusBadge.cjs +1 -1
  644. package/dist/components/StatusPage/StatusPage.cjs +1 -1
  645. package/dist/components/StatusPage/StatusPage.cjs.map +1 -1
  646. package/dist/components/StatusPage/StatusPage.d.ts +2 -2
  647. package/dist/components/StatusPage/StatusPage.js +2 -2
  648. package/dist/components/StatusPage/StatusPage.js.map +1 -1
  649. package/dist/components/StatusPage/index.d.ts +1 -1
  650. package/dist/components/StatusPage.cjs +1 -1
  651. package/dist/components/Switch/Switch.cjs +1 -1
  652. package/dist/components/Switch/Switch.cjs.map +1 -1
  653. package/dist/components/Switch/Switch.d.ts +3 -3
  654. package/dist/components/Switch/Switch.js +6 -8
  655. package/dist/components/Switch/Switch.js.map +1 -1
  656. package/dist/components/Switch/Switch.module.css.cjs +1 -1
  657. package/dist/components/Switch/Switch.module.css.cjs.map +1 -1
  658. package/dist/components/Switch/Switch.module.css.js +1 -1
  659. package/dist/components/Switch/Switch.module.css.js.map +1 -1
  660. package/dist/components/Switch/index.d.ts +1 -1
  661. package/dist/components/Switch.cjs +1 -1
  662. package/dist/components/SwitchRow/SwitchRow.cjs +1 -1
  663. package/dist/components/SwitchRow/SwitchRow.cjs.map +1 -1
  664. package/dist/components/SwitchRow/SwitchRow.d.ts +2 -2
  665. package/dist/components/SwitchRow/SwitchRow.js +7 -7
  666. package/dist/components/SwitchRow/SwitchRow.js.map +1 -1
  667. package/dist/components/SwitchRow/SwitchRow.module.css.cjs +1 -1
  668. package/dist/components/SwitchRow/SwitchRow.module.css.cjs.map +1 -1
  669. package/dist/components/SwitchRow/SwitchRow.module.css.js +9 -9
  670. package/dist/components/SwitchRow/SwitchRow.module.css.js.map +1 -1
  671. package/dist/components/SwitchRow/index.d.ts +1 -1
  672. package/dist/components/SwitchRow.cjs +1 -1
  673. package/dist/components/Tabs/TabBar.cjs +1 -1
  674. package/dist/components/Tabs/TabBar.cjs.map +1 -1
  675. package/dist/components/Tabs/TabBar.d.ts +2 -2
  676. package/dist/components/Tabs/TabBar.js +10 -10
  677. package/dist/components/Tabs/TabBar.js.map +1 -1
  678. package/dist/components/Tabs/TabItem.cjs +1 -1
  679. package/dist/components/Tabs/TabItem.cjs.map +1 -1
  680. package/dist/components/Tabs/TabItem.d.ts +1 -1
  681. package/dist/components/Tabs/TabItem.js.map +1 -1
  682. package/dist/components/Tabs/TabPanel.cjs +1 -1
  683. package/dist/components/Tabs/TabPanel.cjs.map +1 -1
  684. package/dist/components/Tabs/TabPanel.d.ts +1 -1
  685. package/dist/components/Tabs/TabPanel.js +8 -11
  686. package/dist/components/Tabs/TabPanel.js.map +1 -1
  687. package/dist/components/Tabs/Tabs.module.css.cjs +1 -1
  688. package/dist/components/Tabs/Tabs.module.css.cjs.map +1 -1
  689. package/dist/components/Tabs/Tabs.module.css.js +10 -10
  690. package/dist/components/Tabs/Tabs.module.css.js.map +1 -1
  691. package/dist/components/Tabs/index.d.ts +3 -3
  692. package/dist/components/Tabs.cjs +1 -1
  693. package/dist/components/TerminalView/TerminalView.cjs +1 -1
  694. package/dist/components/TerminalView/TerminalView.cjs.map +1 -1
  695. package/dist/components/TerminalView/TerminalView.d.ts +2 -2
  696. package/dist/components/TerminalView/TerminalView.js +3 -3
  697. package/dist/components/TerminalView/TerminalView.js.map +1 -1
  698. package/dist/components/TerminalView/index.d.ts +1 -1
  699. package/dist/components/TerminalView.cjs +1 -1
  700. package/dist/components/Text/Text.cjs +1 -1
  701. package/dist/components/Text/Text.cjs.map +1 -1
  702. package/dist/components/Text/Text.d.ts +3 -3
  703. package/dist/components/Text/Text.js +10 -13
  704. package/dist/components/Text/Text.js.map +1 -1
  705. package/dist/components/Text/Text.module.css.cjs +1 -1
  706. package/dist/components/Text/Text.module.css.js +9 -10
  707. package/dist/components/Text/index.d.ts +1 -1
  708. package/dist/components/Text.cjs +1 -1
  709. package/dist/components/TextField/TextField.cjs +1 -1
  710. package/dist/components/TextField/TextField.cjs.map +1 -1
  711. package/dist/components/TextField/TextField.d.ts +2 -2
  712. package/dist/components/TextField/TextField.js +2 -2
  713. package/dist/components/TextField/TextField.js.map +1 -1
  714. package/dist/components/TextField/TextField.module.css.cjs +1 -1
  715. package/dist/components/TextField/TextField.module.css.cjs.map +1 -1
  716. package/dist/components/TextField/TextField.module.css.js +7 -7
  717. package/dist/components/TextField/TextField.module.css.js.map +1 -1
  718. package/dist/components/TextField/index.d.ts +1 -1
  719. package/dist/components/TextField.cjs +1 -1
  720. package/dist/components/Timeline/Timeline.cjs +1 -1
  721. package/dist/components/Timeline/Timeline.cjs.map +1 -1
  722. package/dist/components/Timeline/Timeline.d.ts +3 -3
  723. package/dist/components/Timeline/Timeline.js +2 -2
  724. package/dist/components/Timeline/Timeline.js.map +1 -1
  725. package/dist/components/Timeline/index.d.ts +1 -1
  726. package/dist/components/Timeline.cjs +1 -1
  727. package/dist/components/Toast/Toast.cjs +1 -1
  728. package/dist/components/Toast/Toast.cjs.map +1 -1
  729. package/dist/components/Toast/Toast.d.ts +2 -2
  730. package/dist/components/Toast/Toast.js +40 -36
  731. package/dist/components/Toast/Toast.js.map +1 -1
  732. package/dist/components/Toast/Toast.module.css.cjs +1 -1
  733. package/dist/components/Toast/Toast.module.css.cjs.map +1 -1
  734. package/dist/components/Toast/Toast.module.css.js +11 -12
  735. package/dist/components/Toast/Toast.module.css.js.map +1 -1
  736. package/dist/components/Toast/Toaster.cjs +1 -1
  737. package/dist/components/Toast/Toaster.cjs.map +1 -1
  738. package/dist/components/Toast/Toaster.d.ts +2 -2
  739. package/dist/components/Toast/Toaster.js +2 -2
  740. package/dist/components/Toast/Toaster.js.map +1 -1
  741. package/dist/components/Toast/index.d.ts +2 -2
  742. package/dist/components/Toast.cjs +1 -1
  743. package/dist/components/ToggleGroup/ToggleGroup.cjs +1 -1
  744. package/dist/components/ToggleGroup/ToggleGroup.cjs.map +1 -1
  745. package/dist/components/ToggleGroup/ToggleGroup.d.ts +2 -2
  746. package/dist/components/ToggleGroup/ToggleGroup.js +10 -10
  747. package/dist/components/ToggleGroup/ToggleGroup.js.map +1 -1
  748. package/dist/components/ToggleGroup/ToggleGroup.module.css.cjs +1 -1
  749. package/dist/components/ToggleGroup/ToggleGroup.module.css.cjs.map +1 -1
  750. package/dist/components/ToggleGroup/ToggleGroup.module.css.js +6 -6
  751. package/dist/components/ToggleGroup/ToggleGroup.module.css.js.map +1 -1
  752. package/dist/components/ToggleGroup/ToggleGroupItem.cjs +1 -1
  753. package/dist/components/ToggleGroup/ToggleGroupItem.cjs.map +1 -1
  754. package/dist/components/ToggleGroup/ToggleGroupItem.d.ts +2 -2
  755. package/dist/components/ToggleGroup/ToggleGroupItem.js +2 -2
  756. package/dist/components/ToggleGroup/ToggleGroupItem.js.map +1 -1
  757. package/dist/components/ToggleGroup/index.d.ts +2 -2
  758. package/dist/components/ToggleGroup.cjs +1 -1
  759. package/dist/components/Toolbar/Spacer.cjs +1 -1
  760. package/dist/components/Toolbar/Spacer.cjs.map +1 -1
  761. package/dist/components/Toolbar/Spacer.d.ts +2 -3
  762. package/dist/components/Toolbar/Spacer.js +5 -7
  763. package/dist/components/Toolbar/Spacer.js.map +1 -1
  764. package/dist/components/Toolbar/Toolbar.cjs +1 -1
  765. package/dist/components/Toolbar/Toolbar.cjs.map +1 -1
  766. package/dist/components/Toolbar/Toolbar.d.ts +1 -1
  767. package/dist/components/Toolbar/Toolbar.js +5 -7
  768. package/dist/components/Toolbar/Toolbar.js.map +1 -1
  769. package/dist/components/Toolbar/index.d.ts +3 -3
  770. package/dist/components/Toolbar.cjs +1 -1
  771. package/dist/components/Toolbar.js +3 -3
  772. package/dist/components/ToolbarView/ToolbarView.cjs +1 -1
  773. package/dist/components/ToolbarView/ToolbarView.cjs.map +1 -1
  774. package/dist/components/ToolbarView/ToolbarView.d.ts +1 -1
  775. package/dist/components/ToolbarView/ToolbarView.js +18 -20
  776. package/dist/components/ToolbarView/ToolbarView.js.map +1 -1
  777. package/dist/components/ToolbarView/index.d.ts +1 -1
  778. package/dist/components/ToolbarView.cjs +1 -1
  779. package/dist/components/Tooltip/Tooltip.cjs +1 -1
  780. package/dist/components/Tooltip/Tooltip.cjs.map +1 -1
  781. package/dist/components/Tooltip/Tooltip.d.ts +3 -3
  782. package/dist/components/Tooltip/Tooltip.js +6 -6
  783. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  784. package/dist/components/Tooltip/Tooltip.module.css.cjs +1 -1
  785. package/dist/components/Tooltip/Tooltip.module.css.cjs.map +1 -1
  786. package/dist/components/Tooltip/Tooltip.module.css.js +6 -6
  787. package/dist/components/Tooltip/Tooltip.module.css.js.map +1 -1
  788. package/dist/components/Tooltip/index.d.ts +1 -1
  789. package/dist/components/Tooltip.cjs +1 -1
  790. package/dist/components/ViewSwitcher/ViewSwitcher.cjs +1 -1
  791. package/dist/components/ViewSwitcher/ViewSwitcher.cjs.map +1 -1
  792. package/dist/components/ViewSwitcher/ViewSwitcher.d.ts +2 -2
  793. package/dist/components/ViewSwitcher/ViewSwitcher.js +10 -10
  794. package/dist/components/ViewSwitcher/ViewSwitcher.js.map +1 -1
  795. package/dist/components/ViewSwitcher/ViewSwitcher.module.css.cjs +1 -1
  796. package/dist/components/ViewSwitcher/ViewSwitcher.module.css.cjs.map +1 -1
  797. package/dist/components/ViewSwitcher/ViewSwitcher.module.css.js +5 -5
  798. package/dist/components/ViewSwitcher/ViewSwitcher.module.css.js.map +1 -1
  799. package/dist/components/ViewSwitcher/ViewSwitcherItem.cjs +1 -1
  800. package/dist/components/ViewSwitcher/ViewSwitcherItem.cjs.map +1 -1
  801. package/dist/components/ViewSwitcher/ViewSwitcherItem.d.ts +2 -2
  802. package/dist/components/ViewSwitcher/ViewSwitcherItem.js +24 -26
  803. package/dist/components/ViewSwitcher/ViewSwitcherItem.js.map +1 -1
  804. package/dist/components/ViewSwitcher/index.d.ts +2 -2
  805. package/dist/components/ViewSwitcher.cjs +1 -1
  806. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.cjs +1 -1
  807. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.cjs.map +1 -1
  808. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.d.ts +1 -1
  809. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.js +7 -9
  810. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.js.map +1 -1
  811. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.module.css.cjs +1 -1
  812. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.module.css.cjs.map +1 -1
  813. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.module.css.js +1 -1
  814. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.module.css.js.map +1 -1
  815. package/dist/components/ViewSwitcherBar/index.d.ts +1 -1
  816. package/dist/components/ViewSwitcherBar.cjs +1 -1
  817. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.cjs +1 -1
  818. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.cjs.map +1 -1
  819. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.d.ts +2 -2
  820. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.js +10 -10
  821. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.js.map +1 -1
  822. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.module.css.cjs +1 -1
  823. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.module.css.cjs.map +1 -1
  824. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.module.css.js +14 -14
  825. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.module.css.js.map +1 -1
  826. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebarItem.cjs +1 -1
  827. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebarItem.cjs.map +1 -1
  828. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebarItem.d.ts +2 -2
  829. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebarItem.js +2 -2
  830. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebarItem.js.map +1 -1
  831. package/dist/components/ViewSwitcherSidebar/index.d.ts +2 -2
  832. package/dist/components/ViewSwitcherSidebar.cjs +1 -1
  833. package/dist/components/WindowTitle/WindowTitle.cjs +1 -1
  834. package/dist/components/WindowTitle/WindowTitle.cjs.map +1 -1
  835. package/dist/components/WindowTitle/WindowTitle.d.ts +1 -1
  836. package/dist/components/WindowTitle/WindowTitle.js +11 -13
  837. package/dist/components/WindowTitle/WindowTitle.js.map +1 -1
  838. package/dist/components/WindowTitle/index.d.ts +1 -1
  839. package/dist/components/WindowTitle.cjs +1 -1
  840. package/dist/components/WrapBox/WrapBox.cjs +1 -1
  841. package/dist/components/WrapBox/WrapBox.cjs.map +1 -1
  842. package/dist/components/WrapBox/WrapBox.d.ts +3 -3
  843. package/dist/components/WrapBox/WrapBox.js +5 -5
  844. package/dist/components/WrapBox/WrapBox.js.map +1 -1
  845. package/dist/components/WrapBox/index.d.ts +1 -1
  846. package/dist/components/WrapBox.cjs +1 -1
  847. package/dist/hooks/index.d.ts +3 -3
  848. package/dist/hooks/useBreakpoint.cjs +1 -1
  849. package/dist/hooks/useBreakpoint.cjs.map +1 -1
  850. package/dist/hooks/useBreakpoint.js +12 -12
  851. package/dist/hooks/useBreakpoint.js.map +1 -1
  852. package/dist/hooks.cjs +1 -1
  853. package/dist/index.cjs +1 -1
  854. package/dist/index.d.ts +153 -153
  855. package/dist/index.js +5 -5
  856. package/dist/style.css +1 -1
  857. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarSection.js","names":[],"sources":["../../../src/components/Sidebar/SidebarSection.tsx"],"sourcesContent":["import {\n forwardRef,\n useImperativeHandle,\n useState,\n useContext,\n useId,\n isValidElement,\n Children,\n type HTMLAttributes,\n type ReactNode,\n} from \"react\";\nimport type { IconDefinition } from \"@gnome-ui/icons\";\nimport { PanDown, PanUp } from \"@gnome-ui/icons\";\nimport { Icon } from \"../Icon\";\nimport { useSidebarCollapsed, SidebarFilterContext } from \"./Sidebar\";\nimport styles from \"./Sidebar.module.css\";\n\n// ─── Filter helper ────────────────────────────────────────────────────────────\n\nfunction countMatchingItems(children: ReactNode, filter: string): number {\n let count = 0;\n Children.forEach(children, (child) => {\n if (!isValidElement(child)) return;\n const props = child.props as Record<string, unknown>;\n if (typeof props.label === \"string\") {\n if (props.label.toLowerCase().includes(filter.toLowerCase())) count++;\n } else if (props.children) {\n count += countMatchingItems(props.children as ReactNode, filter);\n }\n });\n return count;\n}\n\n// ─── Handle ───────────────────────────────────────────────────────────────────\n\nexport interface SidebarSectionHandle {\n expand: () => void;\n collapse: () => void;\n toggle: () => void;\n}\n\n// ─── Props ────────────────────────────────────────────────────────────────────\n\nexport interface SidebarSectionProps extends HTMLAttributes<HTMLElement> {\n /**\n * Section heading. Rendered in small caps above the items.\n * Omit for an untitled section (e.g. the first group in a sidebar).\n */\n title?: string;\n /** Icon rendered left of the title. Same type as `SidebarItem.icon`. */\n icon?: IconDefinition;\n /** Whether the section body can be toggled open/closed. Defaults to `false`. */\n collapsible?: boolean;\n /** Initial open state when `collapsible` is true. Defaults to `true`. */\n defaultOpen?: boolean;\n /** Controlled open state. */\n open?: boolean;\n /** Called when open state changes. */\n onOpenChange?: (open: boolean) => void;\n children?: ReactNode;\n}\n\n// ─── Component ────────────────────────────────────────────────────────────────\n\n/**\n * Named group of `SidebarItem` entries inside a `Sidebar`.\n *\n * Sections are separated by a thin divider. The title and icon are optional.\n * When `collapsible` is true the body can be toggled via the header button or\n * imperatively via a `ref` (`expand`, `collapse`, `toggle`).\n *\n * In rail (icon-only) mode the body is always visible regardless of open state.\n * When a sidebar filter is active and no children match, the section is hidden.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.Sidebar.html\n */\nexport const SidebarSection = forwardRef<SidebarSectionHandle, SidebarSectionProps>(\n function SidebarSection(\n {\n title,\n icon,\n collapsible = false,\n defaultOpen = true,\n open: controlledOpen,\n onOpenChange,\n children,\n className,\n ...props\n },\n ref,\n ) {\n const [internalOpen, setInternalOpen] = useState(defaultOpen);\n const isControlled = controlledOpen !== undefined;\n const open = isControlled ? controlledOpen : internalOpen;\n\n const sidebarCollapsed = useSidebarCollapsed();\n const filterValue = useContext(SidebarFilterContext);\n const bodyId = useId();\n\n const setAndNotify = (next: boolean) => {\n if (!isControlled) setInternalOpen(next);\n onOpenChange?.(next);\n };\n\n useImperativeHandle(ref, () => ({\n expand: () => setAndNotify(true),\n collapse: () => setAndNotify(false),\n toggle: () => setAndNotify(!open),\n }));\n\n // Hide section entirely when filter is active and no children match\n const hasVisibleChildren =\n filterValue.length === 0 || countMatchingItems(children, filterValue) > 0;\n\n if (!hasVisibleChildren) return null;\n\n // In rail mode the body is always visible\n const isOpen = sidebarCollapsed ? true : open;\n\n const showHeader = !!(title || icon || (collapsible && !sidebarCollapsed));\n\n return (\n <section\n className={[styles.section, className].filter(Boolean).join(\" \")}\n {...props}\n >\n {showHeader && (\n collapsible && !sidebarCollapsed ? (\n <button\n type=\"button\"\n className={styles.sectionHeader}\n onClick={() => setAndNotify(!open)}\n aria-expanded={open}\n aria-controls={bodyId}\n >\n {icon && (\n <span className={styles.sectionHeaderIcon}>\n <Icon icon={icon} size=\"sm\" aria-hidden />\n </span>\n )}\n {title && <span className={styles.sectionTitle}>{title}</span>}\n <span className={styles.sectionChevron}>\n <Icon icon={open ? PanUp : PanDown} size=\"sm\" aria-hidden />\n </span>\n </button>\n ) : (\n <div className={styles.sectionHeader}>\n {icon && (\n <span className={styles.sectionHeaderIcon}>\n <Icon icon={icon} size=\"sm\" aria-hidden />\n </span>\n )}\n {title && <span className={styles.sectionTitle}>{title}</span>}\n </div>\n )\n )}\n\n <div\n id={bodyId}\n className={[\n styles.sectionBody,\n !isOpen ? styles.sectionBodyCollapsed : null,\n ]\n .filter(Boolean)\n .join(\" \")}\n aria-hidden={!isOpen || undefined}\n >\n <div className={styles.sectionBodyInner}>\n <ul role=\"list\" className={styles.list}>\n {children}\n </ul>\n </div>\n </div>\n </section>\n );\n },\n);\n"],"mappings":";;;;;;;AAmBA,SAAS,EAAmB,GAAqB,GAAwB;CACvE,IAAI,IAAQ;AAUZ,QATA,EAAS,QAAQ,IAAW,MAAU;AACpC,MAAI,CAAC,EAAe,EAAM,CAAE;EAC5B,IAAM,IAAQ,EAAM;AACpB,EAAI,OAAO,EAAM,SAAU,WACrB,EAAM,MAAM,aAAa,CAAC,SAAS,EAAO,aAAa,CAAC,IAAE,MACrD,EAAM,aACf,KAAS,EAAmB,EAAM,UAAuB,EAAO;GAElE,EACK;;AA8CT,IAAa,IAAiB,EAC5B,SACE,EACE,UACA,SACA,iBAAc,IACd,iBAAc,IACd,MAAM,GACN,iBACA,aACA,cACA,GAAG,KAEL,GACA;CACA,IAAM,CAAC,GAAc,KAAmB,EAAS,EAAY,EACvD,IAAe,MAAmB,KAAA,GAClC,IAAO,IAAe,IAAiB,GAEvC,IAAmB,GAAqB,EACxC,IAAc,EAAW,EAAqB,EAC9C,IAAS,GAAO,EAEhB,KAAgB,MAAkB;AAEtC,EADK,KAAc,EAAgB,EAAK,EACxC,IAAe,EAAK;;AAatB,KAVA,EAAoB,UAAY;EAC9B,cAAc,EAAa,GAAK;EAChC,gBAAgB,EAAa,GAAM;EACnC,cAAc,EAAa,CAAC,EAAK;EAClC,EAAE,EAMC,EAFF,EAAY,WAAW,KAAK,EAAmB,GAAU,EAAY,GAAG,GAEjD,QAAO;CAGhC,IAAM,IAAS,IAAmB,KAAO,GAEnC,IAAa,CAAC,EAAE,KAAS,KAAS,KAAe,CAAC;AAExD,QACE,kBAAC,WAAD;EACE,WAAW,CAAC,EAAO,SAAS,EAAU,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI;EAChE,GAAI;YAFN,CAIG,MACC,KAAe,CAAC,IACd,kBAAC,UAAD;GACE,MAAK;GACL,WAAW,EAAO;GAClB,eAAe,EAAa,CAAC,EAAK;GAClC,iBAAe;GACf,iBAAe;aALjB;IAOG,KACC,kBAAC,QAAD;KAAM,WAAW,EAAO;eACtB,kBAAC,GAAD;MAAY;MAAM,MAAK;MAAK,eAAA;MAAc,CAAA;KACrC,CAAA;IAER,KAAS,kBAAC,QAAD;KAAM,WAAW,EAAO;eAAe;KAAa,CAAA;IAC9D,kBAAC,QAAD;KAAM,WAAW,EAAO;eACtB,kBAAC,GAAD;MAAM,MAAM,IAAO,IAAQ;MAAS,MAAK;MAAK,eAAA;MAAc,CAAA;KACvD,CAAA;IACA;OAET,kBAAC,OAAD;GAAK,WAAW,EAAO;aAAvB,CACG,KACC,kBAAC,QAAD;IAAM,WAAW,EAAO;cACtB,kBAAC,GAAD;KAAY;KAAM,MAAK;KAAK,eAAA;KAAc,CAAA;IACrC,CAAA,EAER,KAAS,kBAAC,QAAD;IAAM,WAAW,EAAO;cAAe;IAAa,CAAA,CAC1D;OAIV,kBAAC,OAAD;GACE,IAAI;GACJ,WAAW,CACT,EAAO,aACN,IAAuC,OAA9B,EAAO,qBAClB,CACE,OAAO,QAAQ,CACf,KAAK,IAAI;GACZ,eAAa,CAAC,KAAU,KAAA;aAExB,kBAAC,OAAD;IAAK,WAAW,EAAO;cACrB,kBAAC,MAAD;KAAI,MAAK;KAAO,WAAW,EAAO;KAC/B;KACE,CAAA;IACD,CAAA;GACF,CAAA,CACE;;EAGf"}
1
+ {"version":3,"file":"SidebarSection.js","names":[],"sources":["../../../src/components/Sidebar/SidebarSection.tsx"],"sourcesContent":["import type { IconDefinition } from '@gnome-ui/icons';\nimport { PanDown, PanUp } from '@gnome-ui/icons';\nimport {\n Children,\n forwardRef,\n type HTMLAttributes,\n isValidElement,\n type ReactNode,\n useContext,\n useId,\n useImperativeHandle,\n useState,\n} from 'react';\n\nimport { Icon } from '../Icon';\n\nimport { SidebarFilterContext, useSidebarCollapsed } from './Sidebar';\nimport styles from './Sidebar.module.css';\n\n// ─── Filter helper ────────────────────────────────────────────────────────────\n\nfunction countMatchingItems(children: ReactNode, filter: string): number {\n let count = 0;\n Children.forEach(children, (child) => {\n if (!isValidElement(child)) {\n return;\n }\n\n const props = child.props as Record<string, unknown>;\n\n if (typeof props.label === 'string') {\n if (props.label.toLowerCase().includes(filter.toLowerCase())) {\n count++;\n }\n } else if (props.children) {\n count += countMatchingItems(props.children as ReactNode, filter);\n }\n });\n\n return count;\n}\n\n// ─── Handle ───────────────────────────────────────────────────────────────────\n\nexport interface SidebarSectionHandle {\n expand: () => void;\n collapse: () => void;\n toggle: () => void;\n}\n\n// ─── Props ────────────────────────────────────────────────────────────────────\n\nexport interface SidebarSectionProps extends HTMLAttributes<HTMLElement> {\n /**\n * Section heading. Rendered in small caps above the items.\n * Omit for an untitled section (e.g. the first group in a sidebar).\n */\n title?: string;\n /** Icon rendered left of the title. Same type as `SidebarItem.icon`. */\n icon?: IconDefinition;\n /** Whether the section body can be toggled open/closed. Defaults to `false`. */\n collapsible?: boolean;\n /** Initial open state when `collapsible` is true. Defaults to `true`. */\n defaultOpen?: boolean;\n /** Controlled open state. */\n open?: boolean;\n /** Called when open state changes. */\n onOpenChange?: (open: boolean) => void;\n children?: ReactNode;\n}\n\n// ─── Component ────────────────────────────────────────────────────────────────\n\n/**\n * Named group of `SidebarItem` entries inside a `Sidebar`.\n *\n * Sections are separated by a thin divider. The title and icon are optional.\n * When `collapsible` is true the body can be toggled via the header button or\n * imperatively via a `ref` (`expand`, `collapse`, `toggle`).\n *\n * In rail (icon-only) mode the body is always visible regardless of open state.\n * When a sidebar filter is active and no children match, the section is hidden.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.Sidebar.html\n */\nexport const SidebarSection = forwardRef<SidebarSectionHandle, SidebarSectionProps>(\n function SidebarSection(\n {\n title,\n icon,\n collapsible = false,\n defaultOpen = true,\n open: controlledOpen,\n onOpenChange,\n children,\n className,\n ...props\n },\n ref,\n ) {\n const [internalOpen, setInternalOpen] = useState(defaultOpen);\n const isControlled = controlledOpen !== undefined;\n const open = isControlled ? controlledOpen : internalOpen;\n\n const sidebarCollapsed = useSidebarCollapsed();\n const filterValue = useContext(SidebarFilterContext);\n const bodyId = useId();\n\n const setAndNotify = (next: boolean) => {\n if (!isControlled) {\n setInternalOpen(next);\n }\n\n onOpenChange?.(next);\n };\n\n useImperativeHandle(ref, () => ({\n expand: () => setAndNotify(true),\n collapse: () => setAndNotify(false),\n toggle: () => setAndNotify(!open),\n }));\n\n // Hide section entirely when filter is active and no children match\n const hasVisibleChildren =\n filterValue.length === 0 || countMatchingItems(children, filterValue) > 0;\n\n if (!hasVisibleChildren) {\n return null;\n }\n\n // In rail mode the body is always visible\n const isOpen = sidebarCollapsed ? true : open;\n\n const showHeader = !!(title || icon || (collapsible && !sidebarCollapsed));\n\n return (\n <section className={[styles.section, className].filter(Boolean).join(' ')} {...props}>\n {showHeader &&\n (collapsible && !sidebarCollapsed ? (\n <button\n type=\"button\"\n className={styles.sectionHeader}\n onClick={() => setAndNotify(!open)}\n aria-expanded={open}\n aria-controls={bodyId}\n >\n {icon && (\n <span className={styles.sectionHeaderIcon}>\n <Icon icon={icon} size=\"sm\" aria-hidden />\n </span>\n )}\n {title && <span className={styles.sectionTitle}>{title}</span>}\n <span className={styles.sectionChevron}>\n <Icon icon={open ? PanUp : PanDown} size=\"sm\" aria-hidden />\n </span>\n </button>\n ) : (\n <div className={styles.sectionHeader}>\n {icon && (\n <span className={styles.sectionHeaderIcon}>\n <Icon icon={icon} size=\"sm\" aria-hidden />\n </span>\n )}\n {title && <span className={styles.sectionTitle}>{title}</span>}\n </div>\n ))}\n\n <div\n id={bodyId}\n className={[styles.sectionBody, !isOpen ? styles.sectionBodyCollapsed : null]\n .filter(Boolean)\n .join(' ')}\n aria-hidden={!isOpen || undefined}\n >\n <div className={styles.sectionBodyInner}>\n <ul className={styles.list}>{children}</ul>\n </div>\n </div>\n </section>\n );\n },\n);\n"],"mappings":";;;;;;;AAqBA,SAAS,EAAmB,GAAqB,GAAwB;CACvE,IAAI,IAAQ;CAiBZ,OAhBA,EAAS,QAAQ,IAAW,MAAU;EACpC,IAAI,CAAC,EAAe,CAAK,GACvB;EAGF,IAAM,IAAQ,EAAM;EAEpB,AAAI,OAAO,EAAM,SAAU,WACrB,EAAM,MAAM,YAAY,EAAE,SAAS,EAAO,YAAY,CAAC,KACzD,MAEO,EAAM,aACf,KAAS,EAAmB,EAAM,UAAuB,CAAM;CAEnE,CAAC,GAEM;AACT;AA6CA,IAAa,IAAiB,EAC5B,SACE,EACE,UACA,SACA,iBAAc,IACd,iBAAc,IACd,MAAM,GACN,iBACA,aACA,cACA,GAAG,KAEL,GACA;CACA,IAAM,CAAC,GAAc,KAAmB,EAAS,CAAW,GACtD,IAAe,MAAmB,KAAA,GAClC,IAAO,IAAe,IAAiB,GAEvC,IAAmB,EAAoB,GACvC,IAAc,EAAW,CAAoB,GAC7C,IAAS,EAAM,GAEf,KAAgB,MAAkB;EAKtC,AAJK,KACH,EAAgB,CAAI,GAGtB,IAAe,CAAI;CACrB;CAYA,IAVA,EAAoB,UAAY;EAC9B,cAAc,EAAa,EAAI;EAC/B,gBAAgB,EAAa,EAAK;EAClC,cAAc,EAAa,CAAC,CAAI;CAClC,EAAE,GAME,EAFF,EAAY,WAAW,KAAK,EAAmB,GAAU,CAAW,IAAI,IAGxE,OAAO;CAIT,IAAM,IAAS,IAAmB,KAAO,GAEnC,IAAa,CAAC,EAAE,KAAS,KAAS,KAAe,CAAC;CAExD,OACE,kBAAC,WAAD;EAAS,WAAW,CAAC,EAAO,SAAS,CAAS,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;EAAG,GAAI;YAA/E,CACG,MACE,KAAe,CAAC,IACf,kBAAC,UAAD;GACE,MAAK;GACL,WAAW,EAAO;GAClB,eAAe,EAAa,CAAC,CAAI;GACjC,iBAAe;GACf,iBAAe;aALjB;IAOG,KACC,kBAAC,QAAD;KAAM,WAAW,EAAO;eACtB,kBAAC,GAAD;MAAY;MAAM,MAAK;MAAK,eAAA;KAAa,CAAA;IACrC,CAAA;IAEP,KAAS,kBAAC,QAAD;KAAM,WAAW,EAAO;eAAe;IAAY,CAAA;IAC7D,kBAAC,QAAD;KAAM,WAAW,EAAO;eACtB,kBAAC,GAAD;MAAM,MAAM,IAAO,IAAQ;MAAS,MAAK;MAAK,eAAA;KAAa,CAAA;IACvD,CAAA;GACA;OAER,kBAAC,OAAD;GAAK,WAAW,EAAO;aAAvB,CACG,KACC,kBAAC,QAAD;IAAM,WAAW,EAAO;cACtB,kBAAC,GAAD;KAAY;KAAM,MAAK;KAAK,eAAA;IAAa,CAAA;GACrC,CAAA,GAEP,KAAS,kBAAC,QAAD;IAAM,WAAW,EAAO;cAAe;GAAY,CAAA,CAC1D;OAGT,kBAAC,OAAD;GACE,IAAI;GACJ,WAAW,CAAC,EAAO,aAAc,IAAuC,OAA9B,EAAO,oBAA2B,EACzE,OAAO,OAAO,EACd,KAAK,GAAG;GACX,eAAa,CAAC,KAAU,KAAA;aAExB,kBAAC,OAAD;IAAK,WAAW,EAAO;cACrB,kBAAC,MAAD;KAAI,WAAW,EAAO;KAAO;IAAa,CAAA;GACvC,CAAA;EACF,CAAA,CACE;;AAEb,CACF"}
@@ -1,6 +1,6 @@
1
- export { Sidebar, SidebarCollapsedContext, useSidebarCollapsed } from './Sidebar';
2
1
  export type { SidebarProps } from './Sidebar';
3
- export { SidebarSection } from './SidebarSection';
4
- export type { SidebarSectionProps, SidebarSectionHandle } from './SidebarSection';
5
- export { SidebarItem } from './SidebarItem';
2
+ export { Sidebar, SidebarCollapsedContext, useSidebarCollapsed } from './Sidebar';
6
3
  export type { SidebarItemProps, SidebarMenuEntry } from './SidebarItem';
4
+ export { SidebarItem } from './SidebarItem';
5
+ export type { SidebarSectionHandle, SidebarSectionProps } from './SidebarSection';
6
+ export { SidebarSection } from './SidebarSection';
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./Sidebar/Sidebar.cjs`),t=require(`./Sidebar/SidebarSection.cjs`),n=require(`./Sidebar/SidebarItem.cjs`);exports.Sidebar=e.Sidebar,exports.SidebarCollapsedContext=e.SidebarCollapsedContext,exports.SidebarItem=n.SidebarItem,exports.SidebarSection=t.SidebarSection,exports.useSidebarCollapsed=e.useSidebarCollapsed;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./Sidebar/Sidebar.cjs"),t=require("./Sidebar/SidebarItem.cjs"),n=require("./Sidebar/SidebarSection.cjs");exports.Sidebar=e.Sidebar,exports.SidebarCollapsedContext=e.SidebarCollapsedContext,exports.SidebarItem=t.SidebarItem,exports.SidebarSection=n.SidebarSection,exports.useSidebarCollapsed=e.useSidebarCollapsed;
@@ -1,4 +1,4 @@
1
1
  import { Sidebar as e, SidebarCollapsedContext as t, useSidebarCollapsed as n } from "./Sidebar/Sidebar.js";
2
- import { SidebarSection as r } from "./Sidebar/SidebarSection.js";
3
- import { SidebarItem as i } from "./Sidebar/SidebarItem.js";
4
- export { e as Sidebar, t as SidebarCollapsedContext, i as SidebarItem, r as SidebarSection, n as useSidebarCollapsed };
2
+ import { SidebarItem as r } from "./Sidebar/SidebarItem.js";
3
+ import { SidebarSection as i } from "./Sidebar/SidebarSection.js";
4
+ export { e as Sidebar, t as SidebarCollapsedContext, r as SidebarItem, i as SidebarSection, n as useSidebarCollapsed };
@@ -1,2 +1,2 @@
1
- const e=require(`./Skeleton.module.css.cjs`);let t=require(`react/jsx-runtime`);function n(e){return typeof e==`number`?`${e}px`:e}function r({variant:r=`rect`,width:i=`100%`,height:a=16,size:o=40,lines:s=3,animated:c=!0,className:l,style:u,...d}){let f=[e.default.skeleton,e.default[r],c?e.default.animated:null,l].filter(Boolean).join(` `);if(r===`text`){let n=Math.max(1,Math.floor(s));return(0,t.jsx)(`div`,{"aria-hidden":`true`,className:f,style:u,...d,children:Array.from({length:n},(r,i)=>(0,t.jsx)(`div`,{className:e.default.line,style:i===n-1?{"--skeleton-line-width":`60%`}:void 0},i))})}let p=r===`circle`?{width:`${o}px`,height:`${o}px`}:{width:n(i),height:n(a)};return(0,t.jsx)(`div`,{"aria-hidden":`true`,className:f,style:{...p,...u},...d})}exports.Skeleton=r;
1
+ const e=require("./Skeleton.module.css.cjs");let t=require("react/jsx-runtime");function n(e){return typeof e==`number`?`${e}px`:e}var r=({variant:r=`rect`,width:i=`100%`,height:a=16,size:o=40,lines:s=3,animated:c=!0,className:l,style:u,...d})=>{let f=[e.default.skeleton,e.default[r],c?e.default.animated:null,l].filter(Boolean).join(` `);if(r===`text`){let n=Math.max(1,Math.floor(s));return(0,t.jsx)(`div`,{"aria-hidden":`true`,className:f,style:u,...d,children:Array.from({length:n},(r,i)=>(0,t.jsx)(`div`,{className:e.default.line,style:i===n-1?{"--skeleton-line-width":`60%`}:void 0},i))})}return(0,t.jsx)(`div`,{"aria-hidden":`true`,className:f,style:{...r===`circle`?{width:`${o}px`,height:`${o}px`}:{width:n(i),height:n(a)},...u},...d})};exports.Skeleton=r;
2
2
  //# sourceMappingURL=Skeleton.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.cjs","names":[],"sources":["../../../src/components/Skeleton/Skeleton.tsx"],"sourcesContent":["import type { CSSProperties, HTMLAttributes } from \"react\";\nimport styles from \"./Skeleton.module.css\";\n\nexport type SkeletonVariant = \"rect\" | \"circle\" | \"text\";\n\nexport interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {\n /** Shape of the placeholder. Defaults to `\"rect\"`. */\n variant?: SkeletonVariant;\n /** Width for rectangular placeholders. Defaults to `\"100%\"`. */\n width?: number | string;\n /** Height for rectangular placeholders. Defaults to `16`. */\n height?: number | string;\n /** Diameter for circular placeholders. Defaults to `40`. */\n size?: number;\n /** Number of rows for text placeholders. Defaults to `3`. */\n lines?: number;\n /**\n * Enables the shimmer animation.\n * Respects `prefers-reduced-motion`. Defaults to `true`.\n */\n animated?: boolean;\n}\n\nfunction toCssSize(value: number | string) {\n return typeof value === \"number\" ? `${value}px` : value;\n}\n\n/**\n * Loading placeholder for content-shaped skeleton screens.\n *\n * GNOME HIG recommends `Spinner` or `ProgressBar` for loading states; this is a\n * pragmatic web-style extension for layouts that benefit from placeholder shape.\n */\nexport function Skeleton({\n variant = \"rect\",\n width = \"100%\",\n height = 16,\n size = 40,\n lines = 3,\n animated = true,\n className,\n style,\n ...props\n}: SkeletonProps) {\n const classes = [\n styles.skeleton,\n styles[variant],\n animated ? styles.animated : null,\n className,\n ]\n .filter(Boolean)\n .join(\" \");\n\n if (variant === \"text\") {\n const lineCount = Math.max(1, Math.floor(lines));\n\n return (\n <div\n aria-hidden=\"true\"\n className={classes}\n style={style}\n {...props}\n >\n {Array.from({ length: lineCount }, (_, index) => (\n <div\n key={index}\n className={styles.line}\n style={\n index === lineCount - 1\n ? ({ \"--skeleton-line-width\": \"60%\" } as CSSProperties)\n : undefined\n }\n />\n ))}\n </div>\n );\n }\n\n const shapeStyle: CSSProperties =\n variant === \"circle\"\n ? { width: `${size}px`, height: `${size}px` }\n : { width: toCssSize(width), height: toCssSize(height) };\n\n return (\n <div\n aria-hidden=\"true\"\n className={classes}\n style={{ ...shapeStyle, ...style }}\n {...props}\n />\n );\n}\n"],"mappings":"gFAuBA,SAAS,EAAU,EAAwB,CACzC,OAAO,OAAO,GAAU,SAAW,GAAG,EAAM,IAAM,EASpD,SAAgB,EAAS,CACvB,UAAU,OACV,QAAQ,OACR,SAAS,GACT,OAAO,GACP,QAAQ,EACR,WAAW,GACX,YACA,QACA,GAAG,GACa,CAChB,IAAM,EAAU,CACd,EAAA,QAAO,SACP,EAAA,QAAO,GACP,EAAW,EAAA,QAAO,SAAW,KAC7B,EACD,CACE,OAAO,QAAQ,CACf,KAAK,IAAI,CAEZ,GAAI,IAAY,OAAQ,CACtB,IAAM,EAAY,KAAK,IAAI,EAAG,KAAK,MAAM,EAAM,CAAC,CAEhD,OACE,EAAA,EAAA,KAAC,MAAD,CACE,cAAY,OACZ,UAAW,EACJ,QACP,GAAI,WAEH,MAAM,KAAK,CAAE,OAAQ,EAAW,EAAG,EAAG,KACrC,EAAA,EAAA,KAAC,MAAD,CAEE,UAAW,EAAA,QAAO,KAClB,MACE,IAAU,EAAY,EACjB,CAAE,wBAAyB,MAAO,CACnC,IAAA,GAEN,CAPK,EAOL,CACF,CACE,CAAA,CAIV,IAAM,EACJ,IAAY,SACR,CAAE,MAAO,GAAG,EAAK,IAAK,OAAQ,GAAG,EAAK,IAAK,CAC3C,CAAE,MAAO,EAAU,EAAM,CAAE,OAAQ,EAAU,EAAO,CAAE,CAE5D,OACE,EAAA,EAAA,KAAC,MAAD,CACE,cAAY,OACZ,UAAW,EACX,MAAO,CAAE,GAAG,EAAY,GAAG,EAAO,CAClC,GAAI,EACJ,CAAA"}
1
+ {"version":3,"file":"Skeleton.cjs","names":[],"sources":["../../../src/components/Skeleton/Skeleton.tsx"],"sourcesContent":["import type { CSSProperties, HTMLAttributes } from 'react';\n\nimport styles from './Skeleton.module.css';\n\nexport type SkeletonVariant = 'rect' | 'circle' | 'text';\n\nexport interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {\n /** Shape of the placeholder. Defaults to `\"rect\"`. */\n variant?: SkeletonVariant;\n /** Width for rectangular placeholders. Defaults to `\"100%\"`. */\n width?: number | string;\n /** Height for rectangular placeholders. Defaults to `16`. */\n height?: number | string;\n /** Diameter for circular placeholders. Defaults to `40`. */\n size?: number;\n /** Number of rows for text placeholders. Defaults to `3`. */\n lines?: number;\n /**\n * Enables the shimmer animation.\n * Respects `prefers-reduced-motion`. Defaults to `true`.\n */\n animated?: boolean;\n}\n\nfunction toCssSize(value: number | string) {\n return typeof value === 'number' ? `${value}px` : value;\n}\n\n/**\n * Loading placeholder for content-shaped skeleton screens.\n *\n * GNOME HIG recommends `Spinner` or `ProgressBar` for loading states; this is a\n * pragmatic web-style extension for layouts that benefit from placeholder shape.\n */\nexport const Skeleton = ({\n variant = 'rect',\n width = '100%',\n height = 16,\n size = 40,\n lines = 3,\n animated = true,\n className,\n style,\n ...props\n}: SkeletonProps) => {\n const classes = [styles.skeleton, styles[variant], animated ? styles.animated : null, className]\n .filter(Boolean)\n .join(' ');\n\n if (variant === 'text') {\n const lineCount = Math.max(1, Math.floor(lines));\n\n return (\n <div aria-hidden=\"true\" className={classes} style={style} {...props}>\n {Array.from({ length: lineCount }, (_, index) => (\n <div\n key={index}\n className={styles.line}\n style={\n index === lineCount - 1\n ? ({ '--skeleton-line-width': '60%' } as CSSProperties)\n : undefined\n }\n />\n ))}\n </div>\n );\n }\n\n const shapeStyle: CSSProperties =\n variant === 'circle'\n ? { width: `${size}px`, height: `${size}px` }\n : { width: toCssSize(width), height: toCssSize(height) };\n\n return (\n <div aria-hidden=\"true\" className={classes} style={{ ...shapeStyle, ...style }} {...props} />\n );\n};\n"],"mappings":"gFAwBA,SAAS,EAAU,EAAwB,CACzC,OAAO,OAAO,GAAU,SAAW,GAAG,EAAM,IAAM,CACpD,CAQA,IAAa,GAAY,CACvB,UAAU,OACV,QAAQ,OACR,SAAS,GACT,OAAO,GACP,QAAQ,EACR,WAAW,GACX,YACA,QACA,GAAG,KACgB,CACnB,IAAM,EAAU,CAAC,EAAA,QAAO,SAAU,EAAA,QAAO,GAAU,EAAW,EAAA,QAAO,SAAW,KAAM,CAAS,EAC5F,OAAO,OAAO,EACd,KAAK,GAAG,EAEX,GAAI,IAAY,OAAQ,CACtB,IAAM,EAAY,KAAK,IAAI,EAAG,KAAK,MAAM,CAAK,CAAC,EAE/C,OACE,EAAA,EAAA,KAAC,MAAD,CAAK,cAAY,OAAO,UAAW,EAAgB,QAAO,GAAI,WAC3D,MAAM,KAAK,CAAE,OAAQ,CAAU,GAAI,EAAG,KACrC,EAAA,EAAA,KAAC,MAAD,CAEE,UAAW,EAAA,QAAO,KAClB,MACE,IAAU,EAAY,EACjB,CAAE,wBAAyB,KAAM,EAClC,IAAA,EAEP,EAPM,CAON,CACF,CACE,CAAA,CAET,CAOA,OACE,EAAA,EAAA,KAAC,MAAD,CAAK,cAAY,OAAO,UAAW,EAAS,MAAO,CAAE,GALrD,IAAY,SACR,CAAE,MAAO,GAAG,EAAK,IAAK,OAAQ,GAAG,EAAK,GAAI,EAC1C,CAAE,MAAO,EAAU,CAAK,EAAG,OAAQ,EAAU,CAAM,CAAE,EAGW,GAAG,CAAM,EAAG,GAAI,CAAQ,CAAA,CAEhG"}
@@ -1,5 +1,5 @@
1
1
  import { HTMLAttributes } from 'react';
2
- export type SkeletonVariant = "rect" | "circle" | "text";
2
+ export type SkeletonVariant = 'rect' | 'circle' | 'text';
3
3
  export interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {
4
4
  /** Shape of the placeholder. Defaults to `"rect"`. */
5
5
  variant?: SkeletonVariant;
@@ -23,4 +23,4 @@ export interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {
23
23
  * GNOME HIG recommends `Spinner` or `ProgressBar` for loading states; this is a
24
24
  * pragmatic web-style extension for layouts that benefit from placeholder shape.
25
25
  */
26
- export declare function Skeleton({ variant, width, height, size, lines, animated, className, style, ...props }: SkeletonProps): import("react/jsx-runtime").JSX.Element;
26
+ export declare const Skeleton: ({ variant, width, height, size, lines, animated, className, style, ...props }: SkeletonProps) => import("react/jsx-runtime").JSX.Element;
@@ -4,7 +4,7 @@ import { jsx as t } from "react/jsx-runtime";
4
4
  function n(e) {
5
5
  return typeof e == "number" ? `${e}px` : e;
6
6
  }
7
- function r({ variant: r = "rect", width: i = "100%", height: a = 16, size: o = 40, lines: s = 3, animated: c = !0, className: l, style: u, ...d }) {
7
+ var r = ({ variant: r = "rect", width: i = "100%", height: a = 16, size: o = 40, lines: s = 3, animated: c = !0, className: l, style: u, ...d }) => {
8
8
  let f = [
9
9
  e.skeleton,
10
10
  e[r],
@@ -24,23 +24,22 @@ function r({ variant: r = "rect", width: i = "100%", height: a = 16, size: o = 4
24
24
  }, i))
25
25
  });
26
26
  }
27
- let p = r === "circle" ? {
28
- width: `${o}px`,
29
- height: `${o}px`
30
- } : {
31
- width: n(i),
32
- height: n(a)
33
- };
34
27
  return /* @__PURE__ */ t("div", {
35
28
  "aria-hidden": "true",
36
29
  className: f,
37
30
  style: {
38
- ...p,
31
+ ...r === "circle" ? {
32
+ width: `${o}px`,
33
+ height: `${o}px`
34
+ } : {
35
+ width: n(i),
36
+ height: n(a)
37
+ },
39
38
  ...u
40
39
  },
41
40
  ...d
42
41
  });
43
- }
42
+ };
44
43
  //#endregion
45
44
  export { r as Skeleton };
46
45
 
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.js","names":[],"sources":["../../../src/components/Skeleton/Skeleton.tsx"],"sourcesContent":["import type { CSSProperties, HTMLAttributes } from \"react\";\nimport styles from \"./Skeleton.module.css\";\n\nexport type SkeletonVariant = \"rect\" | \"circle\" | \"text\";\n\nexport interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {\n /** Shape of the placeholder. Defaults to `\"rect\"`. */\n variant?: SkeletonVariant;\n /** Width for rectangular placeholders. Defaults to `\"100%\"`. */\n width?: number | string;\n /** Height for rectangular placeholders. Defaults to `16`. */\n height?: number | string;\n /** Diameter for circular placeholders. Defaults to `40`. */\n size?: number;\n /** Number of rows for text placeholders. Defaults to `3`. */\n lines?: number;\n /**\n * Enables the shimmer animation.\n * Respects `prefers-reduced-motion`. Defaults to `true`.\n */\n animated?: boolean;\n}\n\nfunction toCssSize(value: number | string) {\n return typeof value === \"number\" ? `${value}px` : value;\n}\n\n/**\n * Loading placeholder for content-shaped skeleton screens.\n *\n * GNOME HIG recommends `Spinner` or `ProgressBar` for loading states; this is a\n * pragmatic web-style extension for layouts that benefit from placeholder shape.\n */\nexport function Skeleton({\n variant = \"rect\",\n width = \"100%\",\n height = 16,\n size = 40,\n lines = 3,\n animated = true,\n className,\n style,\n ...props\n}: SkeletonProps) {\n const classes = [\n styles.skeleton,\n styles[variant],\n animated ? styles.animated : null,\n className,\n ]\n .filter(Boolean)\n .join(\" \");\n\n if (variant === \"text\") {\n const lineCount = Math.max(1, Math.floor(lines));\n\n return (\n <div\n aria-hidden=\"true\"\n className={classes}\n style={style}\n {...props}\n >\n {Array.from({ length: lineCount }, (_, index) => (\n <div\n key={index}\n className={styles.line}\n style={\n index === lineCount - 1\n ? ({ \"--skeleton-line-width\": \"60%\" } as CSSProperties)\n : undefined\n }\n />\n ))}\n </div>\n );\n }\n\n const shapeStyle: CSSProperties =\n variant === \"circle\"\n ? { width: `${size}px`, height: `${size}px` }\n : { width: toCssSize(width), height: toCssSize(height) };\n\n return (\n <div\n aria-hidden=\"true\"\n className={classes}\n style={{ ...shapeStyle, ...style }}\n {...props}\n />\n );\n}\n"],"mappings":";;;AAuBA,SAAS,EAAU,GAAwB;AACzC,QAAO,OAAO,KAAU,WAAW,GAAG,EAAM,MAAM;;AASpD,SAAgB,EAAS,EACvB,aAAU,QACV,WAAQ,QACR,YAAS,IACT,UAAO,IACP,WAAQ,GACR,cAAW,IACX,cACA,UACA,GAAG,KACa;CAChB,IAAM,IAAU;EACd,EAAO;EACP,EAAO;EACP,IAAW,EAAO,WAAW;EAC7B;EACD,CACE,OAAO,QAAQ,CACf,KAAK,IAAI;AAEZ,KAAI,MAAY,QAAQ;EACtB,IAAM,IAAY,KAAK,IAAI,GAAG,KAAK,MAAM,EAAM,CAAC;AAEhD,SACE,kBAAC,OAAD;GACE,eAAY;GACZ,WAAW;GACJ;GACP,GAAI;aAEH,MAAM,KAAK,EAAE,QAAQ,GAAW,GAAG,GAAG,MACrC,kBAAC,OAAD;IAEE,WAAW,EAAO;IAClB,OACE,MAAU,IAAY,IACjB,EAAE,yBAAyB,OAAO,GACnC,KAAA;IAEN,EAPK,EAOL,CACF;GACE,CAAA;;CAIV,IAAM,IACJ,MAAY,WACR;EAAE,OAAO,GAAG,EAAK;EAAK,QAAQ,GAAG,EAAK;EAAK,GAC3C;EAAE,OAAO,EAAU,EAAM;EAAE,QAAQ,EAAU,EAAO;EAAE;AAE5D,QACE,kBAAC,OAAD;EACE,eAAY;EACZ,WAAW;EACX,OAAO;GAAE,GAAG;GAAY,GAAG;GAAO;EAClC,GAAI;EACJ,CAAA"}
1
+ {"version":3,"file":"Skeleton.js","names":[],"sources":["../../../src/components/Skeleton/Skeleton.tsx"],"sourcesContent":["import type { CSSProperties, HTMLAttributes } from 'react';\n\nimport styles from './Skeleton.module.css';\n\nexport type SkeletonVariant = 'rect' | 'circle' | 'text';\n\nexport interface SkeletonProps extends HTMLAttributes<HTMLDivElement> {\n /** Shape of the placeholder. Defaults to `\"rect\"`. */\n variant?: SkeletonVariant;\n /** Width for rectangular placeholders. Defaults to `\"100%\"`. */\n width?: number | string;\n /** Height for rectangular placeholders. Defaults to `16`. */\n height?: number | string;\n /** Diameter for circular placeholders. Defaults to `40`. */\n size?: number;\n /** Number of rows for text placeholders. Defaults to `3`. */\n lines?: number;\n /**\n * Enables the shimmer animation.\n * Respects `prefers-reduced-motion`. Defaults to `true`.\n */\n animated?: boolean;\n}\n\nfunction toCssSize(value: number | string) {\n return typeof value === 'number' ? `${value}px` : value;\n}\n\n/**\n * Loading placeholder for content-shaped skeleton screens.\n *\n * GNOME HIG recommends `Spinner` or `ProgressBar` for loading states; this is a\n * pragmatic web-style extension for layouts that benefit from placeholder shape.\n */\nexport const Skeleton = ({\n variant = 'rect',\n width = '100%',\n height = 16,\n size = 40,\n lines = 3,\n animated = true,\n className,\n style,\n ...props\n}: SkeletonProps) => {\n const classes = [styles.skeleton, styles[variant], animated ? styles.animated : null, className]\n .filter(Boolean)\n .join(' ');\n\n if (variant === 'text') {\n const lineCount = Math.max(1, Math.floor(lines));\n\n return (\n <div aria-hidden=\"true\" className={classes} style={style} {...props}>\n {Array.from({ length: lineCount }, (_, index) => (\n <div\n key={index}\n className={styles.line}\n style={\n index === lineCount - 1\n ? ({ '--skeleton-line-width': '60%' } as CSSProperties)\n : undefined\n }\n />\n ))}\n </div>\n );\n }\n\n const shapeStyle: CSSProperties =\n variant === 'circle'\n ? { width: `${size}px`, height: `${size}px` }\n : { width: toCssSize(width), height: toCssSize(height) };\n\n return (\n <div aria-hidden=\"true\" className={classes} style={{ ...shapeStyle, ...style }} {...props} />\n );\n};\n"],"mappings":";;;AAwBA,SAAS,EAAU,GAAwB;CACzC,OAAO,OAAO,KAAU,WAAW,GAAG,EAAM,MAAM;AACpD;AAQA,IAAa,KAAY,EACvB,aAAU,QACV,WAAQ,QACR,YAAS,IACT,UAAO,IACP,WAAQ,GACR,cAAW,IACX,cACA,UACA,GAAG,QACgB;CACnB,IAAM,IAAU;EAAC,EAAO;EAAU,EAAO;EAAU,IAAW,EAAO,WAAW;EAAM;CAAS,EAC5F,OAAO,OAAO,EACd,KAAK,GAAG;CAEX,IAAI,MAAY,QAAQ;EACtB,IAAM,IAAY,KAAK,IAAI,GAAG,KAAK,MAAM,CAAK,CAAC;EAE/C,OACE,kBAAC,OAAD;GAAK,eAAY;GAAO,WAAW;GAAgB;GAAO,GAAI;aAC3D,MAAM,KAAK,EAAE,QAAQ,EAAU,IAAI,GAAG,MACrC,kBAAC,OAAD;IAEE,WAAW,EAAO;IAClB,OACE,MAAU,IAAY,IACjB,EAAE,yBAAyB,MAAM,IAClC,KAAA;GAEP,GAPM,CAON,CACF;EACE,CAAA;CAET;CAOA,OACE,kBAAC,OAAD;EAAK,eAAY;EAAO,WAAW;EAAS,OAAO;GAAE,GALrD,MAAY,WACR;IAAE,OAAO,GAAG,EAAK;IAAK,QAAQ,GAAG,EAAK;GAAI,IAC1C;IAAE,OAAO,EAAU,CAAK;IAAG,QAAQ,EAAU,CAAM;GAAE;GAGW,GAAG;EAAM;EAAG,GAAI;CAAQ,CAAA;AAEhG"}
@@ -1,2 +1,2 @@
1
- var e={skeleton:`_skeleton_wkug0_3`,line:`_line_wkug0_15`,animated:`_animated_wkug0_28`,shimmer:`_shimmer_wkug0_1`,rect:`_rect_wkug0_35`,circle:`_circle_wkug0_39`,text:`_text_wkug0_43`};exports.default=e;
1
+ var e={skeleton:`_skeleton_sxiec_3`,line:`_line_sxiec_15`,animated:`_animated_sxiec_23`,shimmer:`_shimmer_sxiec_1`,rect:`_rect_sxiec_30`,circle:`_circle_sxiec_34`,text:`_text_sxiec_38`};exports.default=e;
2
2
  //# sourceMappingURL=Skeleton.module.css.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.module.css.cjs","names":[],"sources":["../../../src/components/Skeleton/Skeleton.module.css"],"sourcesContent":["/* Base */\n\n.skeleton {\n --skeleton-base: var(--gnome-skeleton-base-color, rgba(0, 0, 0, 0.09));\n --skeleton-highlight: var(--gnome-skeleton-highlight-color, rgba(255, 255, 255, 0.55));\n\n position: relative;\n display: block;\n flex-shrink: 0;\n overflow: hidden;\n background-color: var(--skeleton-base);\n}\n\n.skeleton::after,\n.line::after {\n content: \"\";\n position: absolute;\n inset: 0;\n transform: translateX(-100%);\n background: linear-gradient(\n 90deg,\n transparent,\n var(--skeleton-highlight),\n transparent\n );\n}\n\n.animated::after,\n.animated .line::after {\n animation: shimmer 1.4s var(--gnome-easing-default, ease) infinite;\n}\n\n/* Variants */\n\n.rect {\n border-radius: var(--gnome-radius-md, 6px);\n}\n\n.circle {\n border-radius: 50%;\n}\n\n.text {\n display: flex;\n width: 100%;\n flex-direction: column;\n gap: 8px;\n background-color: transparent;\n}\n\n.text::after {\n display: none;\n}\n\n.line {\n position: relative;\n width: var(--skeleton-line-width, 100%);\n height: 12px;\n overflow: hidden;\n border-radius: var(--gnome-radius-pill, 999px);\n background-color: var(--skeleton-base);\n}\n\n/* Keyframes */\n\n@keyframes shimmer {\n 100% {\n transform: translateX(100%);\n }\n}\n\n/* Dark mode */\n\n@media (prefers-color-scheme: dark) {\n .skeleton {\n --skeleton-base: var(--gnome-skeleton-base-color, rgba(255, 255, 255, 0.12));\n --skeleton-highlight: var(--gnome-skeleton-highlight-color, rgba(255, 255, 255, 0.18));\n }\n}\n\n/* Reduced motion */\n\n@media (prefers-reduced-motion: reduce) {\n .animated::after,\n .animated .line::after {\n animation: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Skeleton.module.css.cjs","names":[],"sources":["../../../src/components/Skeleton/Skeleton.module.css"],"sourcesContent":["/* Base */\n\n.skeleton {\n --skeleton-base: var(--gnome-skeleton-base-color, rgba(0, 0, 0, 0.09));\n --skeleton-highlight: var(--gnome-skeleton-highlight-color, rgba(255, 255, 255, 0.55));\n\n position: relative;\n display: block;\n flex-shrink: 0;\n overflow: hidden;\n background-color: var(--skeleton-base);\n}\n\n.skeleton::after,\n.line::after {\n content: \"\";\n position: absolute;\n inset: 0;\n transform: translateX(-100%);\n background: linear-gradient(90deg, transparent, var(--skeleton-highlight), transparent);\n}\n\n.animated::after,\n.animated .line::after {\n animation: shimmer 1.4s var(--gnome-easing-default, ease) infinite;\n}\n\n/* Variants */\n\n.rect {\n border-radius: var(--gnome-radius-md, 6px);\n}\n\n.circle {\n border-radius: 50%;\n}\n\n.text {\n display: flex;\n width: 100%;\n flex-direction: column;\n gap: 8px;\n background-color: transparent;\n}\n\n.text::after {\n display: none;\n}\n\n.line {\n position: relative;\n width: var(--skeleton-line-width, 100%);\n height: 12px;\n overflow: hidden;\n border-radius: var(--gnome-radius-pill, 999px);\n background-color: var(--skeleton-base);\n}\n\n/* Keyframes */\n\n@keyframes shimmer {\n 100% {\n transform: translateX(100%);\n }\n}\n\n/* Dark mode */\n\n@media (prefers-color-scheme: dark) {\n .skeleton {\n --skeleton-base: var(--gnome-skeleton-base-color, rgba(255, 255, 255, 0.12));\n --skeleton-highlight: var(--gnome-skeleton-highlight-color, rgba(255, 255, 255, 0.18));\n }\n}\n\n/* Reduced motion */\n\n@media (prefers-reduced-motion: reduce) {\n .animated::after,\n .animated .line::after {\n animation: none;\n }\n}\n"],"mappings":""}
@@ -1,11 +1,11 @@
1
1
  var e = {
2
- skeleton: "_skeleton_wkug0_3",
3
- line: "_line_wkug0_15",
4
- animated: "_animated_wkug0_28",
5
- shimmer: "_shimmer_wkug0_1",
6
- rect: "_rect_wkug0_35",
7
- circle: "_circle_wkug0_39",
8
- text: "_text_wkug0_43"
2
+ skeleton: "_skeleton_sxiec_3",
3
+ line: "_line_sxiec_15",
4
+ animated: "_animated_sxiec_23",
5
+ shimmer: "_shimmer_sxiec_1",
6
+ rect: "_rect_sxiec_30",
7
+ circle: "_circle_sxiec_34",
8
+ text: "_text_sxiec_38"
9
9
  };
10
10
  //#endregion
11
11
  export { e as default };
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.module.css.js","names":[],"sources":["../../../src/components/Skeleton/Skeleton.module.css"],"sourcesContent":["/* Base */\n\n.skeleton {\n --skeleton-base: var(--gnome-skeleton-base-color, rgba(0, 0, 0, 0.09));\n --skeleton-highlight: var(--gnome-skeleton-highlight-color, rgba(255, 255, 255, 0.55));\n\n position: relative;\n display: block;\n flex-shrink: 0;\n overflow: hidden;\n background-color: var(--skeleton-base);\n}\n\n.skeleton::after,\n.line::after {\n content: \"\";\n position: absolute;\n inset: 0;\n transform: translateX(-100%);\n background: linear-gradient(\n 90deg,\n transparent,\n var(--skeleton-highlight),\n transparent\n );\n}\n\n.animated::after,\n.animated .line::after {\n animation: shimmer 1.4s var(--gnome-easing-default, ease) infinite;\n}\n\n/* Variants */\n\n.rect {\n border-radius: var(--gnome-radius-md, 6px);\n}\n\n.circle {\n border-radius: 50%;\n}\n\n.text {\n display: flex;\n width: 100%;\n flex-direction: column;\n gap: 8px;\n background-color: transparent;\n}\n\n.text::after {\n display: none;\n}\n\n.line {\n position: relative;\n width: var(--skeleton-line-width, 100%);\n height: 12px;\n overflow: hidden;\n border-radius: var(--gnome-radius-pill, 999px);\n background-color: var(--skeleton-base);\n}\n\n/* Keyframes */\n\n@keyframes shimmer {\n 100% {\n transform: translateX(100%);\n }\n}\n\n/* Dark mode */\n\n@media (prefers-color-scheme: dark) {\n .skeleton {\n --skeleton-base: var(--gnome-skeleton-base-color, rgba(255, 255, 255, 0.12));\n --skeleton-highlight: var(--gnome-skeleton-highlight-color, rgba(255, 255, 255, 0.18));\n }\n}\n\n/* Reduced motion */\n\n@media (prefers-reduced-motion: reduce) {\n .animated::after,\n .animated .line::after {\n animation: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Skeleton.module.css.js","names":[],"sources":["../../../src/components/Skeleton/Skeleton.module.css"],"sourcesContent":["/* Base */\n\n.skeleton {\n --skeleton-base: var(--gnome-skeleton-base-color, rgba(0, 0, 0, 0.09));\n --skeleton-highlight: var(--gnome-skeleton-highlight-color, rgba(255, 255, 255, 0.55));\n\n position: relative;\n display: block;\n flex-shrink: 0;\n overflow: hidden;\n background-color: var(--skeleton-base);\n}\n\n.skeleton::after,\n.line::after {\n content: \"\";\n position: absolute;\n inset: 0;\n transform: translateX(-100%);\n background: linear-gradient(90deg, transparent, var(--skeleton-highlight), transparent);\n}\n\n.animated::after,\n.animated .line::after {\n animation: shimmer 1.4s var(--gnome-easing-default, ease) infinite;\n}\n\n/* Variants */\n\n.rect {\n border-radius: var(--gnome-radius-md, 6px);\n}\n\n.circle {\n border-radius: 50%;\n}\n\n.text {\n display: flex;\n width: 100%;\n flex-direction: column;\n gap: 8px;\n background-color: transparent;\n}\n\n.text::after {\n display: none;\n}\n\n.line {\n position: relative;\n width: var(--skeleton-line-width, 100%);\n height: 12px;\n overflow: hidden;\n border-radius: var(--gnome-radius-pill, 999px);\n background-color: var(--skeleton-base);\n}\n\n/* Keyframes */\n\n@keyframes shimmer {\n 100% {\n transform: translateX(100%);\n }\n}\n\n/* Dark mode */\n\n@media (prefers-color-scheme: dark) {\n .skeleton {\n --skeleton-base: var(--gnome-skeleton-base-color, rgba(255, 255, 255, 0.12));\n --skeleton-highlight: var(--gnome-skeleton-highlight-color, rgba(255, 255, 255, 0.18));\n }\n}\n\n/* Reduced motion */\n\n@media (prefers-reduced-motion: reduce) {\n .animated::after,\n .animated .line::after {\n animation: none;\n }\n}\n"],"mappings":""}
@@ -1,2 +1,2 @@
1
- export { Skeleton } from './Skeleton';
2
1
  export type { SkeletonProps, SkeletonVariant } from './Skeleton';
2
+ export { Skeleton } from './Skeleton';
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./Skeleton/Skeleton.cjs`);exports.Skeleton=e.Skeleton;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./Skeleton/Skeleton.cjs");exports.Skeleton=e.Skeleton;
@@ -1,2 +1,2 @@
1
- const e=require(`./Slider.module.css.cjs`);let t=require(`react`),n=require(`react/jsx-runtime`);function r(e,t,n){return Math.min(n,Math.max(t,e))}function i(e,t,n,r){return parseFloat((Math.round((e-t)/n)*n+t).toFixed(r))}function a(e){let t=e.toString(),n=t.indexOf(`.`);return n===-1?0:t.length-n-1}function o({value:o,onChange:s,min:c=0,max:l=100,step:u=1,disabled:d=!1,marks:f,className:p,"aria-label":m,"aria-labelledby":h,"aria-describedby":g,..._}){let v=(0,t.useRef)(null),y=a(u),b=(r(o,c,l)-c)/(l-c)*100,x=(0,t.useCallback)(e=>{if(!v.current)return;let{left:t,width:n}=v.current.getBoundingClientRect();s(r(i((e-t)/n*(l-c)+c,c,u,y),c,l))},[c,l,u,y,s]),S=(0,t.useCallback)(e=>{d||(e.currentTarget.setPointerCapture(e.pointerId),x(e.clientX))},[d,x]),C=(0,t.useCallback)(e=>{e.currentTarget.hasPointerCapture(e.pointerId)&&x(e.clientX)},[x]),w=(0,t.useCallback)(e=>{let t=t=>{e.preventDefault(),s(r(i(t,c,u,y),c,l))};switch(e.key){case`ArrowRight`:case`ArrowUp`:t(o+u);break;case`ArrowLeft`:case`ArrowDown`:t(o-u);break;case`PageUp`:t(o+u*10);break;case`PageDown`:t(o-u*10);break;case`Home`:t(c);break;case`End`:t(l);break}},[o,u,c,l,y,s]),T=f&&f.length>0,E=T&&f.some(e=>e.label);return(0,n.jsxs)(`div`,{className:[e.default.wrapper,E?e.default.hasLabels:null,p].filter(Boolean).join(` `),..._,children:[(0,n.jsxs)(`div`,{ref:v,role:`slider`,tabIndex:d?-1:0,"aria-valuemin":c,"aria-valuemax":l,"aria-valuenow":o,"aria-label":m,"aria-labelledby":h,"aria-describedby":g,"aria-disabled":d||void 0,className:[e.default.track,d?e.default.disabled:null].filter(Boolean).join(` `),onPointerDown:S,onPointerMove:C,onKeyDown:d?void 0:w,children:[(0,n.jsx)(`div`,{className:e.default.fill,style:{width:`${b}%`}}),(0,n.jsx)(`div`,{className:e.default.thumb,style:{left:`${b}%`},"aria-hidden":`true`}),T&&f.map(t=>{let i=(r(t.value,c,l)-c)/(l-c)*100;return(0,n.jsx)(`div`,{className:e.default.tick,style:{left:`${i}%`},"aria-hidden":`true`},t.value)})]}),E&&(0,n.jsx)(`div`,{className:e.default.labels,"aria-hidden":`true`,children:f.map(t=>{let i=(r(t.value,c,l)-c)/(l-c)*100;return(0,n.jsx)(`span`,{className:e.default.markLabel,style:{left:`${i}%`},children:t.label},t.value)})})]})}exports.Slider=o;
1
+ const e=require("./Slider.module.css.cjs");let t=require("react"),n=require("react/jsx-runtime");function r(e,t,n){return Math.min(n,Math.max(t,e))}function i(e,t,n,r){return parseFloat((Math.round((e-t)/n)*n+t).toFixed(r))}function a(e){let t=e.toString(),n=t.indexOf(`.`);return n===-1?0:t.length-n-1}var o=({value:o,onChange:s,min:c=0,max:l=100,step:u=1,disabled:d=!1,marks:f,className:p,"aria-label":m,"aria-labelledby":h,"aria-describedby":g,..._})=>{let v=(0,t.useRef)(null),y=a(u),b=(r(o,c,l)-c)/(l-c)*100,x=(0,t.useCallback)(e=>{if(!v.current)return;let{left:t,width:n}=v.current.getBoundingClientRect();s(r(i((e-t)/n*(l-c)+c,c,u,y),c,l))},[c,l,u,y,s]),S=(0,t.useCallback)(e=>{d||(e.currentTarget.setPointerCapture(e.pointerId),x(e.clientX))},[d,x]),C=(0,t.useCallback)(e=>{e.currentTarget.hasPointerCapture(e.pointerId)&&x(e.clientX)},[x]),w=(0,t.useCallback)(e=>{let t=t=>{e.preventDefault(),s(r(i(t,c,u,y),c,l))};switch(e.key){case`ArrowRight`:case`ArrowUp`:t(o+u);break;case`ArrowLeft`:case`ArrowDown`:t(o-u);break;case`PageUp`:t(o+u*10);break;case`PageDown`:t(o-u*10);break;case`Home`:t(c);break;case`End`:t(l);break}},[o,u,c,l,y,s]),T=f&&f.length>0,E=T&&f.some(e=>e.label);return(0,n.jsxs)(`div`,{className:[e.default.wrapper,E?e.default.hasLabels:null,p].filter(Boolean).join(` `),..._,children:[(0,n.jsxs)(`div`,{ref:v,role:`slider`,tabIndex:d?-1:0,"aria-valuemin":c,"aria-valuemax":l,"aria-valuenow":o,"aria-label":m,"aria-labelledby":h,"aria-describedby":g,"aria-disabled":d||void 0,className:[e.default.track,d?e.default.disabled:null].filter(Boolean).join(` `),onPointerDown:S,onPointerMove:C,onKeyDown:d?void 0:w,children:[(0,n.jsx)(`div`,{className:e.default.fill,style:{width:`${b}%`}}),(0,n.jsx)(`div`,{className:e.default.thumb,style:{left:`${b}%`},"aria-hidden":`true`}),T&&f.map(t=>{let i=(r(t.value,c,l)-c)/(l-c)*100;return(0,n.jsx)(`div`,{className:e.default.tick,style:{left:`${i}%`},"aria-hidden":`true`},t.value)})]}),E&&(0,n.jsx)(`div`,{className:e.default.labels,"aria-hidden":`true`,children:f.map(t=>{let i=(r(t.value,c,l)-c)/(l-c)*100;return(0,n.jsx)(`span`,{className:e.default.markLabel,style:{left:`${i}%`},children:t.label},t.value)})})]})};exports.Slider=o;
2
2
  //# sourceMappingURL=Slider.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.cjs","names":[],"sources":["../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import {\n useRef,\n useCallback,\n type PointerEvent,\n type KeyboardEvent,\n type HTMLAttributes,\n} from \"react\";\nimport styles from \"./Slider.module.css\";\n\nexport interface SliderProps\n extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\"> {\n /** Current value. Must be between `min` and `max`. */\n value: number;\n /** Called when the value changes. */\n onChange: (value: number) => void;\n /** Minimum value. Defaults to `0`. */\n min?: number;\n /** Maximum value. Defaults to `100`. */\n max?: number;\n /**\n * Granularity of each step.\n * - Arrow keys move by one step.\n * - Page Up/Down move by 10 steps.\n * Defaults to `1`.\n */\n step?: number;\n /** Disables the control. */\n disabled?: boolean;\n /**\n * Marks to display along the track.\n * Each mark can have an optional label rendered below the track.\n */\n marks?: Array<{ value: number; label?: string }>;\n /** Accessible label. Required when no visible `<label>` is present. */\n \"aria-label\"?: string;\n /** Associates the control with a visible label element. */\n \"aria-labelledby\"?: string;\n /** `id` of an element that describes the current value (e.g. a live region). */\n \"aria-describedby\"?: string;\n}\n\nfunction clamp(v: number, min: number, max: number) {\n return Math.min(max, Math.max(min, v));\n}\n\nfunction snapToStep(v: number, min: number, step: number, decimals: number) {\n return parseFloat((Math.round((v - min) / step) * step + min).toFixed(decimals));\n}\n\nfunction countDecimals(n: number) {\n const s = n.toString();\n const dot = s.indexOf(\".\");\n return dot === -1 ? 0 : s.length - dot - 1;\n}\n\n/**\n * Draggable range slider following the Adwaita `GtkScale` pattern.\n *\n * - Pointer (mouse / touch / pen) drag to set value continuously.\n * - Keyboard: ← / → move by one step; Page Up/Down by 10 steps; Home/End jump to bounds.\n * - Optional tick marks with labels.\n * - Fills the track from the left up to the thumb (accent colour).\n *\n * @see https://developer.gnome.org/hig/patterns/controls/sliders.html\n */\nexport function Slider({\n value,\n onChange,\n min = 0,\n max = 100,\n step = 1,\n disabled = false,\n marks,\n className,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n ...props\n}: SliderProps) {\n const trackRef = useRef<HTMLDivElement>(null);\n const dp = countDecimals(step);\n\n const pct = ((clamp(value, min, max) - min) / (max - min)) * 100;\n\n const setFromX = useCallback(\n (clientX: number) => {\n if (!trackRef.current) return;\n const { left, width } = trackRef.current.getBoundingClientRect();\n const raw = ((clientX - left) / width) * (max - min) + min;\n onChange(clamp(snapToStep(raw, min, step, dp), min, max));\n },\n [min, max, step, dp, onChange]\n );\n\n // Pointer drag — capture on the thumb, move anywhere\n const handlePointerDown = useCallback(\n (e: PointerEvent<HTMLDivElement>) => {\n if (disabled) return;\n e.currentTarget.setPointerCapture(e.pointerId);\n setFromX(e.clientX);\n },\n [disabled, setFromX]\n );\n\n const handlePointerMove = useCallback(\n (e: PointerEvent<HTMLDivElement>) => {\n if (!e.currentTarget.hasPointerCapture(e.pointerId)) return;\n setFromX(e.clientX);\n },\n [setFromX]\n );\n\n // Keyboard\n const handleKeyDown = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n const set = (next: number) => {\n e.preventDefault();\n onChange(clamp(snapToStep(next, min, step, dp), min, max));\n };\n switch (e.key) {\n case \"ArrowRight\":\n case \"ArrowUp\":\n set(value + step);\n break;\n case \"ArrowLeft\":\n case \"ArrowDown\":\n set(value - step);\n break;\n case \"PageUp\":\n set(value + step * 10);\n break;\n case \"PageDown\":\n set(value - step * 10);\n break;\n case \"Home\":\n set(min);\n break;\n case \"End\":\n set(max);\n break;\n }\n },\n [value, step, min, max, dp, onChange]\n );\n\n const hasMarks = marks && marks.length > 0;\n const hasLabels = hasMarks && marks.some((m) => m.label);\n\n return (\n <div\n className={[\n styles.wrapper,\n hasLabels ? styles.hasLabels : null,\n className,\n ]\n .filter(Boolean)\n .join(\" \")}\n {...props}\n >\n {/* Accessible slider */}\n <div\n ref={trackRef}\n role=\"slider\"\n tabIndex={disabled ? -1 : 0}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-disabled={disabled || undefined}\n className={[styles.track, disabled ? styles.disabled : null]\n .filter(Boolean)\n .join(\" \")}\n onPointerDown={handlePointerDown}\n onPointerMove={handlePointerMove}\n onKeyDown={disabled ? undefined : handleKeyDown}\n >\n {/* Filled portion */}\n <div className={styles.fill} style={{ width: `${pct}%` }} />\n\n {/* Thumb */}\n <div\n className={styles.thumb}\n style={{ left: `${pct}%` }}\n aria-hidden=\"true\"\n />\n\n {/* Tick marks */}\n {hasMarks &&\n marks.map((m) => {\n const mPct = ((clamp(m.value, min, max) - min) / (max - min)) * 100;\n return (\n <div\n key={m.value}\n className={styles.tick}\n style={{ left: `${mPct}%` }}\n aria-hidden=\"true\"\n />\n );\n })}\n </div>\n\n {/* Mark labels */}\n {hasLabels && (\n <div className={styles.labels} aria-hidden=\"true\">\n {marks.map((m) => {\n const mPct = ((clamp(m.value, min, max) - min) / (max - min)) * 100;\n return (\n <span\n key={m.value}\n className={styles.markLabel}\n style={{ left: `${mPct}%` }}\n >\n {m.label}\n </span>\n );\n })}\n </div>\n )}\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Slider.cjs","names":[],"sources":["../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import {\n type HTMLAttributes,\n type KeyboardEvent,\n type PointerEvent,\n useCallback,\n useRef,\n} from 'react';\n\nimport styles from './Slider.module.css';\n\nexport interface SliderProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {\n /** Current value. Must be between `min` and `max`. */\n value: number;\n /** Called when the value changes. */\n onChange: (value: number) => void;\n /** Minimum value. Defaults to `0`. */\n min?: number;\n /** Maximum value. Defaults to `100`. */\n max?: number;\n /**\n * Granularity of each step.\n * - Arrow keys move by one step.\n * - Page Up/Down move by 10 steps.\n * Defaults to `1`.\n */\n step?: number;\n /** Disables the control. */\n disabled?: boolean;\n /**\n * Marks to display along the track.\n * Each mark can have an optional label rendered below the track.\n */\n marks?: Array<{ value: number; label?: string }>;\n /** Accessible label. Required when no visible `<label>` is present. */\n 'aria-label'?: string;\n /** Associates the control with a visible label element. */\n 'aria-labelledby'?: string;\n /** `id` of an element that describes the current value (e.g. a live region). */\n 'aria-describedby'?: string;\n}\n\nfunction clamp(v: number, min: number, max: number) {\n return Math.min(max, Math.max(min, v));\n}\n\nfunction snapToStep(v: number, min: number, step: number, decimals: number) {\n return parseFloat((Math.round((v - min) / step) * step + min).toFixed(decimals));\n}\n\nfunction countDecimals(n: number) {\n const s = n.toString();\n const dot = s.indexOf('.');\n\n return dot === -1 ? 0 : s.length - dot - 1;\n}\n\n/**\n * Draggable range slider following the Adwaita `GtkScale` pattern.\n *\n * - Pointer (mouse / touch / pen) drag to set value continuously.\n * - Keyboard: ← / → move by one step; Page Up/Down by 10 steps; Home/End jump to bounds.\n * - Optional tick marks with labels.\n * - Fills the track from the left up to the thumb (accent colour).\n *\n * @see https://developer.gnome.org/hig/patterns/controls/sliders.html\n */\nexport const Slider = ({\n value,\n onChange,\n min = 0,\n max = 100,\n step = 1,\n disabled = false,\n marks,\n className,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n ...props\n}: SliderProps) => {\n const trackRef = useRef<HTMLDivElement>(null);\n const dp = countDecimals(step);\n\n const pct = ((clamp(value, min, max) - min) / (max - min)) * 100;\n\n const setFromX = useCallback(\n (clientX: number) => {\n if (!trackRef.current) {\n return;\n }\n\n const { left, width } = trackRef.current.getBoundingClientRect();\n const raw = ((clientX - left) / width) * (max - min) + min;\n\n onChange(clamp(snapToStep(raw, min, step, dp), min, max));\n },\n [min, max, step, dp, onChange],\n );\n\n // Pointer drag — capture on the thumb, move anywhere\n const handlePointerDown = useCallback(\n (e: PointerEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n\n e.currentTarget.setPointerCapture(e.pointerId);\n setFromX(e.clientX);\n },\n [disabled, setFromX],\n );\n\n const handlePointerMove = useCallback(\n (e: PointerEvent<HTMLDivElement>) => {\n if (!e.currentTarget.hasPointerCapture(e.pointerId)) {\n return;\n }\n\n setFromX(e.clientX);\n },\n [setFromX],\n );\n\n // Keyboard\n const handleKeyDown = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n const set = (next: number) => {\n e.preventDefault();\n onChange(clamp(snapToStep(next, min, step, dp), min, max));\n };\n\n switch (e.key) {\n case 'ArrowRight':\n case 'ArrowUp':\n set(value + step);\n break;\n case 'ArrowLeft':\n case 'ArrowDown':\n set(value - step);\n break;\n case 'PageUp':\n set(value + step * 10);\n break;\n case 'PageDown':\n set(value - step * 10);\n break;\n case 'Home':\n set(min);\n break;\n case 'End':\n set(max);\n break;\n }\n },\n [value, step, min, max, dp, onChange],\n );\n\n const hasMarks = marks && marks.length > 0;\n const hasLabels = hasMarks && marks.some((m) => m.label);\n\n return (\n <div\n className={[styles.wrapper, hasLabels ? styles.hasLabels : null, className]\n .filter(Boolean)\n .join(' ')}\n {...props}\n >\n {/* Accessible slider */}\n <div\n ref={trackRef}\n role=\"slider\"\n tabIndex={disabled ? -1 : 0}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-disabled={disabled || undefined}\n className={[styles.track, disabled ? styles.disabled : null].filter(Boolean).join(' ')}\n onPointerDown={handlePointerDown}\n onPointerMove={handlePointerMove}\n onKeyDown={disabled ? undefined : handleKeyDown}\n >\n {/* Filled portion */}\n <div className={styles.fill} style={{ width: `${pct}%` }} />\n\n {/* Thumb */}\n <div className={styles.thumb} style={{ left: `${pct}%` }} aria-hidden=\"true\" />\n\n {/* Tick marks */}\n {hasMarks &&\n marks.map((m) => {\n const mPct = ((clamp(m.value, min, max) - min) / (max - min)) * 100;\n\n return (\n <div\n key={m.value}\n className={styles.tick}\n style={{ left: `${mPct}%` }}\n aria-hidden=\"true\"\n />\n );\n })}\n </div>\n\n {/* Mark labels */}\n {hasLabels && (\n <div className={styles.labels} aria-hidden=\"true\">\n {marks.map((m) => {\n const mPct = ((clamp(m.value, min, max) - min) / (max - min)) * 100;\n\n return (\n <span key={m.value} className={styles.markLabel} style={{ left: `${mPct}%` }}>\n {m.label}\n </span>\n );\n })}\n </div>\n )}\n </div>\n );\n};\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { HTMLAttributes } from 'react';
2
- export interface SliderProps extends Omit<HTMLAttributes<HTMLDivElement>, "onChange"> {
2
+ export interface SliderProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
3
3
  /** Current value. Must be between `min` and `max`. */
4
4
  value: number;
5
5
  /** Called when the value changes. */
@@ -26,11 +26,11 @@ export interface SliderProps extends Omit<HTMLAttributes<HTMLDivElement>, "onCha
26
26
  label?: string;
27
27
  }>;
28
28
  /** Accessible label. Required when no visible `<label>` is present. */
29
- "aria-label"?: string;
29
+ 'aria-label'?: string;
30
30
  /** Associates the control with a visible label element. */
31
- "aria-labelledby"?: string;
31
+ 'aria-labelledby'?: string;
32
32
  /** `id` of an element that describes the current value (e.g. a live region). */
33
- "aria-describedby"?: string;
33
+ 'aria-describedby'?: string;
34
34
  }
35
35
  /**
36
36
  * Draggable range slider following the Adwaita `GtkScale` pattern.
@@ -42,4 +42,4 @@ export interface SliderProps extends Omit<HTMLAttributes<HTMLDivElement>, "onCha
42
42
  *
43
43
  * @see https://developer.gnome.org/hig/patterns/controls/sliders.html
44
44
  */
45
- export declare function Slider({ value, onChange, min, max, step, disabled, marks, className, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, ...props }: SliderProps): import("react/jsx-runtime").JSX.Element;
45
+ export declare const Slider: ({ value, onChange, min, max, step, disabled, marks, className, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, ...props }: SliderProps) => import("react/jsx-runtime").JSX.Element;
@@ -12,7 +12,7 @@ function s(e) {
12
12
  let t = e.toString(), n = t.indexOf(".");
13
13
  return n === -1 ? 0 : t.length - n - 1;
14
14
  }
15
- function c({ value: c, onChange: l, min: u = 0, max: d = 100, step: f = 1, disabled: p = !1, marks: m, className: h, "aria-label": g, "aria-labelledby": _, "aria-describedby": v, ...y }) {
15
+ var c = ({ value: c, onChange: l, min: u = 0, max: d = 100, step: f = 1, disabled: p = !1, marks: m, className: h, "aria-label": g, "aria-labelledby": _, "aria-describedby": v, ...y }) => {
16
16
  let b = n(null), x = s(f), S = (a(c, u, d) - u) / (d - u) * 100, C = t((e) => {
17
17
  if (!b.current) return;
18
18
  let { left: t, width: n } = b.current.getBoundingClientRect();
@@ -115,7 +115,7 @@ function c({ value: c, onChange: l, min: u = 0, max: d = 100, step: f = 1, disab
115
115
  })
116
116
  })]
117
117
  });
118
- }
118
+ };
119
119
  //#endregion
120
120
  export { c as Slider };
121
121
 
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.js","names":[],"sources":["../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import {\n useRef,\n useCallback,\n type PointerEvent,\n type KeyboardEvent,\n type HTMLAttributes,\n} from \"react\";\nimport styles from \"./Slider.module.css\";\n\nexport interface SliderProps\n extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\"> {\n /** Current value. Must be between `min` and `max`. */\n value: number;\n /** Called when the value changes. */\n onChange: (value: number) => void;\n /** Minimum value. Defaults to `0`. */\n min?: number;\n /** Maximum value. Defaults to `100`. */\n max?: number;\n /**\n * Granularity of each step.\n * - Arrow keys move by one step.\n * - Page Up/Down move by 10 steps.\n * Defaults to `1`.\n */\n step?: number;\n /** Disables the control. */\n disabled?: boolean;\n /**\n * Marks to display along the track.\n * Each mark can have an optional label rendered below the track.\n */\n marks?: Array<{ value: number; label?: string }>;\n /** Accessible label. Required when no visible `<label>` is present. */\n \"aria-label\"?: string;\n /** Associates the control with a visible label element. */\n \"aria-labelledby\"?: string;\n /** `id` of an element that describes the current value (e.g. a live region). */\n \"aria-describedby\"?: string;\n}\n\nfunction clamp(v: number, min: number, max: number) {\n return Math.min(max, Math.max(min, v));\n}\n\nfunction snapToStep(v: number, min: number, step: number, decimals: number) {\n return parseFloat((Math.round((v - min) / step) * step + min).toFixed(decimals));\n}\n\nfunction countDecimals(n: number) {\n const s = n.toString();\n const dot = s.indexOf(\".\");\n return dot === -1 ? 0 : s.length - dot - 1;\n}\n\n/**\n * Draggable range slider following the Adwaita `GtkScale` pattern.\n *\n * - Pointer (mouse / touch / pen) drag to set value continuously.\n * - Keyboard: ← / → move by one step; Page Up/Down by 10 steps; Home/End jump to bounds.\n * - Optional tick marks with labels.\n * - Fills the track from the left up to the thumb (accent colour).\n *\n * @see https://developer.gnome.org/hig/patterns/controls/sliders.html\n */\nexport function Slider({\n value,\n onChange,\n min = 0,\n max = 100,\n step = 1,\n disabled = false,\n marks,\n className,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": ariaDescribedBy,\n ...props\n}: SliderProps) {\n const trackRef = useRef<HTMLDivElement>(null);\n const dp = countDecimals(step);\n\n const pct = ((clamp(value, min, max) - min) / (max - min)) * 100;\n\n const setFromX = useCallback(\n (clientX: number) => {\n if (!trackRef.current) return;\n const { left, width } = trackRef.current.getBoundingClientRect();\n const raw = ((clientX - left) / width) * (max - min) + min;\n onChange(clamp(snapToStep(raw, min, step, dp), min, max));\n },\n [min, max, step, dp, onChange]\n );\n\n // Pointer drag — capture on the thumb, move anywhere\n const handlePointerDown = useCallback(\n (e: PointerEvent<HTMLDivElement>) => {\n if (disabled) return;\n e.currentTarget.setPointerCapture(e.pointerId);\n setFromX(e.clientX);\n },\n [disabled, setFromX]\n );\n\n const handlePointerMove = useCallback(\n (e: PointerEvent<HTMLDivElement>) => {\n if (!e.currentTarget.hasPointerCapture(e.pointerId)) return;\n setFromX(e.clientX);\n },\n [setFromX]\n );\n\n // Keyboard\n const handleKeyDown = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n const set = (next: number) => {\n e.preventDefault();\n onChange(clamp(snapToStep(next, min, step, dp), min, max));\n };\n switch (e.key) {\n case \"ArrowRight\":\n case \"ArrowUp\":\n set(value + step);\n break;\n case \"ArrowLeft\":\n case \"ArrowDown\":\n set(value - step);\n break;\n case \"PageUp\":\n set(value + step * 10);\n break;\n case \"PageDown\":\n set(value - step * 10);\n break;\n case \"Home\":\n set(min);\n break;\n case \"End\":\n set(max);\n break;\n }\n },\n [value, step, min, max, dp, onChange]\n );\n\n const hasMarks = marks && marks.length > 0;\n const hasLabels = hasMarks && marks.some((m) => m.label);\n\n return (\n <div\n className={[\n styles.wrapper,\n hasLabels ? styles.hasLabels : null,\n className,\n ]\n .filter(Boolean)\n .join(\" \")}\n {...props}\n >\n {/* Accessible slider */}\n <div\n ref={trackRef}\n role=\"slider\"\n tabIndex={disabled ? -1 : 0}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-disabled={disabled || undefined}\n className={[styles.track, disabled ? styles.disabled : null]\n .filter(Boolean)\n .join(\" \")}\n onPointerDown={handlePointerDown}\n onPointerMove={handlePointerMove}\n onKeyDown={disabled ? undefined : handleKeyDown}\n >\n {/* Filled portion */}\n <div className={styles.fill} style={{ width: `${pct}%` }} />\n\n {/* Thumb */}\n <div\n className={styles.thumb}\n style={{ left: `${pct}%` }}\n aria-hidden=\"true\"\n />\n\n {/* Tick marks */}\n {hasMarks &&\n marks.map((m) => {\n const mPct = ((clamp(m.value, min, max) - min) / (max - min)) * 100;\n return (\n <div\n key={m.value}\n className={styles.tick}\n style={{ left: `${mPct}%` }}\n aria-hidden=\"true\"\n />\n );\n })}\n </div>\n\n {/* Mark labels */}\n {hasLabels && (\n <div className={styles.labels} aria-hidden=\"true\">\n {marks.map((m) => {\n const mPct = ((clamp(m.value, min, max) - min) / (max - min)) * 100;\n return (\n <span\n key={m.value}\n className={styles.markLabel}\n style={{ left: `${mPct}%` }}\n >\n {m.label}\n </span>\n );\n })}\n </div>\n )}\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Slider.js","names":[],"sources":["../../../src/components/Slider/Slider.tsx"],"sourcesContent":["import {\n type HTMLAttributes,\n type KeyboardEvent,\n type PointerEvent,\n useCallback,\n useRef,\n} from 'react';\n\nimport styles from './Slider.module.css';\n\nexport interface SliderProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {\n /** Current value. Must be between `min` and `max`. */\n value: number;\n /** Called when the value changes. */\n onChange: (value: number) => void;\n /** Minimum value. Defaults to `0`. */\n min?: number;\n /** Maximum value. Defaults to `100`. */\n max?: number;\n /**\n * Granularity of each step.\n * - Arrow keys move by one step.\n * - Page Up/Down move by 10 steps.\n * Defaults to `1`.\n */\n step?: number;\n /** Disables the control. */\n disabled?: boolean;\n /**\n * Marks to display along the track.\n * Each mark can have an optional label rendered below the track.\n */\n marks?: Array<{ value: number; label?: string }>;\n /** Accessible label. Required when no visible `<label>` is present. */\n 'aria-label'?: string;\n /** Associates the control with a visible label element. */\n 'aria-labelledby'?: string;\n /** `id` of an element that describes the current value (e.g. a live region). */\n 'aria-describedby'?: string;\n}\n\nfunction clamp(v: number, min: number, max: number) {\n return Math.min(max, Math.max(min, v));\n}\n\nfunction snapToStep(v: number, min: number, step: number, decimals: number) {\n return parseFloat((Math.round((v - min) / step) * step + min).toFixed(decimals));\n}\n\nfunction countDecimals(n: number) {\n const s = n.toString();\n const dot = s.indexOf('.');\n\n return dot === -1 ? 0 : s.length - dot - 1;\n}\n\n/**\n * Draggable range slider following the Adwaita `GtkScale` pattern.\n *\n * - Pointer (mouse / touch / pen) drag to set value continuously.\n * - Keyboard: ← / → move by one step; Page Up/Down by 10 steps; Home/End jump to bounds.\n * - Optional tick marks with labels.\n * - Fills the track from the left up to the thumb (accent colour).\n *\n * @see https://developer.gnome.org/hig/patterns/controls/sliders.html\n */\nexport const Slider = ({\n value,\n onChange,\n min = 0,\n max = 100,\n step = 1,\n disabled = false,\n marks,\n className,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n ...props\n}: SliderProps) => {\n const trackRef = useRef<HTMLDivElement>(null);\n const dp = countDecimals(step);\n\n const pct = ((clamp(value, min, max) - min) / (max - min)) * 100;\n\n const setFromX = useCallback(\n (clientX: number) => {\n if (!trackRef.current) {\n return;\n }\n\n const { left, width } = trackRef.current.getBoundingClientRect();\n const raw = ((clientX - left) / width) * (max - min) + min;\n\n onChange(clamp(snapToStep(raw, min, step, dp), min, max));\n },\n [min, max, step, dp, onChange],\n );\n\n // Pointer drag — capture on the thumb, move anywhere\n const handlePointerDown = useCallback(\n (e: PointerEvent<HTMLDivElement>) => {\n if (disabled) {\n return;\n }\n\n e.currentTarget.setPointerCapture(e.pointerId);\n setFromX(e.clientX);\n },\n [disabled, setFromX],\n );\n\n const handlePointerMove = useCallback(\n (e: PointerEvent<HTMLDivElement>) => {\n if (!e.currentTarget.hasPointerCapture(e.pointerId)) {\n return;\n }\n\n setFromX(e.clientX);\n },\n [setFromX],\n );\n\n // Keyboard\n const handleKeyDown = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n const set = (next: number) => {\n e.preventDefault();\n onChange(clamp(snapToStep(next, min, step, dp), min, max));\n };\n\n switch (e.key) {\n case 'ArrowRight':\n case 'ArrowUp':\n set(value + step);\n break;\n case 'ArrowLeft':\n case 'ArrowDown':\n set(value - step);\n break;\n case 'PageUp':\n set(value + step * 10);\n break;\n case 'PageDown':\n set(value - step * 10);\n break;\n case 'Home':\n set(min);\n break;\n case 'End':\n set(max);\n break;\n }\n },\n [value, step, min, max, dp, onChange],\n );\n\n const hasMarks = marks && marks.length > 0;\n const hasLabels = hasMarks && marks.some((m) => m.label);\n\n return (\n <div\n className={[styles.wrapper, hasLabels ? styles.hasLabels : null, className]\n .filter(Boolean)\n .join(' ')}\n {...props}\n >\n {/* Accessible slider */}\n <div\n ref={trackRef}\n role=\"slider\"\n tabIndex={disabled ? -1 : 0}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-describedby={ariaDescribedBy}\n aria-disabled={disabled || undefined}\n className={[styles.track, disabled ? styles.disabled : null].filter(Boolean).join(' ')}\n onPointerDown={handlePointerDown}\n onPointerMove={handlePointerMove}\n onKeyDown={disabled ? undefined : handleKeyDown}\n >\n {/* Filled portion */}\n <div className={styles.fill} style={{ width: `${pct}%` }} />\n\n {/* Thumb */}\n <div className={styles.thumb} style={{ left: `${pct}%` }} aria-hidden=\"true\" />\n\n {/* Tick marks */}\n {hasMarks &&\n marks.map((m) => {\n const mPct = ((clamp(m.value, min, max) - min) / (max - min)) * 100;\n\n return (\n <div\n key={m.value}\n className={styles.tick}\n style={{ left: `${mPct}%` }}\n aria-hidden=\"true\"\n />\n );\n })}\n </div>\n\n {/* Mark labels */}\n {hasLabels && (\n <div className={styles.labels} aria-hidden=\"true\">\n {marks.map((m) => {\n const mPct = ((clamp(m.value, min, max) - min) / (max - min)) * 100;\n\n return (\n <span key={m.value} className={styles.markLabel} style={{ left: `${mPct}%` }}>\n {m.label}\n </span>\n );\n })}\n </div>\n )}\n </div>\n );\n};\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- var e={wrapper:`_wrapper_11zhs_3`,hasLabels:`_hasLabels_11zhs_11`,track:`_track_11zhs_17`,disabled:`_disabled_11zhs_42`,fill:`_fill_11zhs_50`,thumb:`_thumb_11zhs_64`,tick:`_tick_11zhs_97`,labels:`_labels_11zhs_112`,markLabel:`_markLabel_11zhs_119`};exports.default=e;
1
+ var e={wrapper:`_wrapper_qpwn3_3`,hasLabels:`_hasLabels_qpwn3_11`,track:`_track_qpwn3_17`,disabled:`_disabled_qpwn3_42`,fill:`_fill_qpwn3_50`,thumb:`_thumb_qpwn3_64`,tick:`_tick_qpwn3_97`,labels:`_labels_qpwn3_112`,markLabel:`_markLabel_qpwn3_119`};exports.default=e;
2
2
  //# sourceMappingURL=Slider.module.css.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.module.css.cjs","names":[],"sources":["../../../src/components/Slider/Slider.module.css"],"sourcesContent":["/* ─── Outer wrapper ──────────────────────────────────────────────────────────── */\n\n.wrapper {\n display: flex;\n flex-direction: column;\n width: 100%;\n /* Vertical space for thumb overflow */\n padding: 10px 0;\n}\n\n.hasLabels {\n padding-bottom: 0;\n}\n\n/* ─── Track ──────────────────────────────────────────────────────────────────── */\n\n.track {\n position: relative;\n width: 100%;\n height: 6px;\n\n background-color: var(--gnome-card-shade-color, rgba(0, 0, 0, 0.15));\n border-radius: var(--gnome-radius-pill, 9999px);\n\n cursor: pointer;\n touch-action: none; /* prevent scroll interference during drag */\n user-select: none;\n\n outline: none;\n}\n\n.track:focus-visible {\n /* Focus ring on the track itself as a fallback */\n box-shadow:\n 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4);\n}\n\n/* ─── Disabled ───────────────────────────────────────────────────────────────── */\n\n.disabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ─── Filled section (left of thumb) ────────────────────────────────────────── */\n\n.fill {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n border-radius: var(--gnome-radius-pill, 9999px);\n\n background-color: var(--gnome-accent-bg-color, #3584e4);\n\n pointer-events: none;\n}\n\n/* ─── Thumb ──────────────────────────────────────────────────────────────────── */\n\n.thumb {\n position: absolute;\n top: 50%;\n /* Translate left by half thumb width so it centres on the left edge of .fill */\n transform: translate(-50%, -50%);\n\n width: 22px;\n height: 22px;\n border-radius: var(--gnome-radius-pill, 9999px);\n\n background-color: var(--gnome-accent-bg-color, #3584e4);\n box-shadow:\n 0 1px 3px rgba(0, 0, 0, 0.25),\n 0 0 0 2px var(--gnome-window-bg-color, #fafafa);\n\n pointer-events: none;\n\n transition:\n transform var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease),\n box-shadow var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease);\n}\n\n/* Slightly larger thumb on focus / active drag */\n.track:focus-visible .thumb,\n.track:active .thumb {\n transform: translate(-50%, -50%) scale(1.18);\n box-shadow:\n 0 2px 6px rgba(0, 0, 0, 0.3),\n 0 0 0 2px var(--gnome-window-bg-color, #fafafa);\n}\n\n/* ─── Tick marks ─────────────────────────────────────────────────────────────── */\n\n.tick {\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n\n width: 4px;\n height: 4px;\n border-radius: 50%;\n\n background-color: var(--gnome-window-bg-color, #fafafa);\n pointer-events: none;\n}\n\n/* ─── Labels row ─────────────────────────────────────────────────────────────── */\n\n.labels {\n position: relative;\n width: 100%;\n height: 20px;\n margin-top: var(--gnome-space-1, 6px);\n}\n\n.markLabel {\n position: absolute;\n transform: translateX(-50%);\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-caption, 0.8125rem);\n line-height: 1;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n opacity: var(--gnome-opacity-dim, 0.55);\n\n white-space: nowrap;\n pointer-events: none;\n user-select: none;\n}\n\n/* ─── Dark mode ──────────────────────────────────────────────────────────────── */\n\n@media (prefers-color-scheme: dark) {\n .track {\n background-color: rgba(255, 255, 255, 0.15);\n }\n\n .thumb {\n box-shadow:\n 0 1px 4px rgba(0, 0, 0, 0.5),\n 0 0 0 2px var(--gnome-window-bg-color, #242424);\n }\n\n .track:focus-visible .thumb,\n .track:active .thumb {\n box-shadow:\n 0 2px 8px rgba(0, 0, 0, 0.6),\n 0 0 0 2px var(--gnome-window-bg-color, #242424);\n }\n\n .tick {\n background-color: var(--gnome-window-bg-color, #242424);\n }\n}\n\n/* ─── Reduced motion ─────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .thumb {\n transition: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Slider.module.css.cjs","names":[],"sources":["../../../src/components/Slider/Slider.module.css"],"sourcesContent":["/* ─── Outer wrapper ──────────────────────────────────────────────────────────── */\n\n.wrapper {\n display: flex;\n flex-direction: column;\n width: 100%;\n /* Vertical space for thumb overflow */\n padding: 10px 0;\n}\n\n.hasLabels {\n padding-bottom: 0;\n}\n\n/* ─── Track ──────────────────────────────────────────────────────────────────── */\n\n.track {\n position: relative;\n width: 100%;\n height: 6px;\n\n background-color: var(--gnome-card-shade-color, rgba(0, 0, 0, 0.15));\n border-radius: var(--gnome-radius-pill, 9999px);\n\n cursor: pointer;\n touch-action: none; /* prevent scroll interference during drag */\n user-select: none;\n\n outline: none;\n}\n\n.track:focus-visible {\n /* Focus ring on the track itself as a fallback */\n box-shadow:\n 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4);\n}\n\n/* ─── Disabled ───────────────────────────────────────────────────────────────── */\n\n.disabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ─── Filled section (left of thumb) ────────────────────────────────────────── */\n\n.fill {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n border-radius: var(--gnome-radius-pill, 9999px);\n\n background-color: var(--gnome-accent-bg-color, #3584e4);\n\n pointer-events: none;\n}\n\n/* ─── Thumb ──────────────────────────────────────────────────────────────────── */\n\n.thumb {\n position: absolute;\n top: 50%;\n /* Translate left by half thumb width so it centres on the left edge of .fill */\n transform: translate(-50%, -50%);\n\n width: 22px;\n height: 22px;\n border-radius: var(--gnome-radius-pill, 9999px);\n\n background-color: var(--gnome-accent-bg-color, #3584e4);\n box-shadow:\n 0 1px 3px rgba(0, 0, 0, 0.25),\n 0 0 0 2px var(--gnome-window-bg-color, #fafafa);\n\n pointer-events: none;\n\n transition:\n transform var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease),\n box-shadow var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease);\n}\n\n/* Slightly larger thumb on focus / active drag */\n.track:focus-visible .thumb,\n.track:active .thumb {\n transform: translate(-50%, -50%) scale(1.18);\n box-shadow:\n 0 2px 6px rgba(0, 0, 0, 0.3),\n 0 0 0 2px var(--gnome-window-bg-color, #fafafa);\n}\n\n/* ─── Tick marks ─────────────────────────────────────────────────────────────── */\n\n.tick {\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n\n width: 4px;\n height: 4px;\n border-radius: 50%;\n\n background-color: var(--gnome-window-bg-color, #fafafa);\n pointer-events: none;\n}\n\n/* ─── Labels row ─────────────────────────────────────────────────────────────── */\n\n.labels {\n position: relative;\n width: 100%;\n height: 20px;\n margin-top: var(--gnome-space-1, 6px);\n}\n\n.markLabel {\n position: absolute;\n transform: translateX(-50%);\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-caption, 0.8125rem);\n line-height: 1;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n opacity: var(--gnome-opacity-dim, 0.55);\n\n white-space: nowrap;\n pointer-events: none;\n user-select: none;\n}\n\n/* ─── Dark mode ──────────────────────────────────────────────────────────────── */\n\n@media (prefers-color-scheme: dark) {\n .track {\n background-color: rgba(255, 255, 255, 0.15);\n }\n\n .thumb {\n box-shadow:\n 0 1px 4px rgba(0, 0, 0, 0.5),\n 0 0 0 2px var(--gnome-window-bg-color, #242424);\n }\n\n .track:focus-visible .thumb,\n .track:active .thumb {\n box-shadow:\n 0 2px 8px rgba(0, 0, 0, 0.6),\n 0 0 0 2px var(--gnome-window-bg-color, #242424);\n }\n\n .tick {\n background-color: var(--gnome-window-bg-color, #242424);\n }\n}\n\n/* ─── Reduced motion ─────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .thumb {\n transition: none;\n }\n}\n"],"mappings":""}
@@ -1,13 +1,13 @@
1
1
  var e = {
2
- wrapper: "_wrapper_11zhs_3",
3
- hasLabels: "_hasLabels_11zhs_11",
4
- track: "_track_11zhs_17",
5
- disabled: "_disabled_11zhs_42",
6
- fill: "_fill_11zhs_50",
7
- thumb: "_thumb_11zhs_64",
8
- tick: "_tick_11zhs_97",
9
- labels: "_labels_11zhs_112",
10
- markLabel: "_markLabel_11zhs_119"
2
+ wrapper: "_wrapper_qpwn3_3",
3
+ hasLabels: "_hasLabels_qpwn3_11",
4
+ track: "_track_qpwn3_17",
5
+ disabled: "_disabled_qpwn3_42",
6
+ fill: "_fill_qpwn3_50",
7
+ thumb: "_thumb_qpwn3_64",
8
+ tick: "_tick_qpwn3_97",
9
+ labels: "_labels_qpwn3_112",
10
+ markLabel: "_markLabel_qpwn3_119"
11
11
  };
12
12
  //#endregion
13
13
  export { e as default };
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.module.css.js","names":[],"sources":["../../../src/components/Slider/Slider.module.css"],"sourcesContent":["/* ─── Outer wrapper ──────────────────────────────────────────────────────────── */\n\n.wrapper {\n display: flex;\n flex-direction: column;\n width: 100%;\n /* Vertical space for thumb overflow */\n padding: 10px 0;\n}\n\n.hasLabels {\n padding-bottom: 0;\n}\n\n/* ─── Track ──────────────────────────────────────────────────────────────────── */\n\n.track {\n position: relative;\n width: 100%;\n height: 6px;\n\n background-color: var(--gnome-card-shade-color, rgba(0, 0, 0, 0.15));\n border-radius: var(--gnome-radius-pill, 9999px);\n\n cursor: pointer;\n touch-action: none; /* prevent scroll interference during drag */\n user-select: none;\n\n outline: none;\n}\n\n.track:focus-visible {\n /* Focus ring on the track itself as a fallback */\n box-shadow:\n 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4);\n}\n\n/* ─── Disabled ───────────────────────────────────────────────────────────────── */\n\n.disabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ─── Filled section (left of thumb) ────────────────────────────────────────── */\n\n.fill {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n border-radius: var(--gnome-radius-pill, 9999px);\n\n background-color: var(--gnome-accent-bg-color, #3584e4);\n\n pointer-events: none;\n}\n\n/* ─── Thumb ──────────────────────────────────────────────────────────────────── */\n\n.thumb {\n position: absolute;\n top: 50%;\n /* Translate left by half thumb width so it centres on the left edge of .fill */\n transform: translate(-50%, -50%);\n\n width: 22px;\n height: 22px;\n border-radius: var(--gnome-radius-pill, 9999px);\n\n background-color: var(--gnome-accent-bg-color, #3584e4);\n box-shadow:\n 0 1px 3px rgba(0, 0, 0, 0.25),\n 0 0 0 2px var(--gnome-window-bg-color, #fafafa);\n\n pointer-events: none;\n\n transition:\n transform var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease),\n box-shadow var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease);\n}\n\n/* Slightly larger thumb on focus / active drag */\n.track:focus-visible .thumb,\n.track:active .thumb {\n transform: translate(-50%, -50%) scale(1.18);\n box-shadow:\n 0 2px 6px rgba(0, 0, 0, 0.3),\n 0 0 0 2px var(--gnome-window-bg-color, #fafafa);\n}\n\n/* ─── Tick marks ─────────────────────────────────────────────────────────────── */\n\n.tick {\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n\n width: 4px;\n height: 4px;\n border-radius: 50%;\n\n background-color: var(--gnome-window-bg-color, #fafafa);\n pointer-events: none;\n}\n\n/* ─── Labels row ─────────────────────────────────────────────────────────────── */\n\n.labels {\n position: relative;\n width: 100%;\n height: 20px;\n margin-top: var(--gnome-space-1, 6px);\n}\n\n.markLabel {\n position: absolute;\n transform: translateX(-50%);\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-caption, 0.8125rem);\n line-height: 1;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n opacity: var(--gnome-opacity-dim, 0.55);\n\n white-space: nowrap;\n pointer-events: none;\n user-select: none;\n}\n\n/* ─── Dark mode ──────────────────────────────────────────────────────────────── */\n\n@media (prefers-color-scheme: dark) {\n .track {\n background-color: rgba(255, 255, 255, 0.15);\n }\n\n .thumb {\n box-shadow:\n 0 1px 4px rgba(0, 0, 0, 0.5),\n 0 0 0 2px var(--gnome-window-bg-color, #242424);\n }\n\n .track:focus-visible .thumb,\n .track:active .thumb {\n box-shadow:\n 0 2px 8px rgba(0, 0, 0, 0.6),\n 0 0 0 2px var(--gnome-window-bg-color, #242424);\n }\n\n .tick {\n background-color: var(--gnome-window-bg-color, #242424);\n }\n}\n\n/* ─── Reduced motion ─────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .thumb {\n transition: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Slider.module.css.js","names":[],"sources":["../../../src/components/Slider/Slider.module.css"],"sourcesContent":["/* ─── Outer wrapper ──────────────────────────────────────────────────────────── */\n\n.wrapper {\n display: flex;\n flex-direction: column;\n width: 100%;\n /* Vertical space for thumb overflow */\n padding: 10px 0;\n}\n\n.hasLabels {\n padding-bottom: 0;\n}\n\n/* ─── Track ──────────────────────────────────────────────────────────────────── */\n\n.track {\n position: relative;\n width: 100%;\n height: 6px;\n\n background-color: var(--gnome-card-shade-color, rgba(0, 0, 0, 0.15));\n border-radius: var(--gnome-radius-pill, 9999px);\n\n cursor: pointer;\n touch-action: none; /* prevent scroll interference during drag */\n user-select: none;\n\n outline: none;\n}\n\n.track:focus-visible {\n /* Focus ring on the track itself as a fallback */\n box-shadow:\n 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4);\n}\n\n/* ─── Disabled ───────────────────────────────────────────────────────────────── */\n\n.disabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ─── Filled section (left of thumb) ────────────────────────────────────────── */\n\n.fill {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n border-radius: var(--gnome-radius-pill, 9999px);\n\n background-color: var(--gnome-accent-bg-color, #3584e4);\n\n pointer-events: none;\n}\n\n/* ─── Thumb ──────────────────────────────────────────────────────────────────── */\n\n.thumb {\n position: absolute;\n top: 50%;\n /* Translate left by half thumb width so it centres on the left edge of .fill */\n transform: translate(-50%, -50%);\n\n width: 22px;\n height: 22px;\n border-radius: var(--gnome-radius-pill, 9999px);\n\n background-color: var(--gnome-accent-bg-color, #3584e4);\n box-shadow:\n 0 1px 3px rgba(0, 0, 0, 0.25),\n 0 0 0 2px var(--gnome-window-bg-color, #fafafa);\n\n pointer-events: none;\n\n transition:\n transform var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease),\n box-shadow var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease);\n}\n\n/* Slightly larger thumb on focus / active drag */\n.track:focus-visible .thumb,\n.track:active .thumb {\n transform: translate(-50%, -50%) scale(1.18);\n box-shadow:\n 0 2px 6px rgba(0, 0, 0, 0.3),\n 0 0 0 2px var(--gnome-window-bg-color, #fafafa);\n}\n\n/* ─── Tick marks ─────────────────────────────────────────────────────────────── */\n\n.tick {\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n\n width: 4px;\n height: 4px;\n border-radius: 50%;\n\n background-color: var(--gnome-window-bg-color, #fafafa);\n pointer-events: none;\n}\n\n/* ─── Labels row ─────────────────────────────────────────────────────────────── */\n\n.labels {\n position: relative;\n width: 100%;\n height: 20px;\n margin-top: var(--gnome-space-1, 6px);\n}\n\n.markLabel {\n position: absolute;\n transform: translateX(-50%);\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-caption, 0.8125rem);\n line-height: 1;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n opacity: var(--gnome-opacity-dim, 0.55);\n\n white-space: nowrap;\n pointer-events: none;\n user-select: none;\n}\n\n/* ─── Dark mode ──────────────────────────────────────────────────────────────── */\n\n@media (prefers-color-scheme: dark) {\n .track {\n background-color: rgba(255, 255, 255, 0.15);\n }\n\n .thumb {\n box-shadow:\n 0 1px 4px rgba(0, 0, 0, 0.5),\n 0 0 0 2px var(--gnome-window-bg-color, #242424);\n }\n\n .track:focus-visible .thumb,\n .track:active .thumb {\n box-shadow:\n 0 2px 8px rgba(0, 0, 0, 0.6),\n 0 0 0 2px var(--gnome-window-bg-color, #242424);\n }\n\n .tick {\n background-color: var(--gnome-window-bg-color, #242424);\n }\n}\n\n/* ─── Reduced motion ─────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .thumb {\n transition: none;\n }\n}\n"],"mappings":""}
@@ -1,2 +1,2 @@
1
- export { Slider } from './Slider';
2
1
  export type { SliderProps } from './Slider';
2
+ export { Slider } from './Slider';
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./Slider/Slider.cjs`);exports.Slider=e.Slider;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./Slider/Slider.cjs");exports.Slider=e.Slider;
@@ -1,2 +1,2 @@
1
- const e=require(`./SpinButton.module.css.cjs`);let t=require(`react`),n=require(`react/jsx-runtime`);function r(e){let t=e.toString(),n=t.indexOf(`.`);return n===-1?0:t.length-n-1}function i(e,t,n){return Math.min(n,Math.max(t,e))}function a({value:a,onChange:o,min:s=0,max:c=100,step:l=1,decimals:u,disabled:d=!1,className:f,"aria-label":p,"aria-labelledby":m,...h}){let g=u??r(l),_=(0,t.useCallback)(e=>o(parseFloat(i(e,s,c).toFixed(g))),[o,s,c,g]),v=(0,t.useCallback)(e=>{switch(e.key){case`ArrowUp`:e.preventDefault(),_(a+l);break;case`ArrowDown`:e.preventDefault(),_(a-l);break;case`PageUp`:e.preventDefault(),_(a+l*10);break;case`PageDown`:e.preventDefault(),_(a-l*10);break;case`Home`:e.preventDefault(),_(s);break;case`End`:e.preventDefault(),_(c);break}},[a,l,s,c,_]);return(0,n.jsxs)(`div`,{role:`spinbutton`,"aria-valuenow":a,"aria-valuemin":s,"aria-valuemax":c,"aria-label":p,"aria-labelledby":m,"aria-disabled":d||void 0,tabIndex:d?-1:0,onKeyDown:d?void 0:v,className:[e.default.spin,d?e.default.disabled:null,f].filter(Boolean).join(` `),...h,children:[(0,n.jsx)(`button`,{type:`button`,tabIndex:-1,"aria-hidden":`true`,disabled:d||a<=s,className:e.default.btn,onClick:()=>_(a-l),children:`−`}),(0,n.jsx)(`span`,{className:e.default.value,"aria-hidden":`true`,children:a.toFixed(g)}),(0,n.jsx)(`button`,{type:`button`,tabIndex:-1,"aria-hidden":`true`,disabled:d||a>=c,className:e.default.btn,onClick:()=>_(a+l),children:`+`})]})}exports.SpinButton=a;
1
+ const e=require("./SpinButton.module.css.cjs");let t=require("react"),n=require("react/jsx-runtime");function r(e){let t=e.toString(),n=t.indexOf(`.`);return n===-1?0:t.length-n-1}function i(e,t,n){return Math.min(n,Math.max(t,e))}var a=({value:a,onChange:o,min:s=0,max:c=100,step:l=1,decimals:u,disabled:d=!1,className:f,"aria-label":p,"aria-labelledby":m,...h})=>{let g=u??r(l),_=(0,t.useCallback)(e=>o(parseFloat(i(e,s,c).toFixed(g))),[o,s,c,g]),v=(0,t.useCallback)(e=>{switch(e.key){case`ArrowUp`:e.preventDefault(),_(a+l);break;case`ArrowDown`:e.preventDefault(),_(a-l);break;case`PageUp`:e.preventDefault(),_(a+l*10);break;case`PageDown`:e.preventDefault(),_(a-l*10);break;case`Home`:e.preventDefault(),_(s);break;case`End`:e.preventDefault(),_(c);break}},[a,l,s,c,_]);return(0,n.jsxs)(`div`,{role:`spinbutton`,"aria-valuenow":a,"aria-valuemin":s,"aria-valuemax":c,"aria-label":p,"aria-labelledby":m,"aria-disabled":d||void 0,tabIndex:d?-1:0,onKeyDown:d?void 0:v,className:[e.default.spin,d?e.default.disabled:null,f].filter(Boolean).join(` `),...h,children:[(0,n.jsx)(`button`,{type:`button`,tabIndex:-1,"aria-hidden":`true`,disabled:d||a<=s,className:e.default.btn,onClick:()=>_(a-l),children:`−`}),(0,n.jsx)(`span`,{className:e.default.value,"aria-hidden":`true`,children:a.toFixed(g)}),(0,n.jsx)(`button`,{type:`button`,tabIndex:-1,"aria-hidden":`true`,disabled:d||a>=c,className:e.default.btn,onClick:()=>_(a+l),children:`+`})]})};exports.SpinButton=a;
2
2
  //# sourceMappingURL=SpinButton.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"SpinButton.cjs","names":[],"sources":["../../../src/components/SpinButton/SpinButton.tsx"],"sourcesContent":["import { useCallback, type KeyboardEvent, type HTMLAttributes } from \"react\";\nimport styles from \"./SpinButton.module.css\";\n\nexport interface SpinButtonProps\n extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\"> {\n /** Current value. */\n value: number;\n /** Called when the value changes. */\n onChange: (value: number) => void;\n /** Minimum allowed value. Defaults to `0`. */\n min?: number;\n /** Maximum allowed value. Defaults to `100`. */\n max?: number;\n /** Amount to increment/decrement per step. Defaults to `1`. */\n step?: number;\n /** Number of decimal places shown. Derived from `step` when omitted. */\n decimals?: number;\n /** Disables the control. */\n disabled?: boolean;\n /** Accessible label. Required when no visible `<label>` is associated. */\n \"aria-label\"?: string;\n /** Associates the control with a visible label element. */\n \"aria-labelledby\"?: string;\n}\n\nfunction countDecimals(n: number): number {\n const s = n.toString();\n const dot = s.indexOf(\".\");\n return dot === -1 ? 0 : s.length - dot - 1;\n}\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(max, Math.max(min, value));\n}\n\n/**\n * Numeric input with − and + buttons following the Adwaita `GtkSpinButton` style.\n *\n * Supports keyboard interaction: ↑/↓ increment by one step,\n * Page Up/Down increment by 10×, Home/End jump to min/max.\n *\n * @see https://developer.gnome.org/hig/patterns/controls/spin-buttons.html\n */\nexport function SpinButton({\n value,\n onChange,\n min = 0,\n max = 100,\n step = 1,\n decimals,\n disabled = false,\n className,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n ...props\n}: SpinButtonProps) {\n const dp = decimals ?? countDecimals(step);\n\n const set = useCallback(\n (next: number) => onChange(parseFloat(clamp(next, min, max).toFixed(dp))),\n [onChange, min, max, dp],\n );\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n switch (e.key) {\n case \"ArrowUp\": e.preventDefault(); set(value + step); break;\n case \"ArrowDown\": e.preventDefault(); set(value - step); break;\n case \"PageUp\": e.preventDefault(); set(value + step * 10); break;\n case \"PageDown\": e.preventDefault(); set(value - step * 10); break;\n case \"Home\": e.preventDefault(); set(min); break;\n case \"End\": e.preventDefault(); set(max); break;\n }\n },\n [value, step, min, max, set],\n );\n\n return (\n <div\n role=\"spinbutton\"\n aria-valuenow={value}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-disabled={disabled || undefined}\n tabIndex={disabled ? -1 : 0}\n onKeyDown={disabled ? undefined : handleKeyDown}\n className={[styles.spin, disabled ? styles.disabled : null, className]\n .filter(Boolean)\n .join(\" \")}\n {...props}\n >\n <button\n type=\"button\"\n tabIndex={-1}\n aria-hidden=\"true\"\n disabled={disabled || value <= min}\n className={styles.btn}\n onClick={() => set(value - step)}\n >\n −\n </button>\n\n <span className={styles.value} aria-hidden=\"true\">\n {value.toFixed(dp)}\n </span>\n\n <button\n type=\"button\"\n tabIndex={-1}\n aria-hidden=\"true\"\n disabled={disabled || value >= max}\n className={styles.btn}\n onClick={() => set(value + step)}\n >\n +\n </button>\n </div>\n );\n}\n"],"mappings":"qGAyBA,SAAS,EAAc,EAAmB,CACxC,IAAM,EAAI,EAAE,UAAU,CAChB,EAAM,EAAE,QAAQ,IAAI,CAC1B,OAAO,IAAQ,GAAK,EAAI,EAAE,OAAS,EAAM,EAG3C,SAAS,EAAM,EAAe,EAAa,EAAqB,CAC9D,OAAO,KAAK,IAAI,EAAK,KAAK,IAAI,EAAK,EAAM,CAAC,CAW5C,SAAgB,EAAW,CACzB,QACA,WACA,MAAM,EACN,MAAM,IACN,OAAO,EACP,WACA,WAAW,GACX,YACA,aAAc,EACd,kBAAmB,EACnB,GAAG,GACe,CAClB,IAAM,EAAK,GAAY,EAAc,EAAK,CAEpC,GAAA,EAAA,EAAA,aACH,GAAiB,EAAS,WAAW,EAAM,EAAM,EAAK,EAAI,CAAC,QAAQ,EAAG,CAAC,CAAC,CACzE,CAAC,EAAU,EAAK,EAAK,EAAG,CACzB,CAEK,GAAA,EAAA,EAAA,aACH,GAAqC,CACpC,OAAQ,EAAE,IAAV,CACE,IAAK,UAAa,EAAE,gBAAgB,CAAE,EAAI,EAAQ,EAAK,CAAE,MACzD,IAAK,YAAa,EAAE,gBAAgB,CAAE,EAAI,EAAQ,EAAK,CAAE,MACzD,IAAK,SAAa,EAAE,gBAAgB,CAAE,EAAI,EAAQ,EAAO,GAAG,CAAE,MAC9D,IAAK,WAAa,EAAE,gBAAgB,CAAE,EAAI,EAAQ,EAAO,GAAG,CAAE,MAC9D,IAAK,OAAa,EAAE,gBAAgB,CAAE,EAAI,EAAI,CAAE,MAChD,IAAK,MAAa,EAAE,gBAAgB,CAAE,EAAI,EAAI,CAAE,QAGpD,CAAC,EAAO,EAAM,EAAK,EAAK,EAAI,CAC7B,CAED,OACE,EAAA,EAAA,MAAC,MAAD,CACE,KAAK,aACL,gBAAe,EACf,gBAAe,EACf,gBAAe,EACf,aAAY,EACZ,kBAAiB,EACjB,gBAAe,GAAY,IAAA,GAC3B,SAAU,EAAW,GAAK,EAC1B,UAAW,EAAW,IAAA,GAAY,EAClC,UAAW,CAAC,EAAA,QAAO,KAAM,EAAW,EAAA,QAAO,SAAW,KAAM,EAAU,CACnE,OAAO,QAAQ,CACf,KAAK,IAAI,CACZ,GAAI,WAbN,EAeE,EAAA,EAAA,KAAC,SAAD,CACE,KAAK,SACL,SAAU,GACV,cAAY,OACZ,SAAU,GAAY,GAAS,EAC/B,UAAW,EAAA,QAAO,IAClB,YAAe,EAAI,EAAQ,EAAK,UACjC,IAEQ,CAAA,EAET,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,MAAO,cAAY,gBACxC,EAAM,QAAQ,EAAG,CACb,CAAA,EAEP,EAAA,EAAA,KAAC,SAAD,CACE,KAAK,SACL,SAAU,GACV,cAAY,OACZ,SAAU,GAAY,GAAS,EAC/B,UAAW,EAAA,QAAO,IAClB,YAAe,EAAI,EAAQ,EAAK,UACjC,IAEQ,CAAA,CACL"}
1
+ {"version":3,"file":"SpinButton.cjs","names":[],"sources":["../../../src/components/SpinButton/SpinButton.tsx"],"sourcesContent":["import { type HTMLAttributes, type KeyboardEvent, useCallback } from 'react';\n\nimport styles from './SpinButton.module.css';\n\nexport interface SpinButtonProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {\n /** Current value. */\n value: number;\n /** Called when the value changes. */\n onChange: (value: number) => void;\n /** Minimum allowed value. Defaults to `0`. */\n min?: number;\n /** Maximum allowed value. Defaults to `100`. */\n max?: number;\n /** Amount to increment/decrement per step. Defaults to `1`. */\n step?: number;\n /** Number of decimal places shown. Derived from `step` when omitted. */\n decimals?: number;\n /** Disables the control. */\n disabled?: boolean;\n /** Accessible label. Required when no visible `<label>` is associated. */\n 'aria-label'?: string;\n /** Associates the control with a visible label element. */\n 'aria-labelledby'?: string;\n}\n\nfunction countDecimals(n: number): number {\n const s = n.toString();\n const dot = s.indexOf('.');\n\n return dot === -1 ? 0 : s.length - dot - 1;\n}\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(max, Math.max(min, value));\n}\n\n/**\n * Numeric input with − and + buttons following the Adwaita `GtkSpinButton` style.\n *\n * Supports keyboard interaction: ↑/↓ increment by one step,\n * Page Up/Down increment by 10×, Home/End jump to min/max.\n *\n * @see https://developer.gnome.org/hig/patterns/controls/spin-buttons.html\n */\nexport const SpinButton = ({\n value,\n onChange,\n min = 0,\n max = 100,\n step = 1,\n decimals,\n disabled = false,\n className,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n ...props\n}: SpinButtonProps) => {\n const dp = decimals ?? countDecimals(step);\n\n const set = useCallback(\n (next: number) => onChange(parseFloat(clamp(next, min, max).toFixed(dp))),\n [onChange, min, max, dp],\n );\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n switch (e.key) {\n case 'ArrowUp':\n e.preventDefault();\n set(value + step);\n break;\n case 'ArrowDown':\n e.preventDefault();\n set(value - step);\n break;\n case 'PageUp':\n e.preventDefault();\n set(value + step * 10);\n break;\n case 'PageDown':\n e.preventDefault();\n set(value - step * 10);\n break;\n case 'Home':\n e.preventDefault();\n set(min);\n break;\n case 'End':\n e.preventDefault();\n set(max);\n break;\n }\n },\n [value, step, min, max, set],\n );\n\n return (\n <div\n role=\"spinbutton\"\n aria-valuenow={value}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-disabled={disabled || undefined}\n tabIndex={disabled ? -1 : 0}\n onKeyDown={disabled ? undefined : handleKeyDown}\n className={[styles.spin, disabled ? styles.disabled : null, className]\n .filter(Boolean)\n .join(' ')}\n {...props}\n >\n <button\n type=\"button\"\n tabIndex={-1}\n aria-hidden=\"true\"\n disabled={disabled || value <= min}\n className={styles.btn}\n onClick={() => set(value - step)}\n >\n −\n </button>\n\n <span className={styles.value} aria-hidden=\"true\">\n {value.toFixed(dp)}\n </span>\n\n <button\n type=\"button\"\n tabIndex={-1}\n aria-hidden=\"true\"\n disabled={disabled || value >= max}\n className={styles.btn}\n onClick={() => set(value + step)}\n >\n +\n </button>\n </div>\n );\n};\n"],"mappings":"qGAyBA,SAAS,EAAc,EAAmB,CACxC,IAAM,EAAI,EAAE,SAAS,EACf,EAAM,EAAE,QAAQ,GAAG,EAEzB,OAAO,IAAQ,GAAK,EAAI,EAAE,OAAS,EAAM,CAC3C,CAEA,SAAS,EAAM,EAAe,EAAa,EAAqB,CAC9D,OAAO,KAAK,IAAI,EAAK,KAAK,IAAI,EAAK,CAAK,CAAC,CAC3C,CAUA,IAAa,GAAc,CACzB,QACA,WACA,MAAM,EACN,MAAM,IACN,OAAO,EACP,WACA,WAAW,GACX,YACA,aAAc,EACd,kBAAmB,EACnB,GAAG,KACkB,CACrB,IAAM,EAAK,GAAY,EAAc,CAAI,EAEnC,GAAA,EAAA,EAAA,aACH,GAAiB,EAAS,WAAW,EAAM,EAAM,EAAK,CAAG,EAAE,QAAQ,CAAE,CAAC,CAAC,EACxE,CAAC,EAAU,EAAK,EAAK,CAAE,CACzB,EAEM,GAAA,EAAA,EAAA,aACH,GAAqC,CACpC,OAAQ,EAAE,IAAV,CACE,IAAK,UACH,EAAE,eAAe,EACjB,EAAI,EAAQ,CAAI,EAChB,MACF,IAAK,YACH,EAAE,eAAe,EACjB,EAAI,EAAQ,CAAI,EAChB,MACF,IAAK,SACH,EAAE,eAAe,EACjB,EAAI,EAAQ,EAAO,EAAE,EACrB,MACF,IAAK,WACH,EAAE,eAAe,EACjB,EAAI,EAAQ,EAAO,EAAE,EACrB,MACF,IAAK,OACH,EAAE,eAAe,EACjB,EAAI,CAAG,EACP,MACF,IAAK,MACH,EAAE,eAAe,EACjB,EAAI,CAAG,EACP,KACJ,CACF,EACA,CAAC,EAAO,EAAM,EAAK,EAAK,CAAG,CAC7B,EAEA,OACE,EAAA,EAAA,MAAC,MAAD,CACE,KAAK,aACL,gBAAe,EACf,gBAAe,EACf,gBAAe,EACf,aAAY,EACZ,kBAAiB,EACjB,gBAAe,GAAY,IAAA,GAC3B,SAAU,EAAW,GAAK,EAC1B,UAAW,EAAW,IAAA,GAAY,EAClC,UAAW,CAAC,EAAA,QAAO,KAAM,EAAW,EAAA,QAAO,SAAW,KAAM,CAAS,EAClE,OAAO,OAAO,EACd,KAAK,GAAG,EACX,GAAI,WAbN,EAeE,EAAA,EAAA,KAAC,SAAD,CACE,KAAK,SACL,SAAU,GACV,cAAY,OACZ,SAAU,GAAY,GAAS,EAC/B,UAAW,EAAA,QAAO,IAClB,YAAe,EAAI,EAAQ,CAAI,WAChC,GAEO,CAAA,GAER,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,MAAO,cAAY,gBACxC,EAAM,QAAQ,CAAE,CACb,CAAA,GAEN,EAAA,EAAA,KAAC,SAAD,CACE,KAAK,SACL,SAAU,GACV,cAAY,OACZ,SAAU,GAAY,GAAS,EAC/B,UAAW,EAAA,QAAO,IAClB,YAAe,EAAI,EAAQ,CAAI,WAChC,GAEO,CAAA,CACL,GAET"}