@gnome-ui/react 1.44.0 → 1.45.1

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 (624) hide show
  1. package/README.md +7 -1
  2. package/dist/components/AboutDialog/AboutDialog.cjs +1 -1
  3. package/dist/components/AboutDialog/AboutDialog.cjs.map +1 -1
  4. package/dist/components/AboutDialog/AboutDialog.js +1 -1
  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 +3 -3
  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/ActionRow/ActionRow.cjs.map +1 -1
  12. package/dist/components/ActionRow/ActionRow.d.ts +1 -1
  13. package/dist/components/ActionRow/ActionRow.js.map +1 -1
  14. package/dist/components/ActionRow/ActionRow.module.css.cjs +1 -1
  15. package/dist/components/ActionRow/ActionRow.module.css.cjs.map +1 -1
  16. package/dist/components/ActionRow/ActionRow.module.css.js +9 -9
  17. package/dist/components/ActionRow/ActionRow.module.css.js.map +1 -1
  18. package/dist/components/ActionRow/index.d.ts +1 -1
  19. package/dist/components/Avatar/Avatar.cjs.map +1 -1
  20. package/dist/components/Avatar/Avatar.d.ts +2 -2
  21. package/dist/components/Avatar/Avatar.js.map +1 -1
  22. package/dist/components/Avatar/Avatar.module.css.cjs +1 -1
  23. package/dist/components/Avatar/Avatar.module.css.cjs.map +1 -1
  24. package/dist/components/Avatar/Avatar.module.css.js +16 -16
  25. package/dist/components/Avatar/Avatar.module.css.js.map +1 -1
  26. package/dist/components/Avatar/index.d.ts +1 -1
  27. package/dist/components/AvatarRotator/AvatarRotator.cjs.map +1 -1
  28. package/dist/components/AvatarRotator/AvatarRotator.js.map +1 -1
  29. package/dist/components/AvatarRotator/index.d.ts +1 -1
  30. package/dist/components/Badge/Badge.cjs.map +1 -1
  31. package/dist/components/Badge/Badge.d.ts +1 -1
  32. package/dist/components/Badge/Badge.js.map +1 -1
  33. package/dist/components/Badge/Badge.module.css.cjs +1 -1
  34. package/dist/components/Badge/Badge.module.css.cjs.map +1 -1
  35. package/dist/components/Badge/Badge.module.css.js +9 -9
  36. package/dist/components/Badge/Badge.module.css.js.map +1 -1
  37. package/dist/components/Badge/index.d.ts +1 -1
  38. package/dist/components/Banner/Banner.cjs.map +1 -1
  39. package/dist/components/Banner/Banner.d.ts +1 -1
  40. package/dist/components/Banner/Banner.js.map +1 -1
  41. package/dist/components/Banner/Banner.module.css.cjs +1 -1
  42. package/dist/components/Banner/Banner.module.css.cjs.map +1 -1
  43. package/dist/components/Banner/Banner.module.css.js +5 -5
  44. package/dist/components/Banner/Banner.module.css.js.map +1 -1
  45. package/dist/components/Banner/index.d.ts +1 -1
  46. package/dist/components/Bin/Bin.cjs.map +1 -1
  47. package/dist/components/Bin/Bin.js.map +1 -1
  48. package/dist/components/Bin/index.d.ts +1 -1
  49. package/dist/components/Blockquote/Blockquote.cjs.map +1 -1
  50. package/dist/components/Blockquote/Blockquote.d.ts +1 -1
  51. package/dist/components/Blockquote/Blockquote.js.map +1 -1
  52. package/dist/components/Blockquote/Blockquote.module.css.cjs +1 -1
  53. package/dist/components/Blockquote/Blockquote.module.css.cjs.map +1 -1
  54. package/dist/components/Blockquote/Blockquote.module.css.js +11 -11
  55. package/dist/components/Blockquote/Blockquote.module.css.js.map +1 -1
  56. package/dist/components/Blockquote/index.d.ts +1 -1
  57. package/dist/components/BottomSheet/BottomSheet.cjs.map +1 -1
  58. package/dist/components/BottomSheet/BottomSheet.d.ts +1 -1
  59. package/dist/components/BottomSheet/BottomSheet.js.map +1 -1
  60. package/dist/components/BottomSheet/BottomSheet.module.css.cjs +1 -1
  61. package/dist/components/BottomSheet/BottomSheet.module.css.cjs.map +1 -1
  62. package/dist/components/BottomSheet/BottomSheet.module.css.js +3 -3
  63. package/dist/components/BottomSheet/BottomSheet.module.css.js.map +1 -1
  64. package/dist/components/BottomSheet/index.d.ts +1 -1
  65. package/dist/components/Box/Box.cjs.map +1 -1
  66. package/dist/components/Box/Box.d.ts +3 -3
  67. package/dist/components/Box/Box.js.map +1 -1
  68. package/dist/components/Box/index.d.ts +1 -1
  69. package/dist/components/BoxedList/BoxedList.cjs +1 -1
  70. package/dist/components/BoxedList/BoxedList.cjs.map +1 -1
  71. package/dist/components/BoxedList/BoxedList.d.ts +1 -1
  72. package/dist/components/BoxedList/BoxedList.js +0 -1
  73. package/dist/components/BoxedList/BoxedList.js.map +1 -1
  74. package/dist/components/BoxedList/BoxedList.module.css.cjs +1 -1
  75. package/dist/components/BoxedList/BoxedList.module.css.cjs.map +1 -1
  76. package/dist/components/BoxedList/BoxedList.module.css.js +5 -5
  77. package/dist/components/BoxedList/BoxedList.module.css.js.map +1 -1
  78. package/dist/components/BoxedList/index.d.ts +1 -1
  79. package/dist/components/BreakpointBin/BreakpointBin.cjs +1 -1
  80. package/dist/components/BreakpointBin/BreakpointBin.cjs.map +1 -1
  81. package/dist/components/BreakpointBin/BreakpointBin.d.ts +1 -1
  82. package/dist/components/BreakpointBin/BreakpointBin.js +1 -1
  83. package/dist/components/BreakpointBin/BreakpointBin.js.map +1 -1
  84. package/dist/components/BreakpointBin/index.d.ts +1 -1
  85. package/dist/components/Button/Button.cjs.map +1 -1
  86. package/dist/components/Button/Button.d.ts +3 -3
  87. package/dist/components/Button/Button.js.map +1 -1
  88. package/dist/components/Button/Button.module.css.cjs +1 -1
  89. package/dist/components/Button/Button.module.css.cjs.map +1 -1
  90. package/dist/components/Button/Button.module.css.js +11 -11
  91. package/dist/components/Button/Button.module.css.js.map +1 -1
  92. package/dist/components/Button/index.d.ts +1 -1
  93. package/dist/components/ButtonContent/ButtonContent.cjs.map +1 -1
  94. package/dist/components/ButtonContent/ButtonContent.d.ts +1 -1
  95. package/dist/components/ButtonContent/ButtonContent.js.map +1 -1
  96. package/dist/components/ButtonContent/index.d.ts +1 -1
  97. package/dist/components/ButtonRow/ButtonRow.cjs.map +1 -1
  98. package/dist/components/ButtonRow/ButtonRow.d.ts +1 -1
  99. package/dist/components/ButtonRow/ButtonRow.js.map +1 -1
  100. package/dist/components/ButtonRow/ButtonRow.module.css.cjs +1 -1
  101. package/dist/components/ButtonRow/ButtonRow.module.css.cjs.map +1 -1
  102. package/dist/components/ButtonRow/ButtonRow.module.css.js +7 -7
  103. package/dist/components/ButtonRow/ButtonRow.module.css.js.map +1 -1
  104. package/dist/components/ButtonRow/index.d.ts +1 -1
  105. package/dist/components/Card/Card.cjs.map +1 -1
  106. package/dist/components/Card/Card.d.ts +1 -1
  107. package/dist/components/Card/Card.js.map +1 -1
  108. package/dist/components/Card/Card.module.css.cjs +1 -1
  109. package/dist/components/Card/Card.module.css.cjs.map +1 -1
  110. package/dist/components/Card/Card.module.css.js +5 -5
  111. package/dist/components/Card/Card.module.css.js.map +1 -1
  112. package/dist/components/Card/index.d.ts +1 -1
  113. package/dist/components/Carousel/Carousel.cjs +1 -1
  114. package/dist/components/Carousel/Carousel.cjs.map +1 -1
  115. package/dist/components/Carousel/Carousel.d.ts +1 -1
  116. package/dist/components/Carousel/Carousel.js +7 -6
  117. package/dist/components/Carousel/Carousel.js.map +1 -1
  118. package/dist/components/Carousel/Carousel.module.css.cjs +1 -1
  119. package/dist/components/Carousel/Carousel.module.css.cjs.map +1 -1
  120. package/dist/components/Carousel/Carousel.module.css.js +10 -10
  121. package/dist/components/Carousel/Carousel.module.css.js.map +1 -1
  122. package/dist/components/Carousel/index.d.ts +1 -1
  123. package/dist/components/CheckRow/CheckRow.cjs.map +1 -1
  124. package/dist/components/CheckRow/CheckRow.d.ts +1 -1
  125. package/dist/components/CheckRow/CheckRow.js.map +1 -1
  126. package/dist/components/CheckRow/CheckRow.module.css.cjs +1 -1
  127. package/dist/components/CheckRow/CheckRow.module.css.cjs.map +1 -1
  128. package/dist/components/CheckRow/CheckRow.module.css.js +10 -10
  129. package/dist/components/CheckRow/CheckRow.module.css.js.map +1 -1
  130. package/dist/components/CheckRow/index.d.ts +1 -1
  131. package/dist/components/Checkbox/Checkbox.cjs.map +1 -1
  132. package/dist/components/Checkbox/Checkbox.d.ts +2 -2
  133. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  134. package/dist/components/Checkbox/Checkbox.module.css.cjs +1 -1
  135. package/dist/components/Checkbox/Checkbox.module.css.cjs.map +1 -1
  136. package/dist/components/Checkbox/Checkbox.module.css.js +1 -1
  137. package/dist/components/Checkbox/Checkbox.module.css.js.map +1 -1
  138. package/dist/components/Checkbox/index.d.ts +1 -1
  139. package/dist/components/Chip/Chip.cjs.map +1 -1
  140. package/dist/components/Chip/Chip.d.ts +1 -1
  141. package/dist/components/Chip/Chip.js.map +1 -1
  142. package/dist/components/Chip/Chip.module.css.cjs +1 -1
  143. package/dist/components/Chip/Chip.module.css.cjs.map +1 -1
  144. package/dist/components/Chip/Chip.module.css.js +7 -7
  145. package/dist/components/Chip/Chip.module.css.js.map +1 -1
  146. package/dist/components/Chip/index.d.ts +1 -1
  147. package/dist/components/Clamp/Clamp.cjs.map +1 -1
  148. package/dist/components/Clamp/Clamp.js.map +1 -1
  149. package/dist/components/Clamp/index.d.ts +1 -1
  150. package/dist/components/ColorPicker/ColorPicker.cjs.map +1 -1
  151. package/dist/components/ColorPicker/ColorPicker.d.ts +6 -6
  152. package/dist/components/ColorPicker/ColorPicker.js.map +1 -1
  153. package/dist/components/ColorPicker/ColorPicker.module.css.cjs +1 -1
  154. package/dist/components/ColorPicker/ColorPicker.module.css.cjs.map +1 -1
  155. package/dist/components/ColorPicker/ColorPicker.module.css.js +4 -4
  156. package/dist/components/ColorPicker/ColorPicker.module.css.js.map +1 -1
  157. package/dist/components/ColorPicker/index.d.ts +1 -1
  158. package/dist/components/ColumnView/ColumnView.cjs +1 -1
  159. package/dist/components/ColumnView/ColumnView.cjs.map +1 -1
  160. package/dist/components/ColumnView/ColumnView.d.ts +3 -3
  161. package/dist/components/ColumnView/ColumnView.js +2 -5
  162. package/dist/components/ColumnView/ColumnView.js.map +1 -1
  163. package/dist/components/ColumnView/ColumnView.module.css.cjs +1 -1
  164. package/dist/components/ColumnView/ColumnView.module.css.cjs.map +1 -1
  165. package/dist/components/ColumnView/ColumnView.module.css.js +22 -22
  166. package/dist/components/ColumnView/ColumnView.module.css.js.map +1 -1
  167. package/dist/components/ColumnView/index.d.ts +1 -1
  168. package/dist/components/ComboRow/ComboRow.cjs +1 -1
  169. package/dist/components/ComboRow/ComboRow.cjs.map +1 -1
  170. package/dist/components/ComboRow/ComboRow.d.ts +1 -1
  171. package/dist/components/ComboRow/ComboRow.js +0 -2
  172. package/dist/components/ComboRow/ComboRow.js.map +1 -1
  173. package/dist/components/ComboRow/ComboRow.module.css.cjs +1 -1
  174. package/dist/components/ComboRow/ComboRow.module.css.cjs.map +1 -1
  175. package/dist/components/ComboRow/ComboRow.module.css.js +3 -3
  176. package/dist/components/ComboRow/ComboRow.module.css.js.map +1 -1
  177. package/dist/components/ComboRow/index.d.ts +1 -1
  178. package/dist/components/ContributionGraph/ContributionGraph.cjs +1 -1
  179. package/dist/components/ContributionGraph/ContributionGraph.cjs.map +1 -1
  180. package/dist/components/ContributionGraph/ContributionGraph.js +41 -41
  181. package/dist/components/ContributionGraph/ContributionGraph.js.map +1 -1
  182. package/dist/components/ContributionGraph/index.d.ts +1 -1
  183. package/dist/components/CountDownTimer/CountDownTimer.cjs.map +1 -1
  184. package/dist/components/CountDownTimer/CountDownTimer.d.ts +3 -3
  185. package/dist/components/CountDownTimer/CountDownTimer.js.map +1 -1
  186. package/dist/components/CountDownTimer/index.d.ts +1 -1
  187. package/dist/components/Dialog/Dialog.cjs.map +1 -1
  188. package/dist/components/Dialog/Dialog.d.ts +4 -4
  189. package/dist/components/Dialog/Dialog.js.map +1 -1
  190. package/dist/components/Dialog/Dialog.module.css.cjs +1 -1
  191. package/dist/components/Dialog/Dialog.module.css.cjs.map +1 -1
  192. package/dist/components/Dialog/Dialog.module.css.js +6 -6
  193. package/dist/components/Dialog/Dialog.module.css.js.map +1 -1
  194. package/dist/components/Dialog/dialogUtils.cjs.map +1 -1
  195. package/dist/components/Dialog/dialogUtils.js.map +1 -1
  196. package/dist/components/Dialog/index.d.ts +1 -1
  197. package/dist/components/Drawer/Drawer.cjs +1 -1
  198. package/dist/components/Drawer/Drawer.cjs.map +1 -1
  199. package/dist/components/Drawer/Drawer.d.ts +3 -3
  200. package/dist/components/Drawer/Drawer.js +49 -38
  201. package/dist/components/Drawer/Drawer.js.map +1 -1
  202. package/dist/components/Drawer/Drawer.module.css.cjs +1 -1
  203. package/dist/components/Drawer/Drawer.module.css.cjs.map +1 -1
  204. package/dist/components/Drawer/Drawer.module.css.js +7 -6
  205. package/dist/components/Drawer/Drawer.module.css.js.map +1 -1
  206. package/dist/components/Drawer/index.d.ts +1 -1
  207. package/dist/components/Dropdown/Dropdown.cjs.map +1 -1
  208. package/dist/components/Dropdown/Dropdown.d.ts +2 -2
  209. package/dist/components/Dropdown/Dropdown.js.map +1 -1
  210. package/dist/components/Dropdown/Dropdown.module.css.cjs +1 -1
  211. package/dist/components/Dropdown/Dropdown.module.css.cjs.map +1 -1
  212. package/dist/components/Dropdown/Dropdown.module.css.js +3 -3
  213. package/dist/components/Dropdown/Dropdown.module.css.js.map +1 -1
  214. package/dist/components/Dropdown/index.d.ts +1 -1
  215. package/dist/components/EntryRow/EntryRow.cjs.map +1 -1
  216. package/dist/components/EntryRow/EntryRow.js.map +1 -1
  217. package/dist/components/EntryRow/EntryRow.module.css.cjs +1 -1
  218. package/dist/components/EntryRow/EntryRow.module.css.cjs.map +1 -1
  219. package/dist/components/EntryRow/EntryRow.module.css.js +10 -10
  220. package/dist/components/EntryRow/EntryRow.module.css.js.map +1 -1
  221. package/dist/components/EntryRow/index.d.ts +1 -1
  222. package/dist/components/ExpanderRow/ExpanderRow.cjs.map +1 -1
  223. package/dist/components/ExpanderRow/ExpanderRow.js.map +1 -1
  224. package/dist/components/ExpanderRow/ExpanderRow.module.css.cjs +1 -1
  225. package/dist/components/ExpanderRow/ExpanderRow.module.css.cjs.map +1 -1
  226. package/dist/components/ExpanderRow/ExpanderRow.module.css.js +14 -14
  227. package/dist/components/ExpanderRow/ExpanderRow.module.css.js.map +1 -1
  228. package/dist/components/ExpanderRow/index.d.ts +1 -1
  229. package/dist/components/Footer/Footer.cjs.map +1 -1
  230. package/dist/components/Footer/Footer.js.map +1 -1
  231. package/dist/components/Footer/index.d.ts +1 -1
  232. package/dist/components/Frame/Frame.cjs.map +1 -1
  233. package/dist/components/Frame/Frame.js.map +1 -1
  234. package/dist/components/Frame/index.d.ts +1 -1
  235. package/dist/components/GnomeProvider/GnomeContext.cjs.map +1 -1
  236. package/dist/components/GnomeProvider/GnomeContext.d.ts +5 -5
  237. package/dist/components/GnomeProvider/GnomeContext.js.map +1 -1
  238. package/dist/components/GnomeProvider/GnomeProvider.cjs.map +1 -1
  239. package/dist/components/GnomeProvider/GnomeProvider.js.map +1 -1
  240. package/dist/components/HeaderBar/HeaderBar.cjs.map +1 -1
  241. package/dist/components/HeaderBar/HeaderBar.d.ts +1 -1
  242. package/dist/components/HeaderBar/HeaderBar.js.map +1 -1
  243. package/dist/components/HeaderBar/index.d.ts +1 -1
  244. package/dist/components/Icon/Icon.cjs.map +1 -1
  245. package/dist/components/Icon/Icon.d.ts +2 -2
  246. package/dist/components/Icon/Icon.js.map +1 -1
  247. package/dist/components/Icon/index.d.ts +1 -1
  248. package/dist/components/IconButton/IconButton.cjs.map +1 -1
  249. package/dist/components/IconButton/IconButton.d.ts +2 -2
  250. package/dist/components/IconButton/IconButton.js.map +1 -1
  251. package/dist/components/IconButton/index.d.ts +1 -1
  252. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.cjs +1 -1
  253. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.cjs.map +1 -1
  254. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.d.ts +3 -3
  255. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.js +8 -8
  256. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.js.map +1 -1
  257. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.module.css.cjs +1 -1
  258. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.module.css.cjs.map +1 -1
  259. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.module.css.js +10 -10
  260. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.module.css.js.map +1 -1
  261. package/dist/components/InlineViewSwitcher/InlineViewSwitcherItem.cjs.map +1 -1
  262. package/dist/components/InlineViewSwitcher/InlineViewSwitcherItem.d.ts +1 -1
  263. package/dist/components/InlineViewSwitcher/InlineViewSwitcherItem.js.map +1 -1
  264. package/dist/components/InlineViewSwitcher/index.d.ts +2 -2
  265. package/dist/components/Link/Link.cjs.map +1 -1
  266. package/dist/components/Link/Link.js.map +1 -1
  267. package/dist/components/Link/Link.module.css.cjs +1 -1
  268. package/dist/components/Link/Link.module.css.cjs.map +1 -1
  269. package/dist/components/Link/Link.module.css.js +2 -2
  270. package/dist/components/Link/Link.module.css.js.map +1 -1
  271. package/dist/components/Link/index.d.ts +1 -1
  272. package/dist/components/LinkedGroup/LinkedGroup.cjs.map +1 -1
  273. package/dist/components/LinkedGroup/LinkedGroup.js.map +1 -1
  274. package/dist/components/LinkedGroup/LinkedGroup.module.css.cjs +1 -1
  275. package/dist/components/LinkedGroup/LinkedGroup.module.css.cjs.map +1 -1
  276. package/dist/components/LinkedGroup/LinkedGroup.module.css.js +2 -2
  277. package/dist/components/LinkedGroup/LinkedGroup.module.css.js.map +1 -1
  278. package/dist/components/LinkedGroup/index.d.ts +1 -1
  279. package/dist/components/NavigationSplitView/NavigationSplitView.cjs.map +1 -1
  280. package/dist/components/NavigationSplitView/NavigationSplitView.d.ts +1 -1
  281. package/dist/components/NavigationSplitView/NavigationSplitView.js.map +1 -1
  282. package/dist/components/NavigationSplitView/index.d.ts +1 -1
  283. package/dist/components/NavigationView/NavigationView.cjs.map +1 -1
  284. package/dist/components/NavigationView/NavigationView.d.ts +2 -2
  285. package/dist/components/NavigationView/NavigationView.js.map +1 -1
  286. package/dist/components/NavigationView/NavigationView.module.css.cjs +1 -1
  287. package/dist/components/NavigationView/NavigationView.module.css.cjs.map +1 -1
  288. package/dist/components/NavigationView/NavigationView.module.css.js +3 -3
  289. package/dist/components/NavigationView/NavigationView.module.css.js.map +1 -1
  290. package/dist/components/NavigationView/index.d.ts +2 -2
  291. package/dist/components/OverlaySplitView/OverlaySplitView.cjs.map +1 -1
  292. package/dist/components/OverlaySplitView/OverlaySplitView.d.ts +2 -2
  293. package/dist/components/OverlaySplitView/OverlaySplitView.js.map +1 -1
  294. package/dist/components/OverlaySplitView/OverlaySplitView.module.css.cjs +1 -1
  295. package/dist/components/OverlaySplitView/OverlaySplitView.module.css.cjs.map +1 -1
  296. package/dist/components/OverlaySplitView/OverlaySplitView.module.css.js +12 -12
  297. package/dist/components/OverlaySplitView/OverlaySplitView.module.css.js.map +1 -1
  298. package/dist/components/OverlaySplitView/index.d.ts +1 -1
  299. package/dist/components/PasswordEntryRow/PasswordEntryRow.cjs.map +1 -1
  300. package/dist/components/PasswordEntryRow/PasswordEntryRow.d.ts +1 -1
  301. package/dist/components/PasswordEntryRow/PasswordEntryRow.js.map +1 -1
  302. package/dist/components/PasswordEntryRow/PasswordEntryRow.module.css.cjs +1 -1
  303. package/dist/components/PasswordEntryRow/PasswordEntryRow.module.css.cjs.map +1 -1
  304. package/dist/components/PasswordEntryRow/PasswordEntryRow.module.css.js +1 -1
  305. package/dist/components/PasswordEntryRow/PasswordEntryRow.module.css.js.map +1 -1
  306. package/dist/components/PasswordEntryRow/index.d.ts +1 -1
  307. package/dist/components/PathBar/PathBar.cjs.map +1 -1
  308. package/dist/components/PathBar/PathBar.js.map +1 -1
  309. package/dist/components/PathBar/PathBar.module.css.cjs +1 -1
  310. package/dist/components/PathBar/PathBar.module.css.cjs.map +1 -1
  311. package/dist/components/PathBar/PathBar.module.css.js +7 -7
  312. package/dist/components/PathBar/PathBar.module.css.js.map +1 -1
  313. package/dist/components/PathBar/index.d.ts +1 -1
  314. package/dist/components/Popover/Popover.cjs.map +1 -1
  315. package/dist/components/Popover/Popover.d.ts +2 -2
  316. package/dist/components/Popover/Popover.js.map +1 -1
  317. package/dist/components/Popover/Popover.module.css.cjs +1 -1
  318. package/dist/components/Popover/Popover.module.css.cjs.map +1 -1
  319. package/dist/components/Popover/Popover.module.css.js +7 -7
  320. package/dist/components/Popover/Popover.module.css.js.map +1 -1
  321. package/dist/components/Popover/index.d.ts +1 -1
  322. package/dist/components/PreferencesDialog/PreferencesDialog.cjs +1 -1
  323. package/dist/components/PreferencesDialog/PreferencesDialog.cjs.map +1 -1
  324. package/dist/components/PreferencesDialog/PreferencesDialog.d.ts +1 -1
  325. package/dist/components/PreferencesDialog/PreferencesDialog.js +0 -1
  326. package/dist/components/PreferencesDialog/PreferencesDialog.js.map +1 -1
  327. package/dist/components/PreferencesDialog/PreferencesDialog.module.css.cjs +1 -1
  328. package/dist/components/PreferencesDialog/PreferencesDialog.module.css.cjs.map +1 -1
  329. package/dist/components/PreferencesDialog/PreferencesDialog.module.css.js +3 -3
  330. package/dist/components/PreferencesDialog/PreferencesDialog.module.css.js.map +1 -1
  331. package/dist/components/PreferencesDialog/index.d.ts +1 -1
  332. package/dist/components/PreferencesGroup/PreferencesGroup.cjs.map +1 -1
  333. package/dist/components/PreferencesGroup/PreferencesGroup.js.map +1 -1
  334. package/dist/components/PreferencesGroup/index.d.ts +1 -1
  335. package/dist/components/PreferencesPage/PreferencesPage.cjs.map +1 -1
  336. package/dist/components/PreferencesPage/PreferencesPage.js.map +1 -1
  337. package/dist/components/PreferencesPage/index.d.ts +1 -1
  338. package/dist/components/ProgressBar/ProgressBar.cjs.map +1 -1
  339. package/dist/components/ProgressBar/ProgressBar.d.ts +4 -4
  340. package/dist/components/ProgressBar/ProgressBar.js.map +1 -1
  341. package/dist/components/ProgressBar/ProgressBar.module.css.cjs +1 -1
  342. package/dist/components/ProgressBar/ProgressBar.module.css.cjs.map +1 -1
  343. package/dist/components/ProgressBar/ProgressBar.module.css.js +8 -8
  344. package/dist/components/ProgressBar/ProgressBar.module.css.js.map +1 -1
  345. package/dist/components/ProgressBar/index.d.ts +1 -1
  346. package/dist/components/RadioButton/RadioButton.cjs.map +1 -1
  347. package/dist/components/RadioButton/RadioButton.d.ts +2 -2
  348. package/dist/components/RadioButton/RadioButton.js.map +1 -1
  349. package/dist/components/RadioButton/RadioButton.module.css.cjs +1 -1
  350. package/dist/components/RadioButton/RadioButton.module.css.cjs.map +1 -1
  351. package/dist/components/RadioButton/RadioButton.module.css.js +1 -1
  352. package/dist/components/RadioButton/RadioButton.module.css.js.map +1 -1
  353. package/dist/components/RadioButton/index.d.ts +1 -1
  354. package/dist/components/SearchBar/SearchBar.cjs +1 -1
  355. package/dist/components/SearchBar/SearchBar.cjs.map +1 -1
  356. package/dist/components/SearchBar/SearchBar.d.ts +1 -1
  357. package/dist/components/SearchBar/SearchBar.js +1 -3
  358. package/dist/components/SearchBar/SearchBar.js.map +1 -1
  359. package/dist/components/SearchBar/SearchBar.module.css.cjs +1 -1
  360. package/dist/components/SearchBar/SearchBar.module.css.cjs.map +1 -1
  361. package/dist/components/SearchBar/SearchBar.module.css.js +13 -13
  362. package/dist/components/SearchBar/SearchBar.module.css.js.map +1 -1
  363. package/dist/components/SearchBar/index.d.ts +1 -1
  364. package/dist/components/SegmentedBar/SegmentedBar.cjs +2 -0
  365. package/dist/components/SegmentedBar/SegmentedBar.cjs.map +1 -0
  366. package/dist/components/SegmentedBar/SegmentedBar.d.ts +42 -0
  367. package/dist/components/SegmentedBar/SegmentedBar.js +40 -0
  368. package/dist/components/SegmentedBar/SegmentedBar.js.map +1 -0
  369. package/dist/components/SegmentedBar/SegmentedBar.module.css.cjs +2 -0
  370. package/dist/components/SegmentedBar/SegmentedBar.module.css.cjs.map +1 -0
  371. package/dist/components/SegmentedBar/SegmentedBar.module.css.js +18 -0
  372. package/dist/components/SegmentedBar/SegmentedBar.module.css.js.map +1 -0
  373. package/dist/components/SegmentedBar/index.d.ts +2 -0
  374. package/dist/components/SegmentedBar.cjs +1 -0
  375. package/dist/components/SegmentedBar.d.ts +2 -0
  376. package/dist/components/SegmentedBar.js +2 -0
  377. package/dist/components/Separator/Separator.cjs.map +1 -1
  378. package/dist/components/Separator/Separator.d.ts +1 -1
  379. package/dist/components/Separator/Separator.js.map +1 -1
  380. package/dist/components/Separator/index.d.ts +1 -1
  381. package/dist/components/ShortcutLabel/ShortcutLabel.cjs.map +1 -1
  382. package/dist/components/ShortcutLabel/ShortcutLabel.js.map +1 -1
  383. package/dist/components/ShortcutLabel/index.d.ts +1 -1
  384. package/dist/components/ShortcutsDialog/ShortcutsDialog.cjs +1 -1
  385. package/dist/components/ShortcutsDialog/ShortcutsDialog.cjs.map +1 -1
  386. package/dist/components/ShortcutsDialog/ShortcutsDialog.js +0 -1
  387. package/dist/components/ShortcutsDialog/ShortcutsDialog.js.map +1 -1
  388. package/dist/components/ShortcutsDialog/ShortcutsDialog.module.css.cjs +1 -1
  389. package/dist/components/ShortcutsDialog/ShortcutsDialog.module.css.cjs.map +1 -1
  390. package/dist/components/ShortcutsDialog/ShortcutsDialog.module.css.js +3 -3
  391. package/dist/components/ShortcutsDialog/ShortcutsDialog.module.css.js.map +1 -1
  392. package/dist/components/ShortcutsDialog/index.d.ts +1 -1
  393. package/dist/components/Sidebar/Sidebar.cjs.map +1 -1
  394. package/dist/components/Sidebar/Sidebar.d.ts +2 -2
  395. package/dist/components/Sidebar/Sidebar.js.map +1 -1
  396. package/dist/components/Sidebar/Sidebar.module.css.cjs +1 -1
  397. package/dist/components/Sidebar/Sidebar.module.css.cjs.map +1 -1
  398. package/dist/components/Sidebar/Sidebar.module.css.js +2 -2
  399. package/dist/components/Sidebar/Sidebar.module.css.js.map +1 -1
  400. package/dist/components/Sidebar/SidebarItem.cjs.map +1 -1
  401. package/dist/components/Sidebar/SidebarItem.d.ts +1 -1
  402. package/dist/components/Sidebar/SidebarItem.js.map +1 -1
  403. package/dist/components/Sidebar/SidebarSection.cjs +1 -1
  404. package/dist/components/Sidebar/SidebarSection.cjs.map +1 -1
  405. package/dist/components/Sidebar/SidebarSection.d.ts +1 -1
  406. package/dist/components/Sidebar/SidebarSection.js +0 -1
  407. package/dist/components/Sidebar/SidebarSection.js.map +1 -1
  408. package/dist/components/Sidebar/index.d.ts +4 -4
  409. package/dist/components/Sidebar.cjs +1 -1
  410. package/dist/components/Sidebar.js +3 -3
  411. package/dist/components/Skeleton/Skeleton.cjs.map +1 -1
  412. package/dist/components/Skeleton/Skeleton.d.ts +1 -1
  413. package/dist/components/Skeleton/Skeleton.js.map +1 -1
  414. package/dist/components/Skeleton/Skeleton.module.css.cjs +1 -1
  415. package/dist/components/Skeleton/Skeleton.module.css.cjs.map +1 -1
  416. package/dist/components/Skeleton/Skeleton.module.css.js +7 -7
  417. package/dist/components/Skeleton/Skeleton.module.css.js.map +1 -1
  418. package/dist/components/Skeleton/index.d.ts +1 -1
  419. package/dist/components/Slider/Slider.cjs.map +1 -1
  420. package/dist/components/Slider/Slider.d.ts +5 -5
  421. package/dist/components/Slider/Slider.js.map +1 -1
  422. package/dist/components/Slider/Slider.module.css.cjs +1 -1
  423. package/dist/components/Slider/Slider.module.css.cjs.map +1 -1
  424. package/dist/components/Slider/Slider.module.css.js +9 -9
  425. package/dist/components/Slider/Slider.module.css.js.map +1 -1
  426. package/dist/components/Slider/index.d.ts +1 -1
  427. package/dist/components/SpinButton/SpinButton.cjs.map +1 -1
  428. package/dist/components/SpinButton/SpinButton.d.ts +4 -4
  429. package/dist/components/SpinButton/SpinButton.js.map +1 -1
  430. package/dist/components/SpinButton/SpinButton.module.css.cjs +1 -1
  431. package/dist/components/SpinButton/SpinButton.module.css.cjs.map +1 -1
  432. package/dist/components/SpinButton/SpinButton.module.css.js +4 -4
  433. package/dist/components/SpinButton/SpinButton.module.css.js.map +1 -1
  434. package/dist/components/SpinButton/index.d.ts +1 -1
  435. package/dist/components/SpinRow/SpinRow.cjs.map +1 -1
  436. package/dist/components/SpinRow/SpinRow.d.ts +1 -1
  437. package/dist/components/SpinRow/SpinRow.js.map +1 -1
  438. package/dist/components/SpinRow/SpinRow.module.css.cjs +1 -1
  439. package/dist/components/SpinRow/SpinRow.module.css.cjs.map +1 -1
  440. package/dist/components/SpinRow/SpinRow.module.css.js +9 -9
  441. package/dist/components/SpinRow/SpinRow.module.css.js.map +1 -1
  442. package/dist/components/SpinRow/index.d.ts +1 -1
  443. package/dist/components/Spinner/Spinner.cjs.map +1 -1
  444. package/dist/components/Spinner/Spinner.d.ts +1 -1
  445. package/dist/components/Spinner/Spinner.js.map +1 -1
  446. package/dist/components/Spinner/Spinner.module.css.cjs +1 -1
  447. package/dist/components/Spinner/Spinner.module.css.cjs.map +1 -1
  448. package/dist/components/Spinner/Spinner.module.css.js +5 -5
  449. package/dist/components/Spinner/Spinner.module.css.js.map +1 -1
  450. package/dist/components/Spinner/index.d.ts +1 -1
  451. package/dist/components/SplitButton/SplitButton.cjs.map +1 -1
  452. package/dist/components/SplitButton/SplitButton.d.ts +2 -2
  453. package/dist/components/SplitButton/SplitButton.js.map +1 -1
  454. package/dist/components/SplitButton/SplitButton.module.css.cjs +1 -1
  455. package/dist/components/SplitButton/SplitButton.module.css.cjs.map +1 -1
  456. package/dist/components/SplitButton/SplitButton.module.css.js +10 -10
  457. package/dist/components/SplitButton/SplitButton.module.css.js.map +1 -1
  458. package/dist/components/SplitButton/index.d.ts +1 -1
  459. package/dist/components/StatusBadge/StatusBadge.cjs.map +1 -1
  460. package/dist/components/StatusBadge/StatusBadge.d.ts +1 -1
  461. package/dist/components/StatusBadge/StatusBadge.js.map +1 -1
  462. package/dist/components/StatusBadge/StatusBadge.module.css.cjs +1 -1
  463. package/dist/components/StatusBadge/StatusBadge.module.css.cjs.map +1 -1
  464. package/dist/components/StatusBadge/StatusBadge.module.css.js +7 -7
  465. package/dist/components/StatusBadge/StatusBadge.module.css.js.map +1 -1
  466. package/dist/components/StatusBadge/index.d.ts +1 -1
  467. package/dist/components/StatusPage/StatusPage.cjs.map +1 -1
  468. package/dist/components/StatusPage/StatusPage.d.ts +1 -1
  469. package/dist/components/StatusPage/StatusPage.js.map +1 -1
  470. package/dist/components/StatusPage/index.d.ts +1 -1
  471. package/dist/components/Switch/Switch.cjs.map +1 -1
  472. package/dist/components/Switch/Switch.d.ts +2 -2
  473. package/dist/components/Switch/Switch.js.map +1 -1
  474. package/dist/components/Switch/Switch.module.css.cjs +1 -1
  475. package/dist/components/Switch/Switch.module.css.cjs.map +1 -1
  476. package/dist/components/Switch/Switch.module.css.js +1 -1
  477. package/dist/components/Switch/Switch.module.css.js.map +1 -1
  478. package/dist/components/Switch/index.d.ts +1 -1
  479. package/dist/components/SwitchRow/SwitchRow.cjs.map +1 -1
  480. package/dist/components/SwitchRow/SwitchRow.d.ts +1 -1
  481. package/dist/components/SwitchRow/SwitchRow.js.map +1 -1
  482. package/dist/components/SwitchRow/SwitchRow.module.css.cjs +1 -1
  483. package/dist/components/SwitchRow/SwitchRow.module.css.cjs.map +1 -1
  484. package/dist/components/SwitchRow/SwitchRow.module.css.js +9 -9
  485. package/dist/components/SwitchRow/SwitchRow.module.css.js.map +1 -1
  486. package/dist/components/SwitchRow/index.d.ts +1 -1
  487. package/dist/components/Tabs/TabBar.cjs +1 -1
  488. package/dist/components/Tabs/TabBar.cjs.map +1 -1
  489. package/dist/components/Tabs/TabBar.d.ts +2 -2
  490. package/dist/components/Tabs/TabBar.js +8 -8
  491. package/dist/components/Tabs/TabBar.js.map +1 -1
  492. package/dist/components/Tabs/TabItem.cjs +1 -1
  493. package/dist/components/Tabs/TabItem.cjs.map +1 -1
  494. package/dist/components/Tabs/TabItem.d.ts +4 -2
  495. package/dist/components/Tabs/TabItem.js +34 -32
  496. package/dist/components/Tabs/TabItem.js.map +1 -1
  497. package/dist/components/Tabs/TabPanel.cjs +1 -1
  498. package/dist/components/Tabs/TabPanel.cjs.map +1 -1
  499. package/dist/components/Tabs/TabPanel.js +0 -1
  500. package/dist/components/Tabs/TabPanel.js.map +1 -1
  501. package/dist/components/Tabs/Tabs.module.css.cjs +1 -1
  502. package/dist/components/Tabs/Tabs.module.css.cjs.map +1 -1
  503. package/dist/components/Tabs/Tabs.module.css.js +10 -9
  504. package/dist/components/Tabs/Tabs.module.css.js.map +1 -1
  505. package/dist/components/Tabs/index.d.ts +3 -3
  506. package/dist/components/TerminalView/TerminalView.cjs +1 -1
  507. package/dist/components/TerminalView/TerminalView.cjs.map +1 -1
  508. package/dist/components/TerminalView/TerminalView.d.ts +1 -1
  509. package/dist/components/TerminalView/TerminalView.js +1 -1
  510. package/dist/components/TerminalView/TerminalView.js.map +1 -1
  511. package/dist/components/TerminalView/index.d.ts +1 -1
  512. package/dist/components/Text/Text.cjs.map +1 -1
  513. package/dist/components/Text/Text.d.ts +2 -2
  514. package/dist/components/Text/Text.js.map +1 -1
  515. package/dist/components/Text/index.d.ts +1 -1
  516. package/dist/components/TextField/TextField.cjs.map +1 -1
  517. package/dist/components/TextField/TextField.d.ts +1 -1
  518. package/dist/components/TextField/TextField.js.map +1 -1
  519. package/dist/components/TextField/TextField.module.css.cjs +1 -1
  520. package/dist/components/TextField/TextField.module.css.cjs.map +1 -1
  521. package/dist/components/TextField/TextField.module.css.js +7 -7
  522. package/dist/components/TextField/TextField.module.css.js.map +1 -1
  523. package/dist/components/TextField/index.d.ts +1 -1
  524. package/dist/components/Timeline/Timeline.cjs.map +1 -1
  525. package/dist/components/Timeline/Timeline.d.ts +2 -2
  526. package/dist/components/Timeline/Timeline.js.map +1 -1
  527. package/dist/components/Timeline/index.d.ts +1 -1
  528. package/dist/components/Toast/Toast.cjs +1 -1
  529. package/dist/components/Toast/Toast.cjs.map +1 -1
  530. package/dist/components/Toast/Toast.d.ts +1 -1
  531. package/dist/components/Toast/Toast.js +39 -35
  532. package/dist/components/Toast/Toast.js.map +1 -1
  533. package/dist/components/Toast/Toast.module.css.cjs +1 -1
  534. package/dist/components/Toast/Toast.module.css.cjs.map +1 -1
  535. package/dist/components/Toast/Toast.module.css.js +2 -2
  536. package/dist/components/Toast/Toast.module.css.js.map +1 -1
  537. package/dist/components/Toast/Toaster.cjs.map +1 -1
  538. package/dist/components/Toast/Toaster.d.ts +1 -1
  539. package/dist/components/Toast/Toaster.js.map +1 -1
  540. package/dist/components/Toast/index.d.ts +2 -2
  541. package/dist/components/ToggleGroup/ToggleGroup.cjs +1 -1
  542. package/dist/components/ToggleGroup/ToggleGroup.cjs.map +1 -1
  543. package/dist/components/ToggleGroup/ToggleGroup.d.ts +2 -2
  544. package/dist/components/ToggleGroup/ToggleGroup.js +8 -8
  545. package/dist/components/ToggleGroup/ToggleGroup.js.map +1 -1
  546. package/dist/components/ToggleGroup/ToggleGroup.module.css.cjs +1 -1
  547. package/dist/components/ToggleGroup/ToggleGroup.module.css.cjs.map +1 -1
  548. package/dist/components/ToggleGroup/ToggleGroup.module.css.js +6 -6
  549. package/dist/components/ToggleGroup/ToggleGroup.module.css.js.map +1 -1
  550. package/dist/components/ToggleGroup/ToggleGroupItem.cjs.map +1 -1
  551. package/dist/components/ToggleGroup/ToggleGroupItem.d.ts +1 -1
  552. package/dist/components/ToggleGroup/ToggleGroupItem.js.map +1 -1
  553. package/dist/components/ToggleGroup/index.d.ts +2 -2
  554. package/dist/components/Toolbar/Spacer.cjs.map +1 -1
  555. package/dist/components/Toolbar/Spacer.d.ts +1 -2
  556. package/dist/components/Toolbar/Spacer.js.map +1 -1
  557. package/dist/components/Toolbar/Toolbar.cjs.map +1 -1
  558. package/dist/components/Toolbar/Toolbar.js.map +1 -1
  559. package/dist/components/Toolbar/index.d.ts +3 -3
  560. package/dist/components/Toolbar.cjs +1 -1
  561. package/dist/components/Toolbar.js +3 -3
  562. package/dist/components/ToolbarView/ToolbarView.cjs.map +1 -1
  563. package/dist/components/ToolbarView/ToolbarView.js.map +1 -1
  564. package/dist/components/ToolbarView/index.d.ts +1 -1
  565. package/dist/components/Tooltip/Tooltip.cjs +1 -1
  566. package/dist/components/Tooltip/Tooltip.cjs.map +1 -1
  567. package/dist/components/Tooltip/Tooltip.d.ts +2 -2
  568. package/dist/components/Tooltip/Tooltip.js +4 -4
  569. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  570. package/dist/components/Tooltip/Tooltip.module.css.cjs +1 -1
  571. package/dist/components/Tooltip/Tooltip.module.css.cjs.map +1 -1
  572. package/dist/components/Tooltip/Tooltip.module.css.js +6 -6
  573. package/dist/components/Tooltip/Tooltip.module.css.js.map +1 -1
  574. package/dist/components/Tooltip/index.d.ts +1 -1
  575. package/dist/components/ViewSwitcher/ViewSwitcher.cjs +1 -1
  576. package/dist/components/ViewSwitcher/ViewSwitcher.cjs.map +1 -1
  577. package/dist/components/ViewSwitcher/ViewSwitcher.d.ts +2 -2
  578. package/dist/components/ViewSwitcher/ViewSwitcher.js +8 -8
  579. package/dist/components/ViewSwitcher/ViewSwitcher.js.map +1 -1
  580. package/dist/components/ViewSwitcher/ViewSwitcher.module.css.cjs +1 -1
  581. package/dist/components/ViewSwitcher/ViewSwitcher.module.css.cjs.map +1 -1
  582. package/dist/components/ViewSwitcher/ViewSwitcher.module.css.js +5 -5
  583. package/dist/components/ViewSwitcher/ViewSwitcher.module.css.js.map +1 -1
  584. package/dist/components/ViewSwitcher/ViewSwitcherItem.cjs.map +1 -1
  585. package/dist/components/ViewSwitcher/ViewSwitcherItem.d.ts +1 -1
  586. package/dist/components/ViewSwitcher/ViewSwitcherItem.js.map +1 -1
  587. package/dist/components/ViewSwitcher/index.d.ts +2 -2
  588. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.cjs.map +1 -1
  589. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.js.map +1 -1
  590. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.module.css.cjs +1 -1
  591. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.module.css.cjs.map +1 -1
  592. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.module.css.js +1 -1
  593. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.module.css.js.map +1 -1
  594. package/dist/components/ViewSwitcherBar/index.d.ts +1 -1
  595. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.cjs +1 -1
  596. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.cjs.map +1 -1
  597. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.d.ts +2 -2
  598. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.js +8 -8
  599. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.js.map +1 -1
  600. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.module.css.cjs +1 -1
  601. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.module.css.cjs.map +1 -1
  602. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.module.css.js +14 -14
  603. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.module.css.js.map +1 -1
  604. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebarItem.cjs.map +1 -1
  605. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebarItem.d.ts +1 -1
  606. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebarItem.js.map +1 -1
  607. package/dist/components/ViewSwitcherSidebar/index.d.ts +2 -2
  608. package/dist/components/WindowTitle/WindowTitle.cjs.map +1 -1
  609. package/dist/components/WindowTitle/WindowTitle.js.map +1 -1
  610. package/dist/components/WindowTitle/index.d.ts +1 -1
  611. package/dist/components/WrapBox/WrapBox.cjs.map +1 -1
  612. package/dist/components/WrapBox/WrapBox.d.ts +2 -2
  613. package/dist/components/WrapBox/WrapBox.js.map +1 -1
  614. package/dist/components/WrapBox/index.d.ts +1 -1
  615. package/dist/hooks/index.d.ts +3 -3
  616. package/dist/hooks/useBreakpoint.cjs +1 -1
  617. package/dist/hooks/useBreakpoint.cjs.map +1 -1
  618. package/dist/hooks/useBreakpoint.js +12 -12
  619. package/dist/hooks/useBreakpoint.js.map +1 -1
  620. package/dist/index.cjs +1 -1
  621. package/dist/index.d.ts +153 -151
  622. package/dist/index.js +35 -34
  623. package/dist/style.css +1 -1
  624. package/package.json +6 -1
@@ -1,5 +1,5 @@
1
1
  //#region src/components/Dropdown/Dropdown.module.css
2
- var e = "_wrapper_1hi05_3", t = "_trigger_1hi05_11", n = "_triggerOpen_1hi05_63", r = "_triggerLabel_1hi05_73", i = "_placeholder_1hi05_81", a = "_chevron_1hi05_87", o = "_chevronOpen_1hi05_94", s = "_list_1hi05_100", c = "_listDown_1hi05_129", l = "_listUp_1hi05_133", u = "_option_1hi05_145", d = "_optionActive_1hi05_162", f = "_optionSelected_1hi05_166", p = "_optionDisabled_1hi05_170", m = "_optionText_1hi05_178", h = "_optionLabel_1hi05_186", g = "_optionDesc_1hi05_192", _ = "_checkIcon_1hi05_202", v = {
2
+ var e = "_wrapper_15m1u_3", t = "_trigger_15m1u_11", n = "_triggerOpen_15m1u_63", r = "_triggerLabel_15m1u_73", i = "_placeholder_15m1u_81", a = "_chevron_15m1u_87", o = "_chevronOpen_15m1u_94", s = "_list_15m1u_100", c = "_listDown_15m1u_137", l = "_listUp_15m1u_141", u = "_option_15m1u_161", d = "_optionActive_15m1u_178", f = "_optionSelected_15m1u_182", p = "_optionDisabled_15m1u_186", m = "_optionText_15m1u_194", h = "_optionLabel_15m1u_202", g = "_optionDesc_15m1u_208", _ = "_checkIcon_15m1u_218", v = {
3
3
  wrapper: e,
4
4
  trigger: t,
5
5
  triggerOpen: n,
@@ -8,10 +8,10 @@ var e = "_wrapper_1hi05_3", t = "_trigger_1hi05_11", n = "_triggerOpen_1hi05_63"
8
8
  chevron: a,
9
9
  chevronOpen: o,
10
10
  list: s,
11
- "list-in": "_list-in_1hi05_1",
11
+ "list-in": "_list-in_15m1u_1",
12
12
  listDown: c,
13
13
  listUp: l,
14
- "list-in-up": "_list-in-up_1hi05_1",
14
+ "list-in-up": "_list-in-up_15m1u_1",
15
15
  option: u,
16
16
  optionActive: d,
17
17
  optionSelected: f,
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.module.css.js","names":[],"sources":["../../../src/components/Dropdown/Dropdown.module.css"],"sourcesContent":["/* ─── Wrapper ────────────────────────────────────────────────────────────────── */\n\n.wrapper {\n position: relative;\n display: inline-block;\n min-width: 160px;\n}\n\n/* ─── Trigger button ─────────────────────────────────────────────────────────── */\n\n.trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--gnome-space-1, 6px);\n width: 100%;\n\n padding: 7px var(--gnome-space-2, 12px);\n min-height: 36px;\n\n appearance: none;\n background-color: var(--gnome-card-bg-color, #ffffff);\n border: 1px solid var(--gnome-card-shade-color, rgba(0, 0, 0, 0.15));\n border-radius: var(--gnome-radius-md, 8px);\n box-shadow: var(--gnome-shadow-sm, 0 1px 2px rgba(0,0,0,0.08));\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n\n cursor: pointer;\n user-select: none;\n text-align: left;\n\n transition:\n background-color var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease),\n border-color 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.trigger:hover:not(:disabled) {\n background-color: color-mix(in srgb, var(--gnome-card-bg-color, #ffffff) 90%, black 10%);\n}\n\n.trigger:focus {\n outline: none;\n}\n\n.trigger:focus-visible {\n border-color: var(--gnome-accent-color, #3584e4);\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.trigger:disabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n}\n\n.triggerOpen {\n border-color: var(--gnome-accent-color, #3584e4);\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/* ─── Trigger label ──────────────────────────────────────────────────────────── */\n\n.triggerLabel {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.placeholder {\n opacity: var(--gnome-opacity-dim, 0.55);\n}\n\n/* ─── Chevron icon ───────────────────────────────────────────────────────────── */\n\n.chevron {\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n opacity: var(--gnome-opacity-dim, 0.55);\n transition: transform var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease);\n}\n\n.chevronOpen {\n transform: rotate(180deg);\n}\n\n/* ─── Listbox ────────────────────────────────────────────────────────────────── */\n\n.list {\n position: absolute;\n left: 0;\n right: 0;\n z-index: 1000;\n\n margin: 0;\n padding: 4px 0;\n list-style: none;\n\n background-color: var(--gnome-popover-bg-color, var(--gnome-card-bg-color, #ffffff));\n border: 1px solid var(--gnome-card-shade-color, rgba(0, 0, 0, 0.12));\n border-radius: var(--gnome-radius-md, 8px);\n box-shadow:\n 0 4px 16px rgba(0, 0, 0, 0.12),\n 0 1px 3px rgba(0, 0, 0, 0.08);\n\n max-height: 280px;\n overflow-y: auto;\n overscroll-behavior: contain;\n\n animation: list-in var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease) both;\n}\n\n@keyframes list-in {\n from { opacity: 0; transform: scaleY(0.95); transform-origin: top center; }\n to { opacity: 1; transform: scaleY(1); transform-origin: top center; }\n}\n\n.listDown {\n top: calc(100% + 4px);\n}\n\n.listUp {\n bottom: calc(100% + 4px);\n animation-name: list-in-up;\n}\n\n@keyframes list-in-up {\n from { opacity: 0; transform: scaleY(0.95); transform-origin: bottom center; }\n to { opacity: 1; transform: scaleY(1); transform-origin: bottom center; }\n}\n\n/* ─── Option ─────────────────────────────────────────────────────────────────── */\n\n.option {\n display: flex;\n align-items: center;\n gap: var(--gnome-space-2, 12px);\n padding: 8px var(--gnome-space-2, 12px);\n min-height: 40px;\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n\n cursor: pointer;\n user-select: none;\n\n transition: background-color var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease);\n}\n\n.optionActive {\n background-color: color-mix(in srgb, var(--gnome-accent-bg-color, #3584e4) 12%, transparent);\n}\n\n.optionSelected {\n font-weight: var(--gnome-font-weight-semibold, 600);\n}\n\n.optionDisabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ─── Option text block ──────────────────────────────────────────────────────── */\n\n.optionText {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n gap: 1px;\n}\n\n.optionLabel {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.optionDesc {\n font-size: var(--gnome-font-size-caption, 0.8125rem);\n opacity: var(--gnome-opacity-dim, 0.55);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n/* ─── Check icon (selected) ──────────────────────────────────────────────────── */\n\n.checkIcon {\n flex-shrink: 0;\n color: var(--gnome-accent-color, #3584e4);\n}\n\n/* ─── Dark mode ──────────────────────────────────────────────────────────────── */\n\n@media (prefers-color-scheme: dark) {\n .trigger {\n background-color: var(--gnome-card-bg-color, #383838);\n border-color: rgba(255, 255, 255, 0.12);\n box-shadow: none;\n }\n\n .trigger:hover:not(:disabled) {\n background-color: rgba(255, 255, 255, 0.08);\n }\n\n .list {\n background-color: var(--gnome-card-bg-color, #383838);\n border-color: rgba(255, 255, 255, 0.1);\n box-shadow:\n 0 4px 16px rgba(0, 0, 0, 0.4),\n 0 1px 3px rgba(0, 0, 0, 0.3);\n }\n}\n\n/* ─── Reduced motion ─────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .trigger,\n .chevron {\n transition: none;\n }\n\n .list {\n animation: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"Dropdown.module.css.js","names":[],"sources":["../../../src/components/Dropdown/Dropdown.module.css"],"sourcesContent":["/* ─── Wrapper ────────────────────────────────────────────────────────────────── */\n\n.wrapper {\n position: relative;\n display: inline-block;\n min-width: 160px;\n}\n\n/* ─── Trigger button ─────────────────────────────────────────────────────────── */\n\n.trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--gnome-space-1, 6px);\n width: 100%;\n\n padding: 7px var(--gnome-space-2, 12px);\n min-height: 36px;\n\n appearance: none;\n background-color: var(--gnome-card-bg-color, #ffffff);\n border: 1px solid var(--gnome-card-shade-color, rgba(0, 0, 0, 0.15));\n border-radius: var(--gnome-radius-md, 8px);\n box-shadow: var(--gnome-shadow-sm, 0 1px 2px rgba(0, 0, 0, 0.08));\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n\n cursor: pointer;\n user-select: none;\n text-align: left;\n\n transition:\n background-color var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease),\n border-color 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.trigger:hover:not(:disabled) {\n background-color: color-mix(in srgb, var(--gnome-card-bg-color, #ffffff) 90%, black 10%);\n}\n\n.trigger:focus {\n outline: none;\n}\n\n.trigger:focus-visible {\n border-color: var(--gnome-accent-color, #3584e4);\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.trigger:disabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n}\n\n.triggerOpen {\n border-color: var(--gnome-accent-color, #3584e4);\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/* ─── Trigger label ──────────────────────────────────────────────────────────── */\n\n.triggerLabel {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.placeholder {\n opacity: var(--gnome-opacity-dim, 0.55);\n}\n\n/* ─── Chevron icon ───────────────────────────────────────────────────────────── */\n\n.chevron {\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n opacity: var(--gnome-opacity-dim, 0.55);\n transition: transform var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease);\n}\n\n.chevronOpen {\n transform: rotate(180deg);\n}\n\n/* ─── Listbox ────────────────────────────────────────────────────────────────── */\n\n.list {\n position: absolute;\n left: 0;\n right: 0;\n z-index: 1000;\n\n margin: 0;\n padding: 4px 0;\n list-style: none;\n\n background-color: var(--gnome-popover-bg-color, var(--gnome-card-bg-color, #ffffff));\n border: 1px solid var(--gnome-card-shade-color, rgba(0, 0, 0, 0.12));\n border-radius: var(--gnome-radius-md, 8px);\n box-shadow:\n 0 4px 16px rgba(0, 0, 0, 0.12),\n 0 1px 3px rgba(0, 0, 0, 0.08);\n\n max-height: 280px;\n overflow-y: auto;\n overscroll-behavior: contain;\n\n animation: list-in var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease) both;\n}\n\n@keyframes list-in {\n from {\n opacity: 0;\n transform: scaleY(0.95);\n transform-origin: top center;\n }\n to {\n opacity: 1;\n transform: scaleY(1);\n transform-origin: top center;\n }\n}\n\n.listDown {\n top: calc(100% + 4px);\n}\n\n.listUp {\n bottom: calc(100% + 4px);\n animation-name: list-in-up;\n}\n\n@keyframes list-in-up {\n from {\n opacity: 0;\n transform: scaleY(0.95);\n transform-origin: bottom center;\n }\n to {\n opacity: 1;\n transform: scaleY(1);\n transform-origin: bottom center;\n }\n}\n\n/* ─── Option ─────────────────────────────────────────────────────────────────── */\n\n.option {\n display: flex;\n align-items: center;\n gap: var(--gnome-space-2, 12px);\n padding: 8px var(--gnome-space-2, 12px);\n min-height: 40px;\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n\n cursor: pointer;\n user-select: none;\n\n transition: background-color var(--gnome-duration-fast, 100ms) var(--gnome-easing-default, ease);\n}\n\n.optionActive {\n background-color: color-mix(in srgb, var(--gnome-accent-bg-color, #3584e4) 12%, transparent);\n}\n\n.optionSelected {\n font-weight: var(--gnome-font-weight-semibold, 600);\n}\n\n.optionDisabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ─── Option text block ──────────────────────────────────────────────────────── */\n\n.optionText {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n gap: 1px;\n}\n\n.optionLabel {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.optionDesc {\n font-size: var(--gnome-font-size-caption, 0.8125rem);\n opacity: var(--gnome-opacity-dim, 0.55);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n/* ─── Check icon (selected) ──────────────────────────────────────────────────── */\n\n.checkIcon {\n flex-shrink: 0;\n color: var(--gnome-accent-color, #3584e4);\n}\n\n/* ─── Dark mode ──────────────────────────────────────────────────────────────── */\n\n@media (prefers-color-scheme: dark) {\n .trigger {\n background-color: var(--gnome-card-bg-color, #383838);\n border-color: rgba(255, 255, 255, 0.12);\n box-shadow: none;\n }\n\n .trigger:hover:not(:disabled) {\n background-color: rgba(255, 255, 255, 0.08);\n }\n\n .list {\n background-color: var(--gnome-card-bg-color, #383838);\n border-color: rgba(255, 255, 255, 0.1);\n box-shadow:\n 0 4px 16px rgba(0, 0, 0, 0.4),\n 0 1px 3px rgba(0, 0, 0, 0.3);\n }\n}\n\n/* ─── Reduced motion ─────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .trigger,\n .chevron {\n transition: none;\n }\n\n .list {\n animation: none;\n }\n}\n"],"mappings":""}
@@ -1,2 +1,2 @@
1
+ export type { DropdownOption, DropdownProps } from './Dropdown';
1
2
  export { Dropdown } from './Dropdown';
2
- export type { DropdownProps, DropdownOption } from './Dropdown';
@@ -1 +1 @@
1
- {"version":3,"file":"EntryRow.cjs","names":[],"sources":["../../../src/components/EntryRow/EntryRow.tsx"],"sourcesContent":["import { useState, useId, useRef, type InputHTMLAttributes, type ReactNode } from \"react\";\nimport styles from \"./EntryRow.module.css\";\n\nexport interface EntryRowProps extends InputHTMLAttributes<HTMLInputElement> {\n /**\n * Acts as a floating label: shown small above the input when the field has\n * content or focus, shown as a placeholder when empty and unfocused.\n */\n title: string;\n /** Called when the input value changes. */\n onValueChange?: (value: string) => void;\n /** Icon or widget placed at the leading edge. */\n leading?: ReactNode;\n /** Icon or widget placed at the trailing edge (e.g. a clear button, copy button). */\n trailing?: ReactNode;\n}\n\n/**\n * Row with an inline text entry field.\n *\n * Mirrors `AdwEntryRow` — the `title` floats up as a small label when the\n * field is focused or has content, acting as a placeholder when empty and\n * unfocused. Use inside a `BoxedList` for inline settings that require text input.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.EntryRow.html\n */\nexport function EntryRow({\n title,\n value: controlledValue,\n defaultValue = \"\",\n onValueChange,\n leading,\n trailing,\n disabled,\n className,\n id: externalId,\n onChange,\n ...props\n}: EntryRowProps) {\n const generatedId = useId();\n const inputId = externalId ?? generatedId;\n\n const isControlled = controlledValue !== undefined;\n const [uncontrolledValue, setUncontrolledValue] = useState(String(defaultValue));\n const inputValue = isControlled ? String(controlledValue) : uncontrolledValue;\n\n const [focused, setFocused] = useState(false);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const floated = focused || inputValue.length > 0;\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (!isControlled) setUncontrolledValue(e.target.value);\n onValueChange?.(e.target.value);\n onChange?.(e);\n };\n\n return (\n <div\n className={[\n styles.row,\n focused ? styles.focused : null,\n disabled ? styles.disabled : null,\n className,\n ]\n .filter(Boolean)\n .join(\" \")}\n onClick={() => inputRef.current?.focus()}\n >\n {leading && <span className={styles.leading}>{leading}</span>}\n\n <span className={styles.fieldWrap}>\n <label\n htmlFor={inputId}\n className={[styles.label, floated ? styles.labelFloated : null].filter(Boolean).join(\" \")}\n >\n {title}\n </label>\n <input\n ref={inputRef}\n id={inputId}\n className={[styles.input, floated ? styles.inputFloated : null].filter(Boolean).join(\" \")}\n value={inputValue}\n disabled={disabled}\n onFocus={() => setFocused(true)}\n onBlur={() => setFocused(false)}\n onChange={handleChange}\n {...props}\n />\n </span>\n\n {trailing && <span className={styles.trailing}>{trailing}</span>}\n </div>\n );\n}\n"],"mappings":"mGA0BA,SAAgB,EAAS,CACvB,QACA,MAAO,EACP,eAAe,GACf,gBACA,UACA,WACA,WACA,YACA,GAAI,EACJ,WACA,GAAG,GACa,CAChB,IAAM,GAAA,EAAA,EAAA,QAAqB,CACrB,EAAU,GAAc,EAExB,EAAe,IAAoB,IAAA,GACnC,CAAC,EAAmB,IAAA,EAAA,EAAA,UAAiC,OAAO,EAAa,CAAC,CAC1E,EAAa,EAAe,OAAO,EAAgB,CAAG,EAEtD,CAAC,EAAS,IAAA,EAAA,EAAA,UAAuB,GAAM,CACvC,GAAA,EAAA,EAAA,QAAoC,KAAK,CAEzC,EAAU,GAAW,EAAW,OAAS,EAQ/C,OACE,EAAA,EAAA,MAAC,MAAD,CACE,UAAW,CACT,EAAA,QAAO,IACP,EAAU,EAAA,QAAO,QAAU,KAC3B,EAAW,EAAA,QAAO,SAAW,KAC7B,EACD,CACE,OAAO,QAAQ,CACf,KAAK,IAAI,CACZ,YAAe,EAAS,SAAS,OAAO,UAT1C,CAWG,IAAW,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,iBAAU,EAAe,CAAA,EAE7D,EAAA,EAAA,MAAC,OAAD,CAAM,UAAW,EAAA,QAAO,mBAAxB,EACE,EAAA,EAAA,KAAC,QAAD,CACE,QAAS,EACT,UAAW,CAAC,EAAA,QAAO,MAAO,EAAU,EAAA,QAAO,aAAe,KAAK,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,UAExF,EACK,CAAA,EACR,EAAA,EAAA,KAAC,QAAD,CACE,IAAK,EACL,GAAI,EACJ,UAAW,CAAC,EAAA,QAAO,MAAO,EAAU,EAAA,QAAO,aAAe,KAAK,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,CACzF,MAAO,EACG,WACV,YAAe,EAAW,GAAK,CAC/B,WAAc,EAAW,GAAM,CAC/B,SAnCc,GAA2C,CAC1D,GAAc,EAAqB,EAAE,OAAO,MAAM,CACvD,IAAgB,EAAE,OAAO,MAAM,CAC/B,IAAW,EAAE,EAiCP,GAAI,EACJ,CAAA,CACG,GAEN,IAAY,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,kBAAW,EAAgB,CAAA,CAC5D"}
1
+ {"version":3,"file":"EntryRow.cjs","names":[],"sources":["../../../src/components/EntryRow/EntryRow.tsx"],"sourcesContent":["import {\n type ChangeEvent,\n type InputHTMLAttributes,\n type ReactNode,\n useId,\n useRef,\n useState,\n} from 'react';\n\nimport styles from './EntryRow.module.css';\n\nexport interface EntryRowProps extends InputHTMLAttributes<HTMLInputElement> {\n /**\n * Acts as a floating label: shown small above the input when the field has\n * content or focus, shown as a placeholder when empty and unfocused.\n */\n title: string;\n /** Called when the input value changes. */\n onValueChange?: (value: string) => void;\n /** Icon or widget placed at the leading edge. */\n leading?: ReactNode;\n /** Icon or widget placed at the trailing edge (e.g. a clear button, copy button). */\n trailing?: ReactNode;\n}\n\n/**\n * Row with an inline text entry field.\n *\n * Mirrors `AdwEntryRow` — the `title` floats up as a small label when the\n * field is focused or has content, acting as a placeholder when empty and\n * unfocused. Use inside a `BoxedList` for inline settings that require text input.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.EntryRow.html\n */\nexport function EntryRow({\n title,\n value: controlledValue,\n defaultValue = '',\n onValueChange,\n leading,\n trailing,\n disabled,\n className,\n id: externalId,\n onChange,\n ...props\n}: EntryRowProps) {\n const generatedId = useId();\n const inputId = externalId ?? generatedId;\n\n const isControlled = controlledValue !== undefined;\n const [uncontrolledValue, setUncontrolledValue] = useState(String(defaultValue));\n const inputValue = isControlled ? String(controlledValue) : uncontrolledValue;\n\n const [focused, setFocused] = useState(false);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const floated = focused || inputValue.length > 0;\n\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n if (!isControlled) {\n setUncontrolledValue(e.target.value);\n }\n\n onValueChange?.(e.target.value);\n onChange?.(e);\n };\n\n return (\n <div\n className={[\n styles.row,\n focused ? styles.focused : null,\n disabled ? styles.disabled : null,\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n onClick={() => inputRef.current?.focus()}\n >\n {leading && <span className={styles.leading}>{leading}</span>}\n\n <span className={styles.fieldWrap}>\n <label\n htmlFor={inputId}\n className={[styles.label, floated ? styles.labelFloated : null].filter(Boolean).join(' ')}\n >\n {title}\n </label>\n <input\n ref={inputRef}\n id={inputId}\n className={[styles.input, floated ? styles.inputFloated : null].filter(Boolean).join(' ')}\n value={inputValue}\n disabled={disabled}\n onFocus={() => setFocused(true)}\n onBlur={() => setFocused(false)}\n onChange={handleChange}\n {...props}\n />\n </span>\n\n {trailing && <span className={styles.trailing}>{trailing}</span>}\n </div>\n );\n}\n"],"mappings":"mGAkCA,SAAgB,EAAS,CACvB,QACA,MAAO,EACP,eAAe,GACf,gBACA,UACA,WACA,WACA,YACA,GAAI,EACJ,WACA,GAAG,GACa,CAChB,IAAM,GAAA,EAAA,EAAA,QAAqB,CACrB,EAAU,GAAc,EAExB,EAAe,IAAoB,IAAA,GACnC,CAAC,EAAmB,IAAA,EAAA,EAAA,UAAiC,OAAO,EAAa,CAAC,CAC1E,EAAa,EAAe,OAAO,EAAgB,CAAG,EAEtD,CAAC,EAAS,IAAA,EAAA,EAAA,UAAuB,GAAM,CACvC,GAAA,EAAA,EAAA,QAAoC,KAAK,CAEzC,EAAU,GAAW,EAAW,OAAS,EAW/C,OACE,EAAA,EAAA,MAAC,MAAD,CACE,UAAW,CACT,EAAA,QAAO,IACP,EAAU,EAAA,QAAO,QAAU,KAC3B,EAAW,EAAA,QAAO,SAAW,KAC7B,EACD,CACE,OAAO,QAAQ,CACf,KAAK,IAAI,CACZ,YAAe,EAAS,SAAS,OAAO,UAT1C,CAWG,IAAW,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,iBAAU,EAAe,CAAA,EAE7D,EAAA,EAAA,MAAC,OAAD,CAAM,UAAW,EAAA,QAAO,mBAAxB,EACE,EAAA,EAAA,KAAC,QAAD,CACE,QAAS,EACT,UAAW,CAAC,EAAA,QAAO,MAAO,EAAU,EAAA,QAAO,aAAe,KAAK,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,UAExF,EACK,CAAA,EACR,EAAA,EAAA,KAAC,QAAD,CACE,IAAK,EACL,GAAI,EACJ,UAAW,CAAC,EAAA,QAAO,MAAO,EAAU,EAAA,QAAO,aAAe,KAAK,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,CACzF,MAAO,EACG,WACV,YAAe,EAAW,GAAK,CAC/B,WAAc,EAAW,GAAM,CAC/B,SAtCc,GAAqC,CACpD,GACH,EAAqB,EAAE,OAAO,MAAM,CAGtC,IAAgB,EAAE,OAAO,MAAM,CAC/B,IAAW,EAAE,EAiCP,GAAI,EACJ,CAAA,CACG,GAEN,IAAY,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,kBAAW,EAAgB,CAAA,CAC5D"}
@@ -1 +1 @@
1
- {"version":3,"file":"EntryRow.js","names":[],"sources":["../../../src/components/EntryRow/EntryRow.tsx"],"sourcesContent":["import { useState, useId, useRef, type InputHTMLAttributes, type ReactNode } from \"react\";\nimport styles from \"./EntryRow.module.css\";\n\nexport interface EntryRowProps extends InputHTMLAttributes<HTMLInputElement> {\n /**\n * Acts as a floating label: shown small above the input when the field has\n * content or focus, shown as a placeholder when empty and unfocused.\n */\n title: string;\n /** Called when the input value changes. */\n onValueChange?: (value: string) => void;\n /** Icon or widget placed at the leading edge. */\n leading?: ReactNode;\n /** Icon or widget placed at the trailing edge (e.g. a clear button, copy button). */\n trailing?: ReactNode;\n}\n\n/**\n * Row with an inline text entry field.\n *\n * Mirrors `AdwEntryRow` — the `title` floats up as a small label when the\n * field is focused or has content, acting as a placeholder when empty and\n * unfocused. Use inside a `BoxedList` for inline settings that require text input.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.EntryRow.html\n */\nexport function EntryRow({\n title,\n value: controlledValue,\n defaultValue = \"\",\n onValueChange,\n leading,\n trailing,\n disabled,\n className,\n id: externalId,\n onChange,\n ...props\n}: EntryRowProps) {\n const generatedId = useId();\n const inputId = externalId ?? generatedId;\n\n const isControlled = controlledValue !== undefined;\n const [uncontrolledValue, setUncontrolledValue] = useState(String(defaultValue));\n const inputValue = isControlled ? String(controlledValue) : uncontrolledValue;\n\n const [focused, setFocused] = useState(false);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const floated = focused || inputValue.length > 0;\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (!isControlled) setUncontrolledValue(e.target.value);\n onValueChange?.(e.target.value);\n onChange?.(e);\n };\n\n return (\n <div\n className={[\n styles.row,\n focused ? styles.focused : null,\n disabled ? styles.disabled : null,\n className,\n ]\n .filter(Boolean)\n .join(\" \")}\n onClick={() => inputRef.current?.focus()}\n >\n {leading && <span className={styles.leading}>{leading}</span>}\n\n <span className={styles.fieldWrap}>\n <label\n htmlFor={inputId}\n className={[styles.label, floated ? styles.labelFloated : null].filter(Boolean).join(\" \")}\n >\n {title}\n </label>\n <input\n ref={inputRef}\n id={inputId}\n className={[styles.input, floated ? styles.inputFloated : null].filter(Boolean).join(\" \")}\n value={inputValue}\n disabled={disabled}\n onFocus={() => setFocused(true)}\n onBlur={() => setFocused(false)}\n onChange={handleChange}\n {...props}\n />\n </span>\n\n {trailing && <span className={styles.trailing}>{trailing}</span>}\n </div>\n );\n}\n"],"mappings":";;;;AA0BA,SAAgB,EAAS,EACvB,UACA,OAAO,GACP,kBAAe,IACf,kBACA,YACA,aACA,aACA,cACA,IAAI,GACJ,aACA,GAAG,KACa;CAChB,IAAM,IAAc,GAAO,EACrB,IAAU,KAAc,GAExB,IAAe,MAAoB,KAAA,GACnC,CAAC,GAAmB,KAAwB,EAAS,OAAO,EAAa,CAAC,EAC1E,IAAa,IAAe,OAAO,EAAgB,GAAG,GAEtD,CAAC,GAAS,KAAc,EAAS,GAAM,EACvC,IAAW,EAAyB,KAAK,EAEzC,IAAU,KAAW,EAAW,SAAS;AAQ/C,QACE,kBAAC,OAAD;EACE,WAAW;GACT,EAAO;GACP,IAAU,EAAO,UAAU;GAC3B,IAAW,EAAO,WAAW;GAC7B;GACD,CACE,OAAO,QAAQ,CACf,KAAK,IAAI;EACZ,eAAe,EAAS,SAAS,OAAO;YAT1C;GAWG,KAAW,kBAAC,QAAD;IAAM,WAAW,EAAO;cAAU;IAAe,CAAA;GAE7D,kBAAC,QAAD;IAAM,WAAW,EAAO;cAAxB,CACE,kBAAC,SAAD;KACE,SAAS;KACT,WAAW,CAAC,EAAO,OAAO,IAAU,EAAO,eAAe,KAAK,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI;eAExF;KACK,CAAA,EACR,kBAAC,SAAD;KACE,KAAK;KACL,IAAI;KACJ,WAAW,CAAC,EAAO,OAAO,IAAU,EAAO,eAAe,KAAK,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI;KACzF,OAAO;KACG;KACV,eAAe,EAAW,GAAK;KAC/B,cAAc,EAAW,GAAM;KAC/B,WAnCc,MAA2C;AAG/D,MAFK,KAAc,EAAqB,EAAE,OAAO,MAAM,EACvD,IAAgB,EAAE,OAAO,MAAM,EAC/B,IAAW,EAAE;;KAiCP,GAAI;KACJ,CAAA,CACG;;GAEN,KAAY,kBAAC,QAAD;IAAM,WAAW,EAAO;cAAW;IAAgB,CAAA;GAC5D"}
1
+ {"version":3,"file":"EntryRow.js","names":[],"sources":["../../../src/components/EntryRow/EntryRow.tsx"],"sourcesContent":["import {\n type ChangeEvent,\n type InputHTMLAttributes,\n type ReactNode,\n useId,\n useRef,\n useState,\n} from 'react';\n\nimport styles from './EntryRow.module.css';\n\nexport interface EntryRowProps extends InputHTMLAttributes<HTMLInputElement> {\n /**\n * Acts as a floating label: shown small above the input when the field has\n * content or focus, shown as a placeholder when empty and unfocused.\n */\n title: string;\n /** Called when the input value changes. */\n onValueChange?: (value: string) => void;\n /** Icon or widget placed at the leading edge. */\n leading?: ReactNode;\n /** Icon or widget placed at the trailing edge (e.g. a clear button, copy button). */\n trailing?: ReactNode;\n}\n\n/**\n * Row with an inline text entry field.\n *\n * Mirrors `AdwEntryRow` — the `title` floats up as a small label when the\n * field is focused or has content, acting as a placeholder when empty and\n * unfocused. Use inside a `BoxedList` for inline settings that require text input.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.EntryRow.html\n */\nexport function EntryRow({\n title,\n value: controlledValue,\n defaultValue = '',\n onValueChange,\n leading,\n trailing,\n disabled,\n className,\n id: externalId,\n onChange,\n ...props\n}: EntryRowProps) {\n const generatedId = useId();\n const inputId = externalId ?? generatedId;\n\n const isControlled = controlledValue !== undefined;\n const [uncontrolledValue, setUncontrolledValue] = useState(String(defaultValue));\n const inputValue = isControlled ? String(controlledValue) : uncontrolledValue;\n\n const [focused, setFocused] = useState(false);\n const inputRef = useRef<HTMLInputElement>(null);\n\n const floated = focused || inputValue.length > 0;\n\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n if (!isControlled) {\n setUncontrolledValue(e.target.value);\n }\n\n onValueChange?.(e.target.value);\n onChange?.(e);\n };\n\n return (\n <div\n className={[\n styles.row,\n focused ? styles.focused : null,\n disabled ? styles.disabled : null,\n className,\n ]\n .filter(Boolean)\n .join(' ')}\n onClick={() => inputRef.current?.focus()}\n >\n {leading && <span className={styles.leading}>{leading}</span>}\n\n <span className={styles.fieldWrap}>\n <label\n htmlFor={inputId}\n className={[styles.label, floated ? styles.labelFloated : null].filter(Boolean).join(' ')}\n >\n {title}\n </label>\n <input\n ref={inputRef}\n id={inputId}\n className={[styles.input, floated ? styles.inputFloated : null].filter(Boolean).join(' ')}\n value={inputValue}\n disabled={disabled}\n onFocus={() => setFocused(true)}\n onBlur={() => setFocused(false)}\n onChange={handleChange}\n {...props}\n />\n </span>\n\n {trailing && <span className={styles.trailing}>{trailing}</span>}\n </div>\n );\n}\n"],"mappings":";;;;AAkCA,SAAgB,EAAS,EACvB,UACA,OAAO,GACP,kBAAe,IACf,kBACA,YACA,aACA,aACA,cACA,IAAI,GACJ,aACA,GAAG,KACa;CAChB,IAAM,IAAc,GAAO,EACrB,IAAU,KAAc,GAExB,IAAe,MAAoB,KAAA,GACnC,CAAC,GAAmB,KAAwB,EAAS,OAAO,EAAa,CAAC,EAC1E,IAAa,IAAe,OAAO,EAAgB,GAAG,GAEtD,CAAC,GAAS,KAAc,EAAS,GAAM,EACvC,IAAW,EAAyB,KAAK,EAEzC,IAAU,KAAW,EAAW,SAAS;AAW/C,QACE,kBAAC,OAAD;EACE,WAAW;GACT,EAAO;GACP,IAAU,EAAO,UAAU;GAC3B,IAAW,EAAO,WAAW;GAC7B;GACD,CACE,OAAO,QAAQ,CACf,KAAK,IAAI;EACZ,eAAe,EAAS,SAAS,OAAO;YAT1C;GAWG,KAAW,kBAAC,QAAD;IAAM,WAAW,EAAO;cAAU;IAAe,CAAA;GAE7D,kBAAC,QAAD;IAAM,WAAW,EAAO;cAAxB,CACE,kBAAC,SAAD;KACE,SAAS;KACT,WAAW,CAAC,EAAO,OAAO,IAAU,EAAO,eAAe,KAAK,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI;eAExF;KACK,CAAA,EACR,kBAAC,SAAD;KACE,KAAK;KACL,IAAI;KACJ,WAAW,CAAC,EAAO,OAAO,IAAU,EAAO,eAAe,KAAK,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI;KACzF,OAAO;KACG;KACV,eAAe,EAAW,GAAK;KAC/B,cAAc,EAAW,GAAM;KAC/B,WAtCc,MAAqC;AAMzD,MALK,KACH,EAAqB,EAAE,OAAO,MAAM,EAGtC,IAAgB,EAAE,OAAO,MAAM,EAC/B,IAAW,EAAE;;KAiCP,GAAI;KACJ,CAAA,CACG;;GAEN,KAAY,kBAAC,QAAD;IAAM,WAAW,EAAO;cAAW;IAAgB,CAAA;GAC5D"}
@@ -1,2 +1,2 @@
1
- var e={row:`_row_1kogj_3`,focused:`_focused_1kogj_16`,disabled:`_disabled_1kogj_25`,leading:`_leading_1kogj_33`,trailing:`_trailing_1kogj_40`,fieldWrap:`_fieldWrap_1kogj_49`,label:`_label_1kogj_61`,labelFloated:`_labelFloated_1kogj_82`,input:`_input_1kogj_91`,inputFloated:`_inputFloated_1kogj_114`};exports.default=e;
1
+ var e={row:`_row_1m20y_3`,focused:`_focused_1m20y_16`,disabled:`_disabled_1m20y_25`,leading:`_leading_1m20y_33`,trailing:`_trailing_1m20y_40`,fieldWrap:`_fieldWrap_1m20y_49`,label:`_label_1m20y_61`,labelFloated:`_labelFloated_1m20y_82`,input:`_input_1m20y_91`,inputFloated:`_inputFloated_1m20y_114`};exports.default=e;
2
2
  //# sourceMappingURL=EntryRow.module.css.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntryRow.module.css.cjs","names":[],"sources":["../../../src/components/EntryRow/EntryRow.module.css"],"sourcesContent":["/* ─── Row container ─────────────────────────────────────────────────────────── */\n\n.row {\n display: flex;\n align-items: center;\n gap: var(--gnome-space-2, 12px);\n padding: 0 var(--gnome-space-4, 24px);\n min-height: 52px;\n width: 100%;\n cursor: text;\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n transition: box-shadow var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.focused {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 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/* ─── Leading / trailing ────────────────────────────────────────────────────── */\n\n.leading {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n}\n\n.trailing {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n gap: var(--gnome-space-1, 6px);\n}\n\n/* ─── Field wrap ────────────────────────────────────────────────────────────── */\n\n.fieldWrap {\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: center;\n flex: 1;\n min-width: 0;\n min-height: 52px;\n}\n\n/* ─── Floating label ────────────────────────────────────────────────────────── */\n\n.label {\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n pointer-events: none;\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: var(--gnome-opacity-dim, 0.55);\n\n transition:\n top var(--gnome-duration-fast) var(--gnome-easing-default),\n transform var(--gnome-duration-fast) var(--gnome-easing-default),\n font-size var(--gnome-duration-fast) var(--gnome-easing-default),\n opacity var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n/* When floated (focused or has value) the label moves up */\n.labelFloated {\n top: 10px;\n transform: translateY(0);\n font-size: var(--gnome-font-size-caption, 0.75rem);\n opacity: 0.7;\n}\n\n/* ─── Input field ───────────────────────────────────────────────────────────── */\n\n.input {\n appearance: none;\n background: transparent;\n border: none;\n outline: none;\n padding: 0;\n margin: 0;\n width: 100%;\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n /* Hide until floated — the label is the placeholder */\n opacity: 0;\n padding-top: 18px;\n padding-bottom: 4px;\n\n transition: opacity var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.inputFloated {\n opacity: 1;\n}\n\n.input:disabled {\n cursor: not-allowed;\n}\n\n/* ─── High contrast ─────────────────────────────────────────────────────────── */\n\n@media (prefers-contrast: more) {\n .focused {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px) + 1px)\n var(--gnome-window-bg-color, #fafafa);\n }\n}\n\n/* ─── Reduced motion ────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .row,\n .label,\n .input {\n transition: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"EntryRow.module.css.cjs","names":[],"sources":["../../../src/components/EntryRow/EntryRow.module.css"],"sourcesContent":["/* ─── Row container ─────────────────────────────────────────────────────────── */\n\n.row {\n display: flex;\n align-items: center;\n gap: var(--gnome-space-2, 12px);\n padding: 0 var(--gnome-space-4, 24px);\n min-height: 52px;\n width: 100%;\n cursor: text;\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n transition: box-shadow var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.focused {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 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/* ─── Leading / trailing ────────────────────────────────────────────────────── */\n\n.leading {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n}\n\n.trailing {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n gap: var(--gnome-space-1, 6px);\n}\n\n/* ─── Field wrap ────────────────────────────────────────────────────────────── */\n\n.fieldWrap {\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: center;\n flex: 1;\n min-width: 0;\n min-height: 52px;\n}\n\n/* ─── Floating label ────────────────────────────────────────────────────────── */\n\n.label {\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n pointer-events: none;\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: var(--gnome-opacity-dim, 0.55);\n\n transition:\n top var(--gnome-duration-fast) var(--gnome-easing-default),\n transform var(--gnome-duration-fast) var(--gnome-easing-default),\n font-size var(--gnome-duration-fast) var(--gnome-easing-default),\n opacity var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n/* When floated (focused or has value) the label moves up */\n.labelFloated {\n top: 10px;\n transform: translateY(0);\n font-size: var(--gnome-font-size-caption, 0.75rem);\n opacity: 0.7;\n}\n\n/* ─── Input field ───────────────────────────────────────────────────────────── */\n\n.input {\n appearance: none;\n background: transparent;\n border: none;\n outline: none;\n padding: 0;\n margin: 0;\n width: 100%;\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n /* Hide until floated — the label is the placeholder */\n opacity: 0;\n padding-top: 18px;\n padding-bottom: 4px;\n\n transition: opacity var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.inputFloated {\n opacity: 1;\n}\n\n.input:disabled {\n cursor: not-allowed;\n}\n\n/* ─── High contrast ─────────────────────────────────────────────────────────── */\n\n@media (prefers-contrast: more) {\n .focused {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4),\n inset 0 0 0\n calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px) + 1px)\n var(--gnome-window-bg-color, #fafafa);\n }\n}\n\n/* ─── Reduced motion ────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .row,\n .label,\n .input {\n transition: none;\n }\n}\n"],"mappings":""}
@@ -1,14 +1,14 @@
1
1
  var e = {
2
- row: "_row_1kogj_3",
3
- focused: "_focused_1kogj_16",
4
- disabled: "_disabled_1kogj_25",
5
- leading: "_leading_1kogj_33",
6
- trailing: "_trailing_1kogj_40",
7
- fieldWrap: "_fieldWrap_1kogj_49",
8
- label: "_label_1kogj_61",
9
- labelFloated: "_labelFloated_1kogj_82",
10
- input: "_input_1kogj_91",
11
- inputFloated: "_inputFloated_1kogj_114"
2
+ row: "_row_1m20y_3",
3
+ focused: "_focused_1m20y_16",
4
+ disabled: "_disabled_1m20y_25",
5
+ leading: "_leading_1m20y_33",
6
+ trailing: "_trailing_1m20y_40",
7
+ fieldWrap: "_fieldWrap_1m20y_49",
8
+ label: "_label_1m20y_61",
9
+ labelFloated: "_labelFloated_1m20y_82",
10
+ input: "_input_1m20y_91",
11
+ inputFloated: "_inputFloated_1m20y_114"
12
12
  };
13
13
  //#endregion
14
14
  export { e as default };
@@ -1 +1 @@
1
- {"version":3,"file":"EntryRow.module.css.js","names":[],"sources":["../../../src/components/EntryRow/EntryRow.module.css"],"sourcesContent":["/* ─── Row container ─────────────────────────────────────────────────────────── */\n\n.row {\n display: flex;\n align-items: center;\n gap: var(--gnome-space-2, 12px);\n padding: 0 var(--gnome-space-4, 24px);\n min-height: 52px;\n width: 100%;\n cursor: text;\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n transition: box-shadow var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.focused {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 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/* ─── Leading / trailing ────────────────────────────────────────────────────── */\n\n.leading {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n}\n\n.trailing {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n gap: var(--gnome-space-1, 6px);\n}\n\n/* ─── Field wrap ────────────────────────────────────────────────────────────── */\n\n.fieldWrap {\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: center;\n flex: 1;\n min-width: 0;\n min-height: 52px;\n}\n\n/* ─── Floating label ────────────────────────────────────────────────────────── */\n\n.label {\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n pointer-events: none;\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: var(--gnome-opacity-dim, 0.55);\n\n transition:\n top var(--gnome-duration-fast) var(--gnome-easing-default),\n transform var(--gnome-duration-fast) var(--gnome-easing-default),\n font-size var(--gnome-duration-fast) var(--gnome-easing-default),\n opacity var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n/* When floated (focused or has value) the label moves up */\n.labelFloated {\n top: 10px;\n transform: translateY(0);\n font-size: var(--gnome-font-size-caption, 0.75rem);\n opacity: 0.7;\n}\n\n/* ─── Input field ───────────────────────────────────────────────────────────── */\n\n.input {\n appearance: none;\n background: transparent;\n border: none;\n outline: none;\n padding: 0;\n margin: 0;\n width: 100%;\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n /* Hide until floated — the label is the placeholder */\n opacity: 0;\n padding-top: 18px;\n padding-bottom: 4px;\n\n transition: opacity var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.inputFloated {\n opacity: 1;\n}\n\n.input:disabled {\n cursor: not-allowed;\n}\n\n/* ─── High contrast ─────────────────────────────────────────────────────────── */\n\n@media (prefers-contrast: more) {\n .focused {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px) + 1px)\n var(--gnome-window-bg-color, #fafafa);\n }\n}\n\n/* ─── Reduced motion ────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .row,\n .label,\n .input {\n transition: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"EntryRow.module.css.js","names":[],"sources":["../../../src/components/EntryRow/EntryRow.module.css"],"sourcesContent":["/* ─── Row container ─────────────────────────────────────────────────────────── */\n\n.row {\n display: flex;\n align-items: center;\n gap: var(--gnome-space-2, 12px);\n padding: 0 var(--gnome-space-4, 24px);\n min-height: 52px;\n width: 100%;\n cursor: text;\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n transition: box-shadow var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.focused {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 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/* ─── Leading / trailing ────────────────────────────────────────────────────── */\n\n.leading {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n}\n\n.trailing {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n gap: var(--gnome-space-1, 6px);\n}\n\n/* ─── Field wrap ────────────────────────────────────────────────────────────── */\n\n.fieldWrap {\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: center;\n flex: 1;\n min-width: 0;\n min-height: 52px;\n}\n\n/* ─── Floating label ────────────────────────────────────────────────────────── */\n\n.label {\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n pointer-events: none;\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: var(--gnome-opacity-dim, 0.55);\n\n transition:\n top var(--gnome-duration-fast) var(--gnome-easing-default),\n transform var(--gnome-duration-fast) var(--gnome-easing-default),\n font-size var(--gnome-duration-fast) var(--gnome-easing-default),\n opacity var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n/* When floated (focused or has value) the label moves up */\n.labelFloated {\n top: 10px;\n transform: translateY(0);\n font-size: var(--gnome-font-size-caption, 0.75rem);\n opacity: 0.7;\n}\n\n/* ─── Input field ───────────────────────────────────────────────────────────── */\n\n.input {\n appearance: none;\n background: transparent;\n border: none;\n outline: none;\n padding: 0;\n margin: 0;\n width: 100%;\n\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n /* Hide until floated — the label is the placeholder */\n opacity: 0;\n padding-top: 18px;\n padding-bottom: 4px;\n\n transition: opacity var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.inputFloated {\n opacity: 1;\n}\n\n.input:disabled {\n cursor: not-allowed;\n}\n\n/* ─── High contrast ─────────────────────────────────────────────────────────── */\n\n@media (prefers-contrast: more) {\n .focused {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4),\n inset 0 0 0\n calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px) + 1px)\n var(--gnome-window-bg-color, #fafafa);\n }\n}\n\n/* ─── Reduced motion ────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .row,\n .label,\n .input {\n transition: none;\n }\n}\n"],"mappings":""}
@@ -1,2 +1,2 @@
1
- export { EntryRow } from './EntryRow';
2
1
  export type { EntryRowProps } from './EntryRow';
2
+ export { EntryRow } from './EntryRow';
@@ -1 +1 @@
1
- {"version":3,"file":"ExpanderRow.cjs","names":[],"sources":["../../../src/components/ExpanderRow/ExpanderRow.tsx"],"sourcesContent":["import { useState, Children, useId, type HTMLAttributes, type ReactNode } from \"react\";\nimport { Separator } from \"../Separator\";\nimport styles from \"./ExpanderRow.module.css\";\n\nexport interface ExpanderRowProps extends HTMLAttributes<HTMLDivElement> {\n /** Primary label. */\n title: string;\n /** Secondary line below the title. */\n subtitle?: string;\n /** Icon or image placed at the leading edge of the header row. */\n leading?: ReactNode;\n /**\n * Widget placed at the trailing edge of the header row, before the chevron\n * (e.g. a value label or a Switch). Stop event propagation inside it so the\n * row's toggle isn't triggered.\n */\n trailing?: ReactNode;\n /**\n * Nested rows revealed when expanded. Use `ActionRow`, `ButtonRow`, or any\n * row-shaped element — separators are inserted automatically.\n */\n children?: ReactNode;\n /** Controlled expanded state. */\n expanded?: boolean;\n /** Initial expanded state when uncontrolled. Defaults to `false`. */\n defaultExpanded?: boolean;\n /** Called when the expanded state changes. */\n onExpandedChange?: (expanded: boolean) => void;\n}\n\n/**\n * Collapsible `ActionRow` that reveals nested rows on activation.\n *\n * Mirrors `AdwExpanderRow` — the header row toggles a reveal animation exposing\n * child rows. Supports both controlled and uncontrolled expand state.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.ExpanderRow.html\n */\nexport function ExpanderRow({\n title,\n subtitle,\n leading,\n trailing,\n children,\n expanded: controlledExpanded,\n defaultExpanded = false,\n onExpandedChange,\n className,\n ...props\n}: ExpanderRowProps) {\n const isControlled = controlledExpanded !== undefined;\n const [uncontrolledExpanded, setUncontrolledExpanded] = useState(defaultExpanded);\n const expanded = isControlled ? controlledExpanded : uncontrolledExpanded;\n\n const panelId = useId();\n const headerId = useId();\n\n const toggle = () => {\n const next = !expanded;\n if (!isControlled) setUncontrolledExpanded(next);\n onExpandedChange?.(next);\n };\n\n const childItems = Children.toArray(children).filter(Boolean);\n\n return (\n <div\n className={[styles.expanderRow, expanded ? styles.expanded : null, className]\n .filter(Boolean)\n .join(\" \")}\n {...props}\n >\n {/* ─── Header (toggle button) ─────────────────────────────────────── */}\n <button\n id={headerId}\n className={styles.header}\n aria-expanded={expanded}\n aria-controls={panelId}\n onClick={toggle}\n >\n {leading && <span className={styles.leading}>{leading}</span>}\n\n <span className={styles.content}>\n <span className={styles.title}>{title}</span>\n {subtitle && <span className={styles.subtitle}>{subtitle}</span>}\n </span>\n\n {trailing && <span className={styles.trailing}>{trailing}</span>}\n\n <span className={[styles.chevronWrap, expanded ? styles.chevronOpen : null].filter(Boolean).join(\" \")} aria-hidden=\"true\">\n <svg className={styles.chevron} width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" focusable=\"false\">\n <path\n d=\"M4 6l4 4 4-4\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </span>\n </button>\n\n {/* ─── Reveal panel ───────────────────────────────────────────────── */}\n <div\n id={panelId}\n role=\"region\"\n aria-labelledby={headerId}\n className={styles.panel}\n >\n <div className={styles.panelInner}>\n {childItems.map((child, i) => (\n <div key={i} className={styles.childItem}>\n <Separator aria-hidden=\"true\" />\n {child}\n </div>\n ))}\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":"8IAsCA,SAAgB,EAAY,CAC1B,QACA,WACA,UACA,WACA,WACA,SAAU,EACV,kBAAkB,GAClB,mBACA,YACA,GAAG,GACgB,CACnB,IAAM,EAAe,IAAuB,IAAA,GACtC,CAAC,EAAsB,IAAA,EAAA,EAAA,UAAoC,EAAgB,CAC3E,EAAW,EAAe,EAAqB,EAE/C,GAAA,EAAA,EAAA,QAAiB,CACjB,GAAA,EAAA,EAAA,QAAkB,CAElB,MAAe,CACnB,IAAM,EAAO,CAAC,EACT,GAAc,EAAwB,EAAK,CAChD,IAAmB,EAAK,EAGpB,EAAa,EAAA,SAAS,QAAQ,EAAS,CAAC,OAAO,QAAQ,CAE7D,OACE,EAAA,EAAA,MAAC,MAAD,CACE,UAAW,CAAC,EAAA,QAAO,YAAa,EAAW,EAAA,QAAO,SAAW,KAAM,EAAU,CAC1E,OAAO,QAAQ,CACf,KAAK,IAAI,CACZ,GAAI,WAJN,EAOE,EAAA,EAAA,MAAC,SAAD,CACE,GAAI,EACJ,UAAW,EAAA,QAAO,OAClB,gBAAe,EACf,gBAAe,EACf,QAAS,WALX,CAOG,IAAW,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,iBAAU,EAAe,CAAA,EAE7D,EAAA,EAAA,MAAC,OAAD,CAAM,UAAW,EAAA,QAAO,iBAAxB,EACE,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,eAAQ,EAAa,CAAA,CAC5C,IAAY,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,kBAAW,EAAgB,CAAA,CAC3D,GAEN,IAAY,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,kBAAW,EAAgB,CAAA,EAEhE,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,CAAC,EAAA,QAAO,YAAa,EAAW,EAAA,QAAO,YAAc,KAAK,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,CAAE,cAAY,iBACjH,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,QAAO,QAAS,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,UAAU,kBACnF,EAAA,EAAA,KAAC,OAAD,CACE,EAAE,eACF,KAAK,OACL,OAAO,eACP,YAAY,MACZ,cAAc,QACd,eAAe,QACf,CAAA,CACE,CAAA,CACD,CAAA,CACA,IAGT,EAAA,EAAA,KAAC,MAAD,CACE,GAAI,EACJ,KAAK,SACL,kBAAiB,EACjB,UAAW,EAAA,QAAO,gBAElB,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,QAAO,oBACpB,EAAW,KAAK,EAAO,KACtB,EAAA,EAAA,MAAC,MAAD,CAAa,UAAW,EAAA,QAAO,mBAA/B,EACE,EAAA,EAAA,KAAC,EAAA,UAAD,CAAW,cAAY,OAAS,CAAA,CAC/B,EACG,EAHI,EAGJ,CACN,CACE,CAAA,CACF,CAAA,CACF"}
1
+ {"version":3,"file":"ExpanderRow.cjs","names":[],"sources":["../../../src/components/ExpanderRow/ExpanderRow.tsx"],"sourcesContent":["import { Children, type HTMLAttributes, type ReactNode, useId, useState } from 'react';\n\nimport { Separator } from '../Separator';\n\nimport styles from './ExpanderRow.module.css';\n\nexport interface ExpanderRowProps extends HTMLAttributes<HTMLDivElement> {\n /** Primary label. */\n title: string;\n /** Secondary line below the title. */\n subtitle?: string;\n /** Icon or image placed at the leading edge of the header row. */\n leading?: ReactNode;\n /**\n * Widget placed at the trailing edge of the header row, before the chevron\n * (e.g. a value label or a Switch). Stop event propagation inside it so the\n * row's toggle isn't triggered.\n */\n trailing?: ReactNode;\n /**\n * Nested rows revealed when expanded. Use `ActionRow`, `ButtonRow`, or any\n * row-shaped element — separators are inserted automatically.\n */\n children?: ReactNode;\n /** Controlled expanded state. */\n expanded?: boolean;\n /** Initial expanded state when uncontrolled. Defaults to `false`. */\n defaultExpanded?: boolean;\n /** Called when the expanded state changes. */\n onExpandedChange?: (expanded: boolean) => void;\n}\n\n/**\n * Collapsible `ActionRow` that reveals nested rows on activation.\n *\n * Mirrors `AdwExpanderRow` — the header row toggles a reveal animation exposing\n * child rows. Supports both controlled and uncontrolled expand state.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.ExpanderRow.html\n */\nexport function ExpanderRow({\n title,\n subtitle,\n leading,\n trailing,\n children,\n expanded: controlledExpanded,\n defaultExpanded = false,\n onExpandedChange,\n className,\n ...props\n}: ExpanderRowProps) {\n const isControlled = controlledExpanded !== undefined;\n const [uncontrolledExpanded, setUncontrolledExpanded] = useState(defaultExpanded);\n const expanded = isControlled ? controlledExpanded : uncontrolledExpanded;\n\n const panelId = useId();\n const headerId = useId();\n\n const toggle = () => {\n const next = !expanded;\n\n if (!isControlled) {\n setUncontrolledExpanded(next);\n }\n\n onExpandedChange?.(next);\n };\n\n const childItems = Children.toArray(children).filter(Boolean);\n\n return (\n <div\n className={[styles.expanderRow, expanded ? styles.expanded : null, className]\n .filter(Boolean)\n .join(' ')}\n {...props}\n >\n {/* ─── Header (toggle button) ─────────────────────────────────────── */}\n <button\n id={headerId}\n className={styles.header}\n aria-expanded={expanded}\n aria-controls={panelId}\n onClick={toggle}\n >\n {leading && <span className={styles.leading}>{leading}</span>}\n\n <span className={styles.content}>\n <span className={styles.title}>{title}</span>\n {subtitle && <span className={styles.subtitle}>{subtitle}</span>}\n </span>\n\n {trailing && <span className={styles.trailing}>{trailing}</span>}\n\n <span\n className={[styles.chevronWrap, expanded ? styles.chevronOpen : null]\n .filter(Boolean)\n .join(' ')}\n aria-hidden=\"true\"\n >\n <svg\n className={styles.chevron}\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n focusable=\"false\"\n >\n <path\n d=\"M4 6l4 4 4-4\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </span>\n </button>\n\n {/* ─── Reveal panel ───────────────────────────────────────────────── */}\n <div id={panelId} role=\"region\" aria-labelledby={headerId} className={styles.panel}>\n <div className={styles.panelInner}>\n {childItems.map((child, i) => (\n <div key={i} className={styles.childItem}>\n <Separator aria-hidden=\"true\" />\n {child}\n </div>\n ))}\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":"8IAwCA,SAAgB,EAAY,CAC1B,QACA,WACA,UACA,WACA,WACA,SAAU,EACV,kBAAkB,GAClB,mBACA,YACA,GAAG,GACgB,CACnB,IAAM,EAAe,IAAuB,IAAA,GACtC,CAAC,EAAsB,IAAA,EAAA,EAAA,UAAoC,EAAgB,CAC3E,EAAW,EAAe,EAAqB,EAE/C,GAAA,EAAA,EAAA,QAAiB,CACjB,GAAA,EAAA,EAAA,QAAkB,CAElB,MAAe,CACnB,IAAM,EAAO,CAAC,EAET,GACH,EAAwB,EAAK,CAG/B,IAAmB,EAAK,EAGpB,EAAa,EAAA,SAAS,QAAQ,EAAS,CAAC,OAAO,QAAQ,CAE7D,OACE,EAAA,EAAA,MAAC,MAAD,CACE,UAAW,CAAC,EAAA,QAAO,YAAa,EAAW,EAAA,QAAO,SAAW,KAAM,EAAU,CAC1E,OAAO,QAAQ,CACf,KAAK,IAAI,CACZ,GAAI,WAJN,EAOE,EAAA,EAAA,MAAC,SAAD,CACE,GAAI,EACJ,UAAW,EAAA,QAAO,OAClB,gBAAe,EACf,gBAAe,EACf,QAAS,WALX,CAOG,IAAW,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,iBAAU,EAAe,CAAA,EAE7D,EAAA,EAAA,MAAC,OAAD,CAAM,UAAW,EAAA,QAAO,iBAAxB,EACE,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,eAAQ,EAAa,CAAA,CAC5C,IAAY,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,kBAAW,EAAgB,CAAA,CAC3D,GAEN,IAAY,EAAA,EAAA,KAAC,OAAD,CAAM,UAAW,EAAA,QAAO,kBAAW,EAAgB,CAAA,EAEhE,EAAA,EAAA,KAAC,OAAD,CACE,UAAW,CAAC,EAAA,QAAO,YAAa,EAAW,EAAA,QAAO,YAAc,KAAK,CAClE,OAAO,QAAQ,CACf,KAAK,IAAI,CACZ,cAAY,iBAEZ,EAAA,EAAA,KAAC,MAAD,CACE,UAAW,EAAA,QAAO,QAClB,MAAM,KACN,OAAO,KACP,QAAQ,YACR,UAAU,kBAEV,EAAA,EAAA,KAAC,OAAD,CACE,EAAE,eACF,KAAK,OACL,OAAO,eACP,YAAY,MACZ,cAAc,QACd,eAAe,QACf,CAAA,CACE,CAAA,CACD,CAAA,CACA,IAGT,EAAA,EAAA,KAAC,MAAD,CAAK,GAAI,EAAS,KAAK,SAAS,kBAAiB,EAAU,UAAW,EAAA,QAAO,gBAC3E,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,QAAO,oBACpB,EAAW,KAAK,EAAO,KACtB,EAAA,EAAA,MAAC,MAAD,CAAa,UAAW,EAAA,QAAO,mBAA/B,EACE,EAAA,EAAA,KAAC,EAAA,UAAD,CAAW,cAAY,OAAS,CAAA,CAC/B,EACG,EAHI,EAGJ,CACN,CACE,CAAA,CACF,CAAA,CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"ExpanderRow.js","names":[],"sources":["../../../src/components/ExpanderRow/ExpanderRow.tsx"],"sourcesContent":["import { useState, Children, useId, type HTMLAttributes, type ReactNode } from \"react\";\nimport { Separator } from \"../Separator\";\nimport styles from \"./ExpanderRow.module.css\";\n\nexport interface ExpanderRowProps extends HTMLAttributes<HTMLDivElement> {\n /** Primary label. */\n title: string;\n /** Secondary line below the title. */\n subtitle?: string;\n /** Icon or image placed at the leading edge of the header row. */\n leading?: ReactNode;\n /**\n * Widget placed at the trailing edge of the header row, before the chevron\n * (e.g. a value label or a Switch). Stop event propagation inside it so the\n * row's toggle isn't triggered.\n */\n trailing?: ReactNode;\n /**\n * Nested rows revealed when expanded. Use `ActionRow`, `ButtonRow`, or any\n * row-shaped element — separators are inserted automatically.\n */\n children?: ReactNode;\n /** Controlled expanded state. */\n expanded?: boolean;\n /** Initial expanded state when uncontrolled. Defaults to `false`. */\n defaultExpanded?: boolean;\n /** Called when the expanded state changes. */\n onExpandedChange?: (expanded: boolean) => void;\n}\n\n/**\n * Collapsible `ActionRow` that reveals nested rows on activation.\n *\n * Mirrors `AdwExpanderRow` — the header row toggles a reveal animation exposing\n * child rows. Supports both controlled and uncontrolled expand state.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.ExpanderRow.html\n */\nexport function ExpanderRow({\n title,\n subtitle,\n leading,\n trailing,\n children,\n expanded: controlledExpanded,\n defaultExpanded = false,\n onExpandedChange,\n className,\n ...props\n}: ExpanderRowProps) {\n const isControlled = controlledExpanded !== undefined;\n const [uncontrolledExpanded, setUncontrolledExpanded] = useState(defaultExpanded);\n const expanded = isControlled ? controlledExpanded : uncontrolledExpanded;\n\n const panelId = useId();\n const headerId = useId();\n\n const toggle = () => {\n const next = !expanded;\n if (!isControlled) setUncontrolledExpanded(next);\n onExpandedChange?.(next);\n };\n\n const childItems = Children.toArray(children).filter(Boolean);\n\n return (\n <div\n className={[styles.expanderRow, expanded ? styles.expanded : null, className]\n .filter(Boolean)\n .join(\" \")}\n {...props}\n >\n {/* ─── Header (toggle button) ─────────────────────────────────────── */}\n <button\n id={headerId}\n className={styles.header}\n aria-expanded={expanded}\n aria-controls={panelId}\n onClick={toggle}\n >\n {leading && <span className={styles.leading}>{leading}</span>}\n\n <span className={styles.content}>\n <span className={styles.title}>{title}</span>\n {subtitle && <span className={styles.subtitle}>{subtitle}</span>}\n </span>\n\n {trailing && <span className={styles.trailing}>{trailing}</span>}\n\n <span className={[styles.chevronWrap, expanded ? styles.chevronOpen : null].filter(Boolean).join(\" \")} aria-hidden=\"true\">\n <svg className={styles.chevron} width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" focusable=\"false\">\n <path\n d=\"M4 6l4 4 4-4\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </span>\n </button>\n\n {/* ─── Reveal panel ───────────────────────────────────────────────── */}\n <div\n id={panelId}\n role=\"region\"\n aria-labelledby={headerId}\n className={styles.panel}\n >\n <div className={styles.panelInner}>\n {childItems.map((child, i) => (\n <div key={i} className={styles.childItem}>\n <Separator aria-hidden=\"true\" />\n {child}\n </div>\n ))}\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;AAsCA,SAAgB,EAAY,EAC1B,UACA,aACA,YACA,aACA,aACA,UAAU,GACV,qBAAkB,IAClB,qBACA,cACA,GAAG,KACgB;CACnB,IAAM,IAAe,MAAuB,KAAA,GACtC,CAAC,GAAsB,KAA2B,EAAS,EAAgB,EAC3E,IAAW,IAAe,IAAqB,GAE/C,IAAU,GAAO,EACjB,IAAW,GAAO,EAElB,UAAe;EACnB,IAAM,IAAO,CAAC;AAEd,EADK,KAAc,EAAwB,EAAK,EAChD,IAAmB,EAAK;IAGpB,IAAa,EAAS,QAAQ,EAAS,CAAC,OAAO,QAAQ;AAE7D,QACE,kBAAC,OAAD;EACE,WAAW;GAAC,EAAO;GAAa,IAAW,EAAO,WAAW;GAAM;GAAU,CAC1E,OAAO,QAAQ,CACf,KAAK,IAAI;EACZ,GAAI;YAJN,CAOE,kBAAC,UAAD;GACE,IAAI;GACJ,WAAW,EAAO;GAClB,iBAAe;GACf,iBAAe;GACf,SAAS;aALX;IAOG,KAAW,kBAAC,QAAD;KAAM,WAAW,EAAO;eAAU;KAAe,CAAA;IAE7D,kBAAC,QAAD;KAAM,WAAW,EAAO;eAAxB,CACE,kBAAC,QAAD;MAAM,WAAW,EAAO;gBAAQ;MAAa,CAAA,EAC5C,KAAY,kBAAC,QAAD;MAAM,WAAW,EAAO;gBAAW;MAAgB,CAAA,CAC3D;;IAEN,KAAY,kBAAC,QAAD;KAAM,WAAW,EAAO;eAAW;KAAgB,CAAA;IAEhE,kBAAC,QAAD;KAAM,WAAW,CAAC,EAAO,aAAa,IAAW,EAAO,cAAc,KAAK,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI;KAAE,eAAY;eACjH,kBAAC,OAAD;MAAK,WAAW,EAAO;MAAS,OAAM;MAAK,QAAO;MAAK,SAAQ;MAAY,WAAU;gBACnF,kBAAC,QAAD;OACE,GAAE;OACF,MAAK;OACL,QAAO;OACP,aAAY;OACZ,eAAc;OACd,gBAAe;OACf,CAAA;MACE,CAAA;KACD,CAAA;IACA;MAGT,kBAAC,OAAD;GACE,IAAI;GACJ,MAAK;GACL,mBAAiB;GACjB,WAAW,EAAO;aAElB,kBAAC,OAAD;IAAK,WAAW,EAAO;cACpB,EAAW,KAAK,GAAO,MACtB,kBAAC,OAAD;KAAa,WAAW,EAAO;eAA/B,CACE,kBAAC,GAAD,EAAW,eAAY,QAAS,CAAA,EAC/B,EACG;OAHI,EAGJ,CACN;IACE,CAAA;GACF,CAAA,CACF"}
1
+ {"version":3,"file":"ExpanderRow.js","names":[],"sources":["../../../src/components/ExpanderRow/ExpanderRow.tsx"],"sourcesContent":["import { Children, type HTMLAttributes, type ReactNode, useId, useState } from 'react';\n\nimport { Separator } from '../Separator';\n\nimport styles from './ExpanderRow.module.css';\n\nexport interface ExpanderRowProps extends HTMLAttributes<HTMLDivElement> {\n /** Primary label. */\n title: string;\n /** Secondary line below the title. */\n subtitle?: string;\n /** Icon or image placed at the leading edge of the header row. */\n leading?: ReactNode;\n /**\n * Widget placed at the trailing edge of the header row, before the chevron\n * (e.g. a value label or a Switch). Stop event propagation inside it so the\n * row's toggle isn't triggered.\n */\n trailing?: ReactNode;\n /**\n * Nested rows revealed when expanded. Use `ActionRow`, `ButtonRow`, or any\n * row-shaped element — separators are inserted automatically.\n */\n children?: ReactNode;\n /** Controlled expanded state. */\n expanded?: boolean;\n /** Initial expanded state when uncontrolled. Defaults to `false`. */\n defaultExpanded?: boolean;\n /** Called when the expanded state changes. */\n onExpandedChange?: (expanded: boolean) => void;\n}\n\n/**\n * Collapsible `ActionRow` that reveals nested rows on activation.\n *\n * Mirrors `AdwExpanderRow` — the header row toggles a reveal animation exposing\n * child rows. Supports both controlled and uncontrolled expand state.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/class.ExpanderRow.html\n */\nexport function ExpanderRow({\n title,\n subtitle,\n leading,\n trailing,\n children,\n expanded: controlledExpanded,\n defaultExpanded = false,\n onExpandedChange,\n className,\n ...props\n}: ExpanderRowProps) {\n const isControlled = controlledExpanded !== undefined;\n const [uncontrolledExpanded, setUncontrolledExpanded] = useState(defaultExpanded);\n const expanded = isControlled ? controlledExpanded : uncontrolledExpanded;\n\n const panelId = useId();\n const headerId = useId();\n\n const toggle = () => {\n const next = !expanded;\n\n if (!isControlled) {\n setUncontrolledExpanded(next);\n }\n\n onExpandedChange?.(next);\n };\n\n const childItems = Children.toArray(children).filter(Boolean);\n\n return (\n <div\n className={[styles.expanderRow, expanded ? styles.expanded : null, className]\n .filter(Boolean)\n .join(' ')}\n {...props}\n >\n {/* ─── Header (toggle button) ─────────────────────────────────────── */}\n <button\n id={headerId}\n className={styles.header}\n aria-expanded={expanded}\n aria-controls={panelId}\n onClick={toggle}\n >\n {leading && <span className={styles.leading}>{leading}</span>}\n\n <span className={styles.content}>\n <span className={styles.title}>{title}</span>\n {subtitle && <span className={styles.subtitle}>{subtitle}</span>}\n </span>\n\n {trailing && <span className={styles.trailing}>{trailing}</span>}\n\n <span\n className={[styles.chevronWrap, expanded ? styles.chevronOpen : null]\n .filter(Boolean)\n .join(' ')}\n aria-hidden=\"true\"\n >\n <svg\n className={styles.chevron}\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n focusable=\"false\"\n >\n <path\n d=\"M4 6l4 4 4-4\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </span>\n </button>\n\n {/* ─── Reveal panel ───────────────────────────────────────────────── */}\n <div id={panelId} role=\"region\" aria-labelledby={headerId} className={styles.panel}>\n <div className={styles.panelInner}>\n {childItems.map((child, i) => (\n <div key={i} className={styles.childItem}>\n <Separator aria-hidden=\"true\" />\n {child}\n </div>\n ))}\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;AAwCA,SAAgB,EAAY,EAC1B,UACA,aACA,YACA,aACA,aACA,UAAU,GACV,qBAAkB,IAClB,qBACA,cACA,GAAG,KACgB;CACnB,IAAM,IAAe,MAAuB,KAAA,GACtC,CAAC,GAAsB,KAA2B,EAAS,EAAgB,EAC3E,IAAW,IAAe,IAAqB,GAE/C,IAAU,GAAO,EACjB,IAAW,GAAO,EAElB,UAAe;EACnB,IAAM,IAAO,CAAC;AAMd,EAJK,KACH,EAAwB,EAAK,EAG/B,IAAmB,EAAK;IAGpB,IAAa,EAAS,QAAQ,EAAS,CAAC,OAAO,QAAQ;AAE7D,QACE,kBAAC,OAAD;EACE,WAAW;GAAC,EAAO;GAAa,IAAW,EAAO,WAAW;GAAM;GAAU,CAC1E,OAAO,QAAQ,CACf,KAAK,IAAI;EACZ,GAAI;YAJN,CAOE,kBAAC,UAAD;GACE,IAAI;GACJ,WAAW,EAAO;GAClB,iBAAe;GACf,iBAAe;GACf,SAAS;aALX;IAOG,KAAW,kBAAC,QAAD;KAAM,WAAW,EAAO;eAAU;KAAe,CAAA;IAE7D,kBAAC,QAAD;KAAM,WAAW,EAAO;eAAxB,CACE,kBAAC,QAAD;MAAM,WAAW,EAAO;gBAAQ;MAAa,CAAA,EAC5C,KAAY,kBAAC,QAAD;MAAM,WAAW,EAAO;gBAAW;MAAgB,CAAA,CAC3D;;IAEN,KAAY,kBAAC,QAAD;KAAM,WAAW,EAAO;eAAW;KAAgB,CAAA;IAEhE,kBAAC,QAAD;KACE,WAAW,CAAC,EAAO,aAAa,IAAW,EAAO,cAAc,KAAK,CAClE,OAAO,QAAQ,CACf,KAAK,IAAI;KACZ,eAAY;eAEZ,kBAAC,OAAD;MACE,WAAW,EAAO;MAClB,OAAM;MACN,QAAO;MACP,SAAQ;MACR,WAAU;gBAEV,kBAAC,QAAD;OACE,GAAE;OACF,MAAK;OACL,QAAO;OACP,aAAY;OACZ,eAAc;OACd,gBAAe;OACf,CAAA;MACE,CAAA;KACD,CAAA;IACA;MAGT,kBAAC,OAAD;GAAK,IAAI;GAAS,MAAK;GAAS,mBAAiB;GAAU,WAAW,EAAO;aAC3E,kBAAC,OAAD;IAAK,WAAW,EAAO;cACpB,EAAW,KAAK,GAAO,MACtB,kBAAC,OAAD;KAAa,WAAW,EAAO;eAA/B,CACE,kBAAC,GAAD,EAAW,eAAY,QAAS,CAAA,EAC/B,EACG;OAHI,EAGJ,CACN;IACE,CAAA;GACF,CAAA,CACF"}
@@ -1,2 +1,2 @@
1
- var e={expanderRow:`_expanderRow_1wh8c_3`,header:`_header_1wh8c_11`,leading:`_leading_1wh8c_55`,content:`_content_1wh8c_64`,title:`_title_1wh8c_72`,subtitle:`_subtitle_1wh8c_83`,trailing:`_trailing_1wh8c_97`,chevronWrap:`_chevronWrap_1wh8c_106`,chevronOpen:`_chevronOpen_1wh8c_115`,chevron:`_chevron_1wh8c_106`,panel:`_panel_1wh8c_125`,expanded:`_expanded_1wh8c_131`,panelInner:`_panelInner_1wh8c_135`,childItem:`_childItem_1wh8c_142`};exports.default=e;
1
+ var e={expanderRow:`_expanderRow_ye1vu_3`,header:`_header_ye1vu_11`,leading:`_leading_ye1vu_55`,content:`_content_ye1vu_64`,title:`_title_ye1vu_72`,subtitle:`_subtitle_ye1vu_83`,trailing:`_trailing_ye1vu_97`,chevronWrap:`_chevronWrap_ye1vu_106`,chevronOpen:`_chevronOpen_ye1vu_115`,chevron:`_chevron_ye1vu_106`,panel:`_panel_ye1vu_125`,expanded:`_expanded_ye1vu_131`,panelInner:`_panelInner_ye1vu_135`,childItem:`_childItem_ye1vu_142`};exports.default=e;
2
2
  //# sourceMappingURL=ExpanderRow.module.css.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExpanderRow.module.css.cjs","names":[],"sources":["../../../src/components/ExpanderRow/ExpanderRow.module.css"],"sourcesContent":["/* ─── Wrapper ───────────────────────────────────────────────────────────────── */\n\n.expanderRow {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n/* ─── Header button ─────────────────────────────────────────────────────────── */\n\n.header {\n display: flex;\n align-items: center;\n gap: var(--gnome-space-2, 12px);\n padding: var(--gnome-space-2, 12px) var(--gnome-space-4, 24px);\n min-height: 52px;\n width: 100%;\n\n appearance: none;\n -webkit-appearance: none;\n background: transparent;\n border: none;\n font: inherit;\n outline: none;\n cursor: pointer;\n text-align: start;\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n transition: background-color var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.header:hover {\n background-color: var(--gnome-hover-overlay);\n}\n\n.header:active {\n background-color: var(--gnome-active-overlay);\n}\n\n.header:focus-visible {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 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.header:disabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ─── Leading ───────────────────────────────────────────────────────────────── */\n\n.leading {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n}\n\n/* ─── Text content ──────────────────────────────────────────────────────────── */\n\n.content {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n gap: 2px;\n}\n\n.title {\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.subtitle {\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-caption, 0.75rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: var(--gnome-opacity-dim, 0.55);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n/* ─── Trailing ──────────────────────────────────────────────────────────────── */\n\n.trailing {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n gap: var(--gnome-space-1, 6px);\n}\n\n/* ─── Chevron ───────────────────────────────────────────────────────────────── */\n\n.chevronWrap {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: 0.55;\n transition: transform var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.chevronOpen {\n transform: rotate(180deg);\n}\n\n.chevron {\n display: block;\n}\n\n/* ─── Reveal panel (CSS grid height animation) ──────────────────────────────── */\n\n.panel {\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows var(--gnome-duration-normal, 200ms) var(--gnome-easing-default);\n}\n\n.expanded .panel {\n grid-template-rows: 1fr;\n}\n\n.panelInner {\n overflow: hidden;\n min-height: 0;\n}\n\n/* ─── Child row wrapper + divider ───────────────────────────────────────────── */\n\n.childItem {\n display: flex;\n flex-direction: column;\n}\n\n/* ─── High contrast ─────────────────────────────────────────────────────────── */\n\n@media (prefers-contrast: more) {\n .header:focus-visible {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px) + 1px)\n var(--gnome-window-bg-color, #fafafa);\n }\n}\n\n/* ─── Reduced motion ────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .panel {\n transition: none;\n }\n\n .chevronWrap {\n transition: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"ExpanderRow.module.css.cjs","names":[],"sources":["../../../src/components/ExpanderRow/ExpanderRow.module.css"],"sourcesContent":["/* ─── Wrapper ───────────────────────────────────────────────────────────────── */\n\n.expanderRow {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n/* ─── Header button ─────────────────────────────────────────────────────────── */\n\n.header {\n display: flex;\n align-items: center;\n gap: var(--gnome-space-2, 12px);\n padding: var(--gnome-space-2, 12px) var(--gnome-space-4, 24px);\n min-height: 52px;\n width: 100%;\n\n appearance: none;\n -webkit-appearance: none;\n background: transparent;\n border: none;\n font: inherit;\n outline: none;\n cursor: pointer;\n text-align: start;\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n transition: background-color var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.header:hover {\n background-color: var(--gnome-hover-overlay);\n}\n\n.header:active {\n background-color: var(--gnome-active-overlay);\n}\n\n.header:focus-visible {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 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.header:disabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ─── Leading ───────────────────────────────────────────────────────────────── */\n\n.leading {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n}\n\n/* ─── Text content ──────────────────────────────────────────────────────────── */\n\n.content {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n gap: 2px;\n}\n\n.title {\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.subtitle {\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-caption, 0.75rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: var(--gnome-opacity-dim, 0.55);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n/* ─── Trailing ──────────────────────────────────────────────────────────────── */\n\n.trailing {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n gap: var(--gnome-space-1, 6px);\n}\n\n/* ─── Chevron ───────────────────────────────────────────────────────────────── */\n\n.chevronWrap {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: 0.55;\n transition: transform var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.chevronOpen {\n transform: rotate(180deg);\n}\n\n.chevron {\n display: block;\n}\n\n/* ─── Reveal panel (CSS grid height animation) ──────────────────────────────── */\n\n.panel {\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows var(--gnome-duration-normal, 200ms) var(--gnome-easing-default);\n}\n\n.expanded .panel {\n grid-template-rows: 1fr;\n}\n\n.panelInner {\n overflow: hidden;\n min-height: 0;\n}\n\n/* ─── Child row wrapper + divider ───────────────────────────────────────────── */\n\n.childItem {\n display: flex;\n flex-direction: column;\n}\n\n/* ─── High contrast ─────────────────────────────────────────────────────────── */\n\n@media (prefers-contrast: more) {\n .header:focus-visible {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4),\n inset 0 0 0\n calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px) + 1px)\n var(--gnome-window-bg-color, #fafafa);\n }\n}\n\n/* ─── Reduced motion ────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .panel {\n transition: none;\n }\n\n .chevronWrap {\n transition: none;\n }\n}\n"],"mappings":""}
@@ -1,18 +1,18 @@
1
1
  var e = {
2
- expanderRow: "_expanderRow_1wh8c_3",
3
- header: "_header_1wh8c_11",
4
- leading: "_leading_1wh8c_55",
5
- content: "_content_1wh8c_64",
6
- title: "_title_1wh8c_72",
7
- subtitle: "_subtitle_1wh8c_83",
8
- trailing: "_trailing_1wh8c_97",
9
- chevronWrap: "_chevronWrap_1wh8c_106",
10
- chevronOpen: "_chevronOpen_1wh8c_115",
11
- chevron: "_chevron_1wh8c_106",
12
- panel: "_panel_1wh8c_125",
13
- expanded: "_expanded_1wh8c_131",
14
- panelInner: "_panelInner_1wh8c_135",
15
- childItem: "_childItem_1wh8c_142"
2
+ expanderRow: "_expanderRow_ye1vu_3",
3
+ header: "_header_ye1vu_11",
4
+ leading: "_leading_ye1vu_55",
5
+ content: "_content_ye1vu_64",
6
+ title: "_title_ye1vu_72",
7
+ subtitle: "_subtitle_ye1vu_83",
8
+ trailing: "_trailing_ye1vu_97",
9
+ chevronWrap: "_chevronWrap_ye1vu_106",
10
+ chevronOpen: "_chevronOpen_ye1vu_115",
11
+ chevron: "_chevron_ye1vu_106",
12
+ panel: "_panel_ye1vu_125",
13
+ expanded: "_expanded_ye1vu_131",
14
+ panelInner: "_panelInner_ye1vu_135",
15
+ childItem: "_childItem_ye1vu_142"
16
16
  };
17
17
  //#endregion
18
18
  export { e as default };
@@ -1 +1 @@
1
- {"version":3,"file":"ExpanderRow.module.css.js","names":[],"sources":["../../../src/components/ExpanderRow/ExpanderRow.module.css"],"sourcesContent":["/* ─── Wrapper ───────────────────────────────────────────────────────────────── */\n\n.expanderRow {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n/* ─── Header button ─────────────────────────────────────────────────────────── */\n\n.header {\n display: flex;\n align-items: center;\n gap: var(--gnome-space-2, 12px);\n padding: var(--gnome-space-2, 12px) var(--gnome-space-4, 24px);\n min-height: 52px;\n width: 100%;\n\n appearance: none;\n -webkit-appearance: none;\n background: transparent;\n border: none;\n font: inherit;\n outline: none;\n cursor: pointer;\n text-align: start;\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n transition: background-color var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.header:hover {\n background-color: var(--gnome-hover-overlay);\n}\n\n.header:active {\n background-color: var(--gnome-active-overlay);\n}\n\n.header:focus-visible {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 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.header:disabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ─── Leading ───────────────────────────────────────────────────────────────── */\n\n.leading {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n}\n\n/* ─── Text content ──────────────────────────────────────────────────────────── */\n\n.content {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n gap: 2px;\n}\n\n.title {\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.subtitle {\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-caption, 0.75rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: var(--gnome-opacity-dim, 0.55);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n/* ─── Trailing ──────────────────────────────────────────────────────────────── */\n\n.trailing {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n gap: var(--gnome-space-1, 6px);\n}\n\n/* ─── Chevron ───────────────────────────────────────────────────────────────── */\n\n.chevronWrap {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: 0.55;\n transition: transform var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.chevronOpen {\n transform: rotate(180deg);\n}\n\n.chevron {\n display: block;\n}\n\n/* ─── Reveal panel (CSS grid height animation) ──────────────────────────────── */\n\n.panel {\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows var(--gnome-duration-normal, 200ms) var(--gnome-easing-default);\n}\n\n.expanded .panel {\n grid-template-rows: 1fr;\n}\n\n.panelInner {\n overflow: hidden;\n min-height: 0;\n}\n\n/* ─── Child row wrapper + divider ───────────────────────────────────────────── */\n\n.childItem {\n display: flex;\n flex-direction: column;\n}\n\n/* ─── High contrast ─────────────────────────────────────────────────────────── */\n\n@media (prefers-contrast: more) {\n .header:focus-visible {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px) + 1px)\n var(--gnome-window-bg-color, #fafafa);\n }\n}\n\n/* ─── Reduced motion ────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .panel {\n transition: none;\n }\n\n .chevronWrap {\n transition: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"ExpanderRow.module.css.js","names":[],"sources":["../../../src/components/ExpanderRow/ExpanderRow.module.css"],"sourcesContent":["/* ─── Wrapper ───────────────────────────────────────────────────────────────── */\n\n.expanderRow {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n/* ─── Header button ─────────────────────────────────────────────────────────── */\n\n.header {\n display: flex;\n align-items: center;\n gap: var(--gnome-space-2, 12px);\n padding: var(--gnome-space-2, 12px) var(--gnome-space-4, 24px);\n min-height: 52px;\n width: 100%;\n\n appearance: none;\n -webkit-appearance: none;\n background: transparent;\n border: none;\n font: inherit;\n outline: none;\n cursor: pointer;\n text-align: start;\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n\n transition: background-color var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.header:hover {\n background-color: var(--gnome-hover-overlay);\n}\n\n.header:active {\n background-color: var(--gnome-active-overlay);\n}\n\n.header:focus-visible {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 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.header:disabled {\n opacity: var(--gnome-opacity-disabled, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ─── Leading ───────────────────────────────────────────────────────────────── */\n\n.leading {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.8));\n}\n\n/* ─── Text content ──────────────────────────────────────────────────────────── */\n\n.content {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n gap: 2px;\n}\n\n.title {\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-body, 1rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-card-fg-color, rgba(0, 0, 0, 0.8));\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.subtitle {\n font-family: var(--gnome-font-family);\n font-size: var(--gnome-font-size-caption, 0.75rem);\n font-weight: var(--gnome-font-weight-normal, 400);\n line-height: var(--gnome-line-height-body, 1.5);\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: var(--gnome-opacity-dim, 0.55);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n/* ─── Trailing ──────────────────────────────────────────────────────────────── */\n\n.trailing {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n gap: var(--gnome-space-1, 6px);\n}\n\n/* ─── Chevron ───────────────────────────────────────────────────────────────── */\n\n.chevronWrap {\n display: flex;\n align-items: center;\n flex-shrink: 0;\n color: var(--gnome-window-fg-color, rgba(0, 0, 0, 0.55));\n opacity: 0.55;\n transition: transform var(--gnome-duration-fast) var(--gnome-easing-default);\n}\n\n.chevronOpen {\n transform: rotate(180deg);\n}\n\n.chevron {\n display: block;\n}\n\n/* ─── Reveal panel (CSS grid height animation) ──────────────────────────────── */\n\n.panel {\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows var(--gnome-duration-normal, 200ms) var(--gnome-easing-default);\n}\n\n.expanded .panel {\n grid-template-rows: 1fr;\n}\n\n.panelInner {\n overflow: hidden;\n min-height: 0;\n}\n\n/* ─── Child row wrapper + divider ───────────────────────────────────────────── */\n\n.childItem {\n display: flex;\n flex-direction: column;\n}\n\n/* ─── High contrast ─────────────────────────────────────────────────────────── */\n\n@media (prefers-contrast: more) {\n .header:focus-visible {\n box-shadow:\n inset 0 0 0 var(--gnome-focus-ring-offset, 2px) var(--gnome-window-bg-color, #fafafa),\n inset 0 0 0 calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px))\n var(--gnome-focus-ring-color, #3584e4),\n inset 0 0 0\n calc(var(--gnome-focus-ring-offset, 2px) + var(--gnome-focus-ring-width, 3px) + 1px)\n var(--gnome-window-bg-color, #fafafa);\n }\n}\n\n/* ─── Reduced motion ────────────────────────────────────────────────────────── */\n\n@media (prefers-reduced-motion: reduce) {\n .panel {\n transition: none;\n }\n\n .chevronWrap {\n transition: none;\n }\n}\n"],"mappings":""}
@@ -1,2 +1,2 @@
1
- export { ExpanderRow } from './ExpanderRow';
2
1
  export type { ExpanderRowProps } from './ExpanderRow';
2
+ export { ExpanderRow } from './ExpanderRow';
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.cjs","names":[],"sources":["../../../src/components/Footer/Footer.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from \"react\";\nimport styles from \"./Footer.module.css\";\n\nexport interface FooterProps extends HTMLAttributes<HTMLElement> {\n /** Content placed at the leading (left) edge — links, copyright, etc. */\n start?: ReactNode;\n /** Content placed at the trailing (right) edge — actions, links, etc. */\n end?: ReactNode;\n /** Center content or arbitrary children. */\n children?: ReactNode;\n /**\n * When true the footer has no top border.\n * Use when the footer is separated from content by another visual boundary.\n */\n flat?: boolean;\n}\n\n/**\n * Bottom bar with leading/trailing slots and optional center content.\n *\n * Mirrors the `HeaderBar` pattern at the bottom of a view or window.\n * Accepts plain text, links, and arbitrary ReactNode in each slot.\n *\n * @see https://developer.gnome.org/hig/patterns/containers/header-bars.html\n */\nexport function Footer({\n start,\n end,\n children,\n flat = false,\n className,\n ...props\n}: FooterProps) {\n return (\n <footer\n className={[styles.footer, flat ? styles.flat : null, className]\n .filter(Boolean)\n .join(\" \")}\n {...props}\n >\n <div className={styles.slot}>{start}</div>\n\n {children != null && (\n <div className={styles.center}>{children}</div>\n )}\n\n <div className={[styles.slot, styles.slotEnd].filter(Boolean).join(\" \")}>\n {end}\n </div>\n </footer>\n );\n}\n"],"mappings":"8EAyBA,SAAgB,EAAO,CACrB,QACA,MACA,WACA,OAAO,GACP,YACA,GAAG,GACW,CACd,OACE,EAAA,EAAA,MAAC,SAAD,CACE,UAAW,CAAC,EAAA,QAAO,OAAQ,EAAO,EAAA,QAAO,KAAO,KAAM,EAAU,CAC7D,OAAO,QAAQ,CACf,KAAK,IAAI,CACZ,GAAI,WAJN,EAME,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,QAAO,cAAO,EAAY,CAAA,CAEzC,GAAY,OACX,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,QAAO,OAAS,WAAe,CAAA,EAGjD,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,CAAC,EAAA,QAAO,KAAM,EAAA,QAAO,QAAQ,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,UACpE,EACG,CAAA,CACC"}
1
+ {"version":3,"file":"Footer.cjs","names":[],"sources":["../../../src/components/Footer/Footer.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react';\n\nimport styles from './Footer.module.css';\n\nexport interface FooterProps extends HTMLAttributes<HTMLElement> {\n /** Content placed at the leading (left) edge — links, copyright, etc. */\n start?: ReactNode;\n /** Content placed at the trailing (right) edge — actions, links, etc. */\n end?: ReactNode;\n /** Center content or arbitrary children. */\n children?: ReactNode;\n /**\n * When true the footer has no top border.\n * Use when the footer is separated from content by another visual boundary.\n */\n flat?: boolean;\n}\n\n/**\n * Bottom bar with leading/trailing slots and optional center content.\n *\n * Mirrors the `HeaderBar` pattern at the bottom of a view or window.\n * Accepts plain text, links, and arbitrary ReactNode in each slot.\n *\n * @see https://developer.gnome.org/hig/patterns/containers/header-bars.html\n */\nexport function Footer({ start, end, children, flat = false, className, ...props }: FooterProps) {\n return (\n <footer\n className={[styles.footer, flat ? styles.flat : null, className].filter(Boolean).join(' ')}\n {...props}\n >\n <div className={styles.slot}>{start}</div>\n\n {children !== null && children !== undefined && (\n <div className={styles.center}>{children}</div>\n )}\n\n <div className={[styles.slot, styles.slotEnd].filter(Boolean).join(' ')}>{end}</div>\n </footer>\n );\n}\n"],"mappings":"8EA0BA,SAAgB,EAAO,CAAE,QAAO,MAAK,WAAU,OAAO,GAAO,YAAW,GAAG,GAAsB,CAC/F,OACE,EAAA,EAAA,MAAC,SAAD,CACE,UAAW,CAAC,EAAA,QAAO,OAAQ,EAAO,EAAA,QAAO,KAAO,KAAM,EAAU,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,CAC1F,GAAI,WAFN,EAIE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,QAAO,cAAO,EAAY,CAAA,CAEzC,GAAa,OACZ,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,EAAA,QAAO,OAAS,WAAe,CAAA,EAGjD,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,CAAC,EAAA,QAAO,KAAM,EAAA,QAAO,QAAQ,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,UAAG,EAAU,CAAA,CAC7E"}
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.js","names":[],"sources":["../../../src/components/Footer/Footer.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from \"react\";\nimport styles from \"./Footer.module.css\";\n\nexport interface FooterProps extends HTMLAttributes<HTMLElement> {\n /** Content placed at the leading (left) edge — links, copyright, etc. */\n start?: ReactNode;\n /** Content placed at the trailing (right) edge — actions, links, etc. */\n end?: ReactNode;\n /** Center content or arbitrary children. */\n children?: ReactNode;\n /**\n * When true the footer has no top border.\n * Use when the footer is separated from content by another visual boundary.\n */\n flat?: boolean;\n}\n\n/**\n * Bottom bar with leading/trailing slots and optional center content.\n *\n * Mirrors the `HeaderBar` pattern at the bottom of a view or window.\n * Accepts plain text, links, and arbitrary ReactNode in each slot.\n *\n * @see https://developer.gnome.org/hig/patterns/containers/header-bars.html\n */\nexport function Footer({\n start,\n end,\n children,\n flat = false,\n className,\n ...props\n}: FooterProps) {\n return (\n <footer\n className={[styles.footer, flat ? styles.flat : null, className]\n .filter(Boolean)\n .join(\" \")}\n {...props}\n >\n <div className={styles.slot}>{start}</div>\n\n {children != null && (\n <div className={styles.center}>{children}</div>\n )}\n\n <div className={[styles.slot, styles.slotEnd].filter(Boolean).join(\" \")}>\n {end}\n </div>\n </footer>\n );\n}\n"],"mappings":";;;AAyBA,SAAgB,EAAO,EACrB,UACA,QACA,aACA,UAAO,IACP,cACA,GAAG,KACW;AACd,QACE,kBAAC,UAAD;EACE,WAAW;GAAC,EAAO;GAAQ,IAAO,EAAO,OAAO;GAAM;GAAU,CAC7D,OAAO,QAAQ,CACf,KAAK,IAAI;EACZ,GAAI;YAJN;GAME,kBAAC,OAAD;IAAK,WAAW,EAAO;cAAO;IAAY,CAAA;GAEzC,KAAY,QACX,kBAAC,OAAD;IAAK,WAAW,EAAO;IAAS;IAAe,CAAA;GAGjD,kBAAC,OAAD;IAAK,WAAW,CAAC,EAAO,MAAM,EAAO,QAAQ,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI;cACpE;IACG,CAAA;GACC"}
1
+ {"version":3,"file":"Footer.js","names":[],"sources":["../../../src/components/Footer/Footer.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react';\n\nimport styles from './Footer.module.css';\n\nexport interface FooterProps extends HTMLAttributes<HTMLElement> {\n /** Content placed at the leading (left) edge — links, copyright, etc. */\n start?: ReactNode;\n /** Content placed at the trailing (right) edge — actions, links, etc. */\n end?: ReactNode;\n /** Center content or arbitrary children. */\n children?: ReactNode;\n /**\n * When true the footer has no top border.\n * Use when the footer is separated from content by another visual boundary.\n */\n flat?: boolean;\n}\n\n/**\n * Bottom bar with leading/trailing slots and optional center content.\n *\n * Mirrors the `HeaderBar` pattern at the bottom of a view or window.\n * Accepts plain text, links, and arbitrary ReactNode in each slot.\n *\n * @see https://developer.gnome.org/hig/patterns/containers/header-bars.html\n */\nexport function Footer({ start, end, children, flat = false, className, ...props }: FooterProps) {\n return (\n <footer\n className={[styles.footer, flat ? styles.flat : null, className].filter(Boolean).join(' ')}\n {...props}\n >\n <div className={styles.slot}>{start}</div>\n\n {children !== null && children !== undefined && (\n <div className={styles.center}>{children}</div>\n )}\n\n <div className={[styles.slot, styles.slotEnd].filter(Boolean).join(' ')}>{end}</div>\n </footer>\n );\n}\n"],"mappings":";;;AA0BA,SAAgB,EAAO,EAAE,UAAO,QAAK,aAAU,UAAO,IAAO,cAAW,GAAG,KAAsB;AAC/F,QACE,kBAAC,UAAD;EACE,WAAW;GAAC,EAAO;GAAQ,IAAO,EAAO,OAAO;GAAM;GAAU,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI;EAC1F,GAAI;YAFN;GAIE,kBAAC,OAAD;IAAK,WAAW,EAAO;cAAO;IAAY,CAAA;GAEzC,KAAa,QACZ,kBAAC,OAAD;IAAK,WAAW,EAAO;IAAS;IAAe,CAAA;GAGjD,kBAAC,OAAD;IAAK,WAAW,CAAC,EAAO,MAAM,EAAO,QAAQ,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI;cAAG;IAAU,CAAA;GAC7E"}
@@ -1,2 +1,2 @@
1
- export { Footer } from './Footer';
2
1
  export type { FooterProps } from './Footer';
2
+ export { Footer } from './Footer';
@@ -1 +1 @@
1
- {"version":3,"file":"Frame.cjs","names":[],"sources":["../../../src/components/Frame/Frame.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from \"react\";\nimport styles from \"./Frame.module.css\";\n\nexport interface FrameProps extends HTMLAttributes<HTMLDivElement> {\n children?: ReactNode;\n}\n\n/**\n * Simple bordered surface with border-radius but no background fill.\n *\n * Use to visually delimit a region without adding the elevated appearance\n * of a `Card`. Mirrors `GtkFrame` default styling and the libadwaita\n * `.frame` style class.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/1-latest/style-classes.html#frame-style-class\n */\nexport function Frame({ children, className, ...props }: FrameProps) {\n return (\n <div\n className={[styles.frame, className].filter(Boolean).join(\" \")}\n {...props}\n >\n {children}\n </div>\n );\n}\n"],"mappings":"6EAgBA,SAAgB,EAAM,CAAE,WAAU,YAAW,GAAG,GAAqB,CACnE,OACE,EAAA,EAAA,KAAC,MAAD,CACE,UAAW,CAAC,EAAA,QAAO,MAAO,EAAU,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,CAC9D,GAAI,EAEH,WACG,CAAA"}
1
+ {"version":3,"file":"Frame.cjs","names":[],"sources":["../../../src/components/Frame/Frame.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react';\n\nimport styles from './Frame.module.css';\n\nexport interface FrameProps extends HTMLAttributes<HTMLDivElement> {\n children?: ReactNode;\n}\n\n/**\n * Simple bordered surface with border-radius but no background fill.\n *\n * Use to visually delimit a region without adding the elevated appearance\n * of a `Card`. Mirrors `GtkFrame` default styling and the libadwaita\n * `.frame` style class.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/1-latest/style-classes.html#frame-style-class\n */\nexport function Frame({ children, className, ...props }: FrameProps) {\n return (\n <div className={[styles.frame, className].filter(Boolean).join(' ')} {...props}>\n {children}\n </div>\n );\n}\n"],"mappings":"6EAiBA,SAAgB,EAAM,CAAE,WAAU,YAAW,GAAG,GAAqB,CACnE,OACE,EAAA,EAAA,KAAC,MAAD,CAAK,UAAW,CAAC,EAAA,QAAO,MAAO,EAAU,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,CAAE,GAAI,EACtE,WACG,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Frame.js","names":[],"sources":["../../../src/components/Frame/Frame.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from \"react\";\nimport styles from \"./Frame.module.css\";\n\nexport interface FrameProps extends HTMLAttributes<HTMLDivElement> {\n children?: ReactNode;\n}\n\n/**\n * Simple bordered surface with border-radius but no background fill.\n *\n * Use to visually delimit a region without adding the elevated appearance\n * of a `Card`. Mirrors `GtkFrame` default styling and the libadwaita\n * `.frame` style class.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/1-latest/style-classes.html#frame-style-class\n */\nexport function Frame({ children, className, ...props }: FrameProps) {\n return (\n <div\n className={[styles.frame, className].filter(Boolean).join(\" \")}\n {...props}\n >\n {children}\n </div>\n );\n}\n"],"mappings":";;;AAgBA,SAAgB,EAAM,EAAE,aAAU,cAAW,GAAG,KAAqB;AACnE,QACE,kBAAC,OAAD;EACE,WAAW,CAAC,EAAO,OAAO,EAAU,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI;EAC9D,GAAI;EAEH;EACG,CAAA"}
1
+ {"version":3,"file":"Frame.js","names":[],"sources":["../../../src/components/Frame/Frame.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react';\n\nimport styles from './Frame.module.css';\n\nexport interface FrameProps extends HTMLAttributes<HTMLDivElement> {\n children?: ReactNode;\n}\n\n/**\n * Simple bordered surface with border-radius but no background fill.\n *\n * Use to visually delimit a region without adding the elevated appearance\n * of a `Card`. Mirrors `GtkFrame` default styling and the libadwaita\n * `.frame` style class.\n *\n * @see https://gnome.pages.gitlab.gnome.org/libadwaita/doc/1-latest/style-classes.html#frame-style-class\n */\nexport function Frame({ children, className, ...props }: FrameProps) {\n return (\n <div className={[styles.frame, className].filter(Boolean).join(' ')} {...props}>\n {children}\n </div>\n );\n}\n"],"mappings":";;;AAiBA,SAAgB,EAAM,EAAE,aAAU,cAAW,GAAG,KAAqB;AACnE,QACE,kBAAC,OAAD;EAAK,WAAW,CAAC,EAAO,OAAO,EAAU,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI;EAAE,GAAI;EACtE;EACG,CAAA"}
@@ -1,2 +1,2 @@
1
- export { Frame } from './Frame';
2
1
  export type { FrameProps } from './Frame';
2
+ export { Frame } from './Frame';
@@ -1 +1 @@
1
- {"version":3,"file":"GnomeContext.cjs","names":[],"sources":["../../../src/components/GnomeProvider/GnomeContext.ts"],"sourcesContent":["import { createContext, useContext, useMemo } from \"react\";\n\nexport type GnomeDir = \"ltr\" | \"rtl\";\nexport type GnomeColorScheme = \"light\" | \"dark\" | \"system\";\nexport type GnomeNamedAccentColor =\n | \"blue\"\n | \"green\"\n | \"yellow\"\n | \"orange\"\n | \"red\"\n | \"purple\"\n | \"brown\";\nexport type GnomeAccentColor = GnomeNamedAccentColor | (string & {});\n\nexport interface GnomeContextValue {\n locale: string | undefined;\n dir: GnomeDir;\n numberFormat: Intl.NumberFormatOptions | undefined;\n dateTimeFormat: Intl.DateTimeFormatOptions | undefined;\n colorScheme: GnomeColorScheme;\n resolvedColorScheme: \"light\" | \"dark\";\n accentColor: GnomeAccentColor;\n}\n\nexport const GnomeContext = createContext<GnomeContextValue>({\n locale: undefined,\n dir: \"ltr\",\n numberFormat: undefined,\n dateTimeFormat: undefined,\n colorScheme: \"system\",\n resolvedColorScheme: \"light\",\n accentColor: \"blue\",\n});\n\n/** Returns the locale set by the nearest `GnomeProvider`, or `undefined` to use the browser locale. */\nexport function useLocale(): string | undefined {\n return useContext(GnomeContext).locale;\n}\n\n/** Returns the text direction set by the nearest `GnomeProvider`. Defaults to `\"ltr\"`. */\nexport function useDir(): GnomeDir {\n return useContext(GnomeContext).dir;\n}\n\n/** Returns an `Intl.NumberFormat` configured from `GnomeProvider` defaults plus local overrides. */\nexport function useNumberFormatter(\n options?: Intl.NumberFormatOptions,\n): Intl.NumberFormat {\n const { locale, numberFormat } = useContext(GnomeContext);\n\n return useMemo(\n () => new Intl.NumberFormat(locale, { ...numberFormat, ...options }),\n [locale, numberFormat, options],\n );\n}\n\n/** Returns an `Intl.DateTimeFormat` configured from `GnomeProvider` defaults plus local overrides. */\nexport function useDateTimeFormatter(\n options?: Intl.DateTimeFormatOptions,\n): Intl.DateTimeFormat {\n const { locale, dateTimeFormat } = useContext(GnomeContext);\n\n return useMemo(\n () => new Intl.DateTimeFormat(locale, { ...dateTimeFormat, ...options }),\n [locale, dateTimeFormat, options],\n );\n}\n\n/** Returns the color scheme preference set by the nearest `GnomeProvider`. Defaults to `\"system\"`. */\nexport function useColorScheme(): GnomeColorScheme {\n return useContext(GnomeContext).colorScheme;\n}\n\n/** Returns the resolved color scheme (`\"light\"` or `\"dark\"`), accounting for the system preference when `colorScheme` is `\"system\"`. */\nexport function useResolvedColorScheme(): \"light\" | \"dark\" {\n return useContext(GnomeContext).resolvedColorScheme;\n}\n\n/** Returns the accent color set by the nearest `GnomeProvider`. Defaults to `\"blue\"`. */\nexport function useAccentColor(): GnomeAccentColor {\n return useContext(GnomeContext).accentColor;\n}\n"],"mappings":"0FAwBA,IAAa,GAAA,EAAA,EAAA,eAAgD,CAC3D,OAAQ,IAAA,GACR,IAAK,MACL,aAAc,IAAA,GACd,eAAgB,IAAA,GAChB,YAAa,SACb,oBAAqB,QACrB,YAAa,OACd,CAAC,CAGF,SAAgB,GAAgC,CAC9C,OAAA,EAAA,EAAA,YAAkB,EAAa,CAAC,OAIlC,SAAgB,GAAmB,CACjC,OAAA,EAAA,EAAA,YAAkB,EAAa,CAAC,IAIlC,SAAgB,EACd,EACmB,CACnB,GAAM,CAAE,SAAQ,iBAAA,EAAA,EAAA,YAA4B,EAAa,CAEzD,OAAA,EAAA,EAAA,aACQ,IAAI,KAAK,aAAa,EAAQ,CAAE,GAAG,EAAc,GAAG,EAAS,CAAC,CACpE,CAAC,EAAQ,EAAc,EAAQ,CAChC,CAIH,SAAgB,EACd,EACqB,CACrB,GAAM,CAAE,SAAQ,mBAAA,EAAA,EAAA,YAA8B,EAAa,CAE3D,OAAA,EAAA,EAAA,aACQ,IAAI,KAAK,eAAe,EAAQ,CAAE,GAAG,EAAgB,GAAG,EAAS,CAAC,CACxE,CAAC,EAAQ,EAAgB,EAAQ,CAClC,CAIH,SAAgB,GAAmC,CACjD,OAAA,EAAA,EAAA,YAAkB,EAAa,CAAC,YAIlC,SAAgB,GAA2C,CACzD,OAAA,EAAA,EAAA,YAAkB,EAAa,CAAC,oBAIlC,SAAgB,GAAmC,CACjD,OAAA,EAAA,EAAA,YAAkB,EAAa,CAAC"}
1
+ {"version":3,"file":"GnomeContext.cjs","names":[],"sources":["../../../src/components/GnomeProvider/GnomeContext.ts"],"sourcesContent":["import { createContext, useContext, useMemo } from 'react';\n\nexport type GnomeDir = 'ltr' | 'rtl';\nexport type GnomeColorScheme = 'light' | 'dark' | 'system';\nexport type GnomeNamedAccentColor =\n | 'blue'\n | 'green'\n | 'yellow'\n | 'orange'\n | 'red'\n | 'purple'\n | 'brown';\nexport type GnomeAccentColor = GnomeNamedAccentColor | (string & {});\n\nexport interface GnomeContextValue {\n locale: string | undefined;\n dir: GnomeDir;\n numberFormat: Intl.NumberFormatOptions | undefined;\n dateTimeFormat: Intl.DateTimeFormatOptions | undefined;\n colorScheme: GnomeColorScheme;\n resolvedColorScheme: 'light' | 'dark';\n accentColor: GnomeAccentColor;\n}\n\nexport const GnomeContext = createContext<GnomeContextValue>({\n locale: undefined,\n dir: 'ltr',\n numberFormat: undefined,\n dateTimeFormat: undefined,\n colorScheme: 'system',\n resolvedColorScheme: 'light',\n accentColor: 'blue',\n});\n\n/** Returns the locale set by the nearest `GnomeProvider`, or `undefined` to use the browser locale. */\nexport function useLocale(): string | undefined {\n return useContext(GnomeContext).locale;\n}\n\n/** Returns the text direction set by the nearest `GnomeProvider`. Defaults to `\"ltr\"`. */\nexport function useDir(): GnomeDir {\n return useContext(GnomeContext).dir;\n}\n\n/** Returns an `Intl.NumberFormat` configured from `GnomeProvider` defaults plus local overrides. */\nexport function useNumberFormatter(options?: Intl.NumberFormatOptions): Intl.NumberFormat {\n const { locale, numberFormat } = useContext(GnomeContext);\n\n return useMemo(\n () => new Intl.NumberFormat(locale, { ...numberFormat, ...options }),\n [locale, numberFormat, options],\n );\n}\n\n/** Returns an `Intl.DateTimeFormat` configured from `GnomeProvider` defaults plus local overrides. */\nexport function useDateTimeFormatter(options?: Intl.DateTimeFormatOptions): Intl.DateTimeFormat {\n const { locale, dateTimeFormat } = useContext(GnomeContext);\n\n return useMemo(\n () => new Intl.DateTimeFormat(locale, { ...dateTimeFormat, ...options }),\n [locale, dateTimeFormat, options],\n );\n}\n\n/** Returns the color scheme preference set by the nearest `GnomeProvider`. Defaults to `\"system\"`. */\nexport function useColorScheme(): GnomeColorScheme {\n return useContext(GnomeContext).colorScheme;\n}\n\n/** Returns the resolved color scheme (`\"light\"` or `\"dark\"`), accounting for the system preference when `colorScheme` is `\"system\"`. */\nexport function useResolvedColorScheme(): 'light' | 'dark' {\n return useContext(GnomeContext).resolvedColorScheme;\n}\n\n/** Returns the accent color set by the nearest `GnomeProvider`. Defaults to `\"blue\"`. */\nexport function useAccentColor(): GnomeAccentColor {\n return useContext(GnomeContext).accentColor;\n}\n"],"mappings":"0FAwBA,IAAa,GAAA,EAAA,EAAA,eAAgD,CAC3D,OAAQ,IAAA,GACR,IAAK,MACL,aAAc,IAAA,GACd,eAAgB,IAAA,GAChB,YAAa,SACb,oBAAqB,QACrB,YAAa,OACd,CAAC,CAGF,SAAgB,GAAgC,CAC9C,OAAA,EAAA,EAAA,YAAkB,EAAa,CAAC,OAIlC,SAAgB,GAAmB,CACjC,OAAA,EAAA,EAAA,YAAkB,EAAa,CAAC,IAIlC,SAAgB,EAAmB,EAAuD,CACxF,GAAM,CAAE,SAAQ,iBAAA,EAAA,EAAA,YAA4B,EAAa,CAEzD,OAAA,EAAA,EAAA,aACQ,IAAI,KAAK,aAAa,EAAQ,CAAE,GAAG,EAAc,GAAG,EAAS,CAAC,CACpE,CAAC,EAAQ,EAAc,EAAQ,CAChC,CAIH,SAAgB,EAAqB,EAA2D,CAC9F,GAAM,CAAE,SAAQ,mBAAA,EAAA,EAAA,YAA8B,EAAa,CAE3D,OAAA,EAAA,EAAA,aACQ,IAAI,KAAK,eAAe,EAAQ,CAAE,GAAG,EAAgB,GAAG,EAAS,CAAC,CACxE,CAAC,EAAQ,EAAgB,EAAQ,CAClC,CAIH,SAAgB,GAAmC,CACjD,OAAA,EAAA,EAAA,YAAkB,EAAa,CAAC,YAIlC,SAAgB,GAA2C,CACzD,OAAA,EAAA,EAAA,YAAkB,EAAa,CAAC,oBAIlC,SAAgB,GAAmC,CACjD,OAAA,EAAA,EAAA,YAAkB,EAAa,CAAC"}
@@ -1,6 +1,6 @@
1
- export type GnomeDir = "ltr" | "rtl";
2
- export type GnomeColorScheme = "light" | "dark" | "system";
3
- export type GnomeNamedAccentColor = "blue" | "green" | "yellow" | "orange" | "red" | "purple" | "brown";
1
+ export type GnomeDir = 'ltr' | 'rtl';
2
+ export type GnomeColorScheme = 'light' | 'dark' | 'system';
3
+ export type GnomeNamedAccentColor = 'blue' | 'green' | 'yellow' | 'orange' | 'red' | 'purple' | 'brown';
4
4
  export type GnomeAccentColor = GnomeNamedAccentColor | (string & {});
5
5
  export interface GnomeContextValue {
6
6
  locale: string | undefined;
@@ -8,7 +8,7 @@ export interface GnomeContextValue {
8
8
  numberFormat: Intl.NumberFormatOptions | undefined;
9
9
  dateTimeFormat: Intl.DateTimeFormatOptions | undefined;
10
10
  colorScheme: GnomeColorScheme;
11
- resolvedColorScheme: "light" | "dark";
11
+ resolvedColorScheme: 'light' | 'dark';
12
12
  accentColor: GnomeAccentColor;
13
13
  }
14
14
  export declare const GnomeContext: import('react').Context<GnomeContextValue>;
@@ -23,6 +23,6 @@ export declare function useDateTimeFormatter(options?: Intl.DateTimeFormatOption
23
23
  /** Returns the color scheme preference set by the nearest `GnomeProvider`. Defaults to `"system"`. */
24
24
  export declare function useColorScheme(): GnomeColorScheme;
25
25
  /** Returns the resolved color scheme (`"light"` or `"dark"`), accounting for the system preference when `colorScheme` is `"system"`. */
26
- export declare function useResolvedColorScheme(): "light" | "dark";
26
+ export declare function useResolvedColorScheme(): 'light' | 'dark';
27
27
  /** Returns the accent color set by the nearest `GnomeProvider`. Defaults to `"blue"`. */
28
28
  export declare function useAccentColor(): GnomeAccentColor;
@@ -1 +1 @@
1
- {"version":3,"file":"GnomeContext.js","names":[],"sources":["../../../src/components/GnomeProvider/GnomeContext.ts"],"sourcesContent":["import { createContext, useContext, useMemo } from \"react\";\n\nexport type GnomeDir = \"ltr\" | \"rtl\";\nexport type GnomeColorScheme = \"light\" | \"dark\" | \"system\";\nexport type GnomeNamedAccentColor =\n | \"blue\"\n | \"green\"\n | \"yellow\"\n | \"orange\"\n | \"red\"\n | \"purple\"\n | \"brown\";\nexport type GnomeAccentColor = GnomeNamedAccentColor | (string & {});\n\nexport interface GnomeContextValue {\n locale: string | undefined;\n dir: GnomeDir;\n numberFormat: Intl.NumberFormatOptions | undefined;\n dateTimeFormat: Intl.DateTimeFormatOptions | undefined;\n colorScheme: GnomeColorScheme;\n resolvedColorScheme: \"light\" | \"dark\";\n accentColor: GnomeAccentColor;\n}\n\nexport const GnomeContext = createContext<GnomeContextValue>({\n locale: undefined,\n dir: \"ltr\",\n numberFormat: undefined,\n dateTimeFormat: undefined,\n colorScheme: \"system\",\n resolvedColorScheme: \"light\",\n accentColor: \"blue\",\n});\n\n/** Returns the locale set by the nearest `GnomeProvider`, or `undefined` to use the browser locale. */\nexport function useLocale(): string | undefined {\n return useContext(GnomeContext).locale;\n}\n\n/** Returns the text direction set by the nearest `GnomeProvider`. Defaults to `\"ltr\"`. */\nexport function useDir(): GnomeDir {\n return useContext(GnomeContext).dir;\n}\n\n/** Returns an `Intl.NumberFormat` configured from `GnomeProvider` defaults plus local overrides. */\nexport function useNumberFormatter(\n options?: Intl.NumberFormatOptions,\n): Intl.NumberFormat {\n const { locale, numberFormat } = useContext(GnomeContext);\n\n return useMemo(\n () => new Intl.NumberFormat(locale, { ...numberFormat, ...options }),\n [locale, numberFormat, options],\n );\n}\n\n/** Returns an `Intl.DateTimeFormat` configured from `GnomeProvider` defaults plus local overrides. */\nexport function useDateTimeFormatter(\n options?: Intl.DateTimeFormatOptions,\n): Intl.DateTimeFormat {\n const { locale, dateTimeFormat } = useContext(GnomeContext);\n\n return useMemo(\n () => new Intl.DateTimeFormat(locale, { ...dateTimeFormat, ...options }),\n [locale, dateTimeFormat, options],\n );\n}\n\n/** Returns the color scheme preference set by the nearest `GnomeProvider`. Defaults to `\"system\"`. */\nexport function useColorScheme(): GnomeColorScheme {\n return useContext(GnomeContext).colorScheme;\n}\n\n/** Returns the resolved color scheme (`\"light\"` or `\"dark\"`), accounting for the system preference when `colorScheme` is `\"system\"`. */\nexport function useResolvedColorScheme(): \"light\" | \"dark\" {\n return useContext(GnomeContext).resolvedColorScheme;\n}\n\n/** Returns the accent color set by the nearest `GnomeProvider`. Defaults to `\"blue\"`. */\nexport function useAccentColor(): GnomeAccentColor {\n return useContext(GnomeContext).accentColor;\n}\n"],"mappings":";;AAwBA,IAAa,IAAe,EAAiC;CAC3D,QAAQ,KAAA;CACR,KAAK;CACL,cAAc,KAAA;CACd,gBAAgB,KAAA;CAChB,aAAa;CACb,qBAAqB;CACrB,aAAa;CACd,CAAC;AAGF,SAAgB,IAAgC;AAC9C,QAAO,EAAW,EAAa,CAAC;;AAIlC,SAAgB,IAAmB;AACjC,QAAO,EAAW,EAAa,CAAC;;AAIlC,SAAgB,EACd,GACmB;CACnB,IAAM,EAAE,WAAQ,oBAAiB,EAAW,EAAa;AAEzD,QAAO,QACC,IAAI,KAAK,aAAa,GAAQ;EAAE,GAAG;EAAc,GAAG;EAAS,CAAC,EACpE;EAAC;EAAQ;EAAc;EAAQ,CAChC;;AAIH,SAAgB,EACd,GACqB;CACrB,IAAM,EAAE,WAAQ,sBAAmB,EAAW,EAAa;AAE3D,QAAO,QACC,IAAI,KAAK,eAAe,GAAQ;EAAE,GAAG;EAAgB,GAAG;EAAS,CAAC,EACxE;EAAC;EAAQ;EAAgB;EAAQ,CAClC;;AAIH,SAAgB,IAAmC;AACjD,QAAO,EAAW,EAAa,CAAC;;AAIlC,SAAgB,IAA2C;AACzD,QAAO,EAAW,EAAa,CAAC;;AAIlC,SAAgB,IAAmC;AACjD,QAAO,EAAW,EAAa,CAAC"}
1
+ {"version":3,"file":"GnomeContext.js","names":[],"sources":["../../../src/components/GnomeProvider/GnomeContext.ts"],"sourcesContent":["import { createContext, useContext, useMemo } from 'react';\n\nexport type GnomeDir = 'ltr' | 'rtl';\nexport type GnomeColorScheme = 'light' | 'dark' | 'system';\nexport type GnomeNamedAccentColor =\n | 'blue'\n | 'green'\n | 'yellow'\n | 'orange'\n | 'red'\n | 'purple'\n | 'brown';\nexport type GnomeAccentColor = GnomeNamedAccentColor | (string & {});\n\nexport interface GnomeContextValue {\n locale: string | undefined;\n dir: GnomeDir;\n numberFormat: Intl.NumberFormatOptions | undefined;\n dateTimeFormat: Intl.DateTimeFormatOptions | undefined;\n colorScheme: GnomeColorScheme;\n resolvedColorScheme: 'light' | 'dark';\n accentColor: GnomeAccentColor;\n}\n\nexport const GnomeContext = createContext<GnomeContextValue>({\n locale: undefined,\n dir: 'ltr',\n numberFormat: undefined,\n dateTimeFormat: undefined,\n colorScheme: 'system',\n resolvedColorScheme: 'light',\n accentColor: 'blue',\n});\n\n/** Returns the locale set by the nearest `GnomeProvider`, or `undefined` to use the browser locale. */\nexport function useLocale(): string | undefined {\n return useContext(GnomeContext).locale;\n}\n\n/** Returns the text direction set by the nearest `GnomeProvider`. Defaults to `\"ltr\"`. */\nexport function useDir(): GnomeDir {\n return useContext(GnomeContext).dir;\n}\n\n/** Returns an `Intl.NumberFormat` configured from `GnomeProvider` defaults plus local overrides. */\nexport function useNumberFormatter(options?: Intl.NumberFormatOptions): Intl.NumberFormat {\n const { locale, numberFormat } = useContext(GnomeContext);\n\n return useMemo(\n () => new Intl.NumberFormat(locale, { ...numberFormat, ...options }),\n [locale, numberFormat, options],\n );\n}\n\n/** Returns an `Intl.DateTimeFormat` configured from `GnomeProvider` defaults plus local overrides. */\nexport function useDateTimeFormatter(options?: Intl.DateTimeFormatOptions): Intl.DateTimeFormat {\n const { locale, dateTimeFormat } = useContext(GnomeContext);\n\n return useMemo(\n () => new Intl.DateTimeFormat(locale, { ...dateTimeFormat, ...options }),\n [locale, dateTimeFormat, options],\n );\n}\n\n/** Returns the color scheme preference set by the nearest `GnomeProvider`. Defaults to `\"system\"`. */\nexport function useColorScheme(): GnomeColorScheme {\n return useContext(GnomeContext).colorScheme;\n}\n\n/** Returns the resolved color scheme (`\"light\"` or `\"dark\"`), accounting for the system preference when `colorScheme` is `\"system\"`. */\nexport function useResolvedColorScheme(): 'light' | 'dark' {\n return useContext(GnomeContext).resolvedColorScheme;\n}\n\n/** Returns the accent color set by the nearest `GnomeProvider`. Defaults to `\"blue\"`. */\nexport function useAccentColor(): GnomeAccentColor {\n return useContext(GnomeContext).accentColor;\n}\n"],"mappings":";;AAwBA,IAAa,IAAe,EAAiC;CAC3D,QAAQ,KAAA;CACR,KAAK;CACL,cAAc,KAAA;CACd,gBAAgB,KAAA;CAChB,aAAa;CACb,qBAAqB;CACrB,aAAa;CACd,CAAC;AAGF,SAAgB,IAAgC;AAC9C,QAAO,EAAW,EAAa,CAAC;;AAIlC,SAAgB,IAAmB;AACjC,QAAO,EAAW,EAAa,CAAC;;AAIlC,SAAgB,EAAmB,GAAuD;CACxF,IAAM,EAAE,WAAQ,oBAAiB,EAAW,EAAa;AAEzD,QAAO,QACC,IAAI,KAAK,aAAa,GAAQ;EAAE,GAAG;EAAc,GAAG;EAAS,CAAC,EACpE;EAAC;EAAQ;EAAc;EAAQ,CAChC;;AAIH,SAAgB,EAAqB,GAA2D;CAC9F,IAAM,EAAE,WAAQ,sBAAmB,EAAW,EAAa;AAE3D,QAAO,QACC,IAAI,KAAK,eAAe,GAAQ;EAAE,GAAG;EAAgB,GAAG;EAAS,CAAC,EACxE;EAAC;EAAQ;EAAgB;EAAQ,CAClC;;AAIH,SAAgB,IAAmC;AACjD,QAAO,EAAW,EAAa,CAAC;;AAIlC,SAAgB,IAA2C;AACzD,QAAO,EAAW,EAAa,CAAC;;AAIlC,SAAgB,IAAmC;AACjD,QAAO,EAAW,EAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"GnomeProvider.cjs","names":[],"sources":["../../../src/components/GnomeProvider/GnomeProvider.tsx"],"sourcesContent":["import { useEffect, useMemo, useReducer, type ReactNode } from \"react\";\nimport {\n GnomeContext,\n type GnomeAccentColor,\n type GnomeColorScheme,\n type GnomeDir,\n} from \"./GnomeContext\";\n\nconst NAMED_ACCENT_COLORS = new Set<string>([\n \"blue\", \"green\", \"yellow\", \"orange\", \"red\", \"purple\", \"brown\",\n]);\n\nexport interface GnomeProviderProps {\n /**\n * BCP 47 locale tag (e.g. `\"es-ES\"`, `\"de-DE\"`).\n * When omitted, components fall back to the browser locale.\n */\n locale?: string;\n /** Text direction. Defaults to `\"ltr\"`. */\n dir?: GnomeDir;\n /**\n * Global defaults for number formatting.\n *\n * Use `{ notation: \"compact\", compactDisplay: \"short\" }` for compact\n * values such as `1K`; omit it or set `{ notation: \"standard\" }` for\n * full values such as `1,000`.\n */\n numberFormat?: Intl.NumberFormatOptions;\n /** Global defaults for date/time formatting. */\n dateTimeFormat?: Intl.DateTimeFormatOptions;\n /**\n * Color scheme preference. When set to `\"system\"` (default), the OS\n * preference is respected via `prefers-color-scheme`. When set to\n * `\"light\"` or `\"dark\"`, the `data-theme` attribute is applied to\n * `document.documentElement` to force that theme.\n */\n colorScheme?: GnomeColorScheme;\n /**\n * Accent color. Accepts a named GNOME palette color (`\"blue\"`, `\"green\"`,\n * `\"yellow\"`, `\"orange\"`, `\"red\"`, `\"purple\"`, `\"brown\"`) or any CSS color\n * string (e.g. `\"#ff0000\"`). Named colors are theme-aware and use the\n * correct shade for light/dark mode automatically. Defaults to `\"blue\"`.\n */\n accentColor?: GnomeAccentColor;\n children: ReactNode;\n}\n\nfunction getSystemIsDark(): boolean {\n return typeof window !== \"undefined\" &&\n window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n}\n\n/** Provides locale, text direction, color scheme, and accent color to all descendant gnome-ui components. */\nexport function GnomeProvider({\n locale,\n dir = \"ltr\",\n numberFormat,\n dateTimeFormat,\n colorScheme = \"system\",\n accentColor = \"blue\",\n children,\n}: GnomeProviderProps) {\n const [, forceUpdate] = useReducer((n: number) => n + 1, 0);\n\n useEffect(() => {\n if (colorScheme !== \"system\") return;\n const mq = window.matchMedia(\"(prefers-color-scheme: dark)\");\n mq.addEventListener(\"change\", forceUpdate);\n return () => mq.removeEventListener(\"change\", forceUpdate);\n }, [colorScheme]);\n\n useEffect(() => {\n const root = document.documentElement;\n if (colorScheme === \"system\") {\n root.removeAttribute(\"data-theme\");\n } else {\n root.setAttribute(\"data-theme\", colorScheme);\n }\n }, [colorScheme]);\n\n const resolvedColorScheme = colorScheme === \"system\"\n ? (getSystemIsDark() ? \"dark\" : \"light\")\n : colorScheme;\n\n useEffect(() => {\n const root = document.documentElement;\n if (accentColor === \"blue\") {\n root.style.removeProperty(\"--gnome-accent-color\");\n root.style.removeProperty(\"--gnome-accent-bg-color\");\n return;\n }\n if (NAMED_ACCENT_COLORS.has(accentColor)) {\n const shade = resolvedColorScheme === \"dark\" ? \"2\" : \"3\";\n root.style.setProperty(\"--gnome-accent-color\", `var(--gnome-${accentColor}-${shade})`);\n root.style.setProperty(\"--gnome-accent-bg-color\", `var(--gnome-${accentColor}-3)`);\n } else {\n root.style.setProperty(\"--gnome-accent-color\", accentColor);\n root.style.setProperty(\"--gnome-accent-bg-color\", accentColor);\n }\n }, [accentColor, resolvedColorScheme]);\n\n const value = useMemo(\n () => ({ locale, dir, numberFormat, dateTimeFormat, colorScheme, resolvedColorScheme, accentColor }),\n [locale, dir, numberFormat, dateTimeFormat, colorScheme, resolvedColorScheme, accentColor],\n );\n\n return (\n <GnomeContext.Provider value={value}>\n {children}\n </GnomeContext.Provider>\n );\n}\n"],"mappings":"+JAQA,IAAM,EAAsB,IAAI,IAAY,CAC1C,OAAQ,QAAS,SAAU,SAAU,MAAO,SAAU,QACvD,CAAC,CAqCF,SAAS,GAA2B,CAClC,OAAO,OAAO,OAAW,KACvB,OAAO,WAAW,+BAA+B,CAAC,QAItD,SAAgB,EAAc,CAC5B,SACA,MAAM,MACN,eACA,iBACA,cAAc,SACd,cAAc,OACd,YACqB,CACrB,GAAM,EAAG,IAAA,EAAA,EAAA,YAA2B,GAAc,EAAI,EAAG,EAAE,EAE3D,EAAA,EAAA,eAAgB,CACd,GAAI,IAAgB,SAAU,OAC9B,IAAM,EAAK,OAAO,WAAW,+BAA+B,CAE5D,OADA,EAAG,iBAAiB,SAAU,EAAY,KAC7B,EAAG,oBAAoB,SAAU,EAAY,EACzD,CAAC,EAAY,CAAC,EAEjB,EAAA,EAAA,eAAgB,CACd,IAAM,EAAO,SAAS,gBAClB,IAAgB,SAClB,EAAK,gBAAgB,aAAa,CAElC,EAAK,aAAa,aAAc,EAAY,EAE7C,CAAC,EAAY,CAAC,CAEjB,IAAM,EAAsB,IAAgB,SACvC,GAAiB,CAAG,OAAS,QAC9B,GAEJ,EAAA,EAAA,eAAgB,CACd,IAAM,EAAO,SAAS,gBACtB,GAAI,IAAgB,OAAQ,CAC1B,EAAK,MAAM,eAAe,uBAAuB,CACjD,EAAK,MAAM,eAAe,0BAA0B,CACpD,OAEF,GAAI,EAAoB,IAAI,EAAY,CAAE,CACxC,IAAM,EAAQ,IAAwB,OAAS,IAAM,IACrD,EAAK,MAAM,YAAY,uBAAwB,eAAe,EAAY,GAAG,EAAM,GAAG,CACtF,EAAK,MAAM,YAAY,0BAA2B,eAAe,EAAY,KAAK,MAElF,EAAK,MAAM,YAAY,uBAAwB,EAAY,CAC3D,EAAK,MAAM,YAAY,0BAA2B,EAAY,EAE/D,CAAC,EAAa,EAAoB,CAAC,CAEtC,IAAM,GAAA,EAAA,EAAA,cACG,CAAE,SAAQ,MAAK,eAAc,iBAAgB,cAAa,sBAAqB,cAAa,EACnG,CAAC,EAAQ,EAAK,EAAc,EAAgB,EAAa,EAAqB,EAAY,CAC3F,CAED,OACE,EAAA,EAAA,KAAC,EAAA,aAAa,SAAd,CAA8B,QAC3B,WACqB,CAAA"}
1
+ {"version":3,"file":"GnomeProvider.cjs","names":[],"sources":["../../../src/components/GnomeProvider/GnomeProvider.tsx"],"sourcesContent":["import { type ReactNode, useEffect, useMemo, useReducer } from 'react';\n\nimport {\n type GnomeAccentColor,\n type GnomeColorScheme,\n GnomeContext,\n type GnomeDir,\n} from './GnomeContext';\n\nconst NAMED_ACCENT_COLORS = new Set<string>([\n 'blue',\n 'green',\n 'yellow',\n 'orange',\n 'red',\n 'purple',\n 'brown',\n]);\n\nexport interface GnomeProviderProps {\n /**\n * BCP 47 locale tag (e.g. `\"es-ES\"`, `\"de-DE\"`).\n * When omitted, components fall back to the browser locale.\n */\n locale?: string;\n /** Text direction. Defaults to `\"ltr\"`. */\n dir?: GnomeDir;\n /**\n * Global defaults for number formatting.\n *\n * Use `{ notation: \"compact\", compactDisplay: \"short\" }` for compact\n * values such as `1K`; omit it or set `{ notation: \"standard\" }` for\n * full values such as `1,000`.\n */\n numberFormat?: Intl.NumberFormatOptions;\n /** Global defaults for date/time formatting. */\n dateTimeFormat?: Intl.DateTimeFormatOptions;\n /**\n * Color scheme preference. When set to `\"system\"` (default), the OS\n * preference is respected via `prefers-color-scheme`. When set to\n * `\"light\"` or `\"dark\"`, the `data-theme` attribute is applied to\n * `document.documentElement` to force that theme.\n */\n colorScheme?: GnomeColorScheme;\n /**\n * Accent color. Accepts a named GNOME palette color (`\"blue\"`, `\"green\"`,\n * `\"yellow\"`, `\"orange\"`, `\"red\"`, `\"purple\"`, `\"brown\"`) or any CSS color\n * string (e.g. `\"#ff0000\"`). Named colors are theme-aware and use the\n * correct shade for light/dark mode automatically. Defaults to `\"blue\"`.\n */\n accentColor?: GnomeAccentColor;\n children: ReactNode;\n}\n\nfunction getSystemIsDark(): boolean {\n return typeof window !== 'undefined' && window.matchMedia('(prefers-color-scheme: dark)').matches;\n}\n\n/** Provides locale, text direction, color scheme, and accent color to all descendant gnome-ui components. */\nexport function GnomeProvider({\n locale,\n dir = 'ltr',\n numberFormat,\n dateTimeFormat,\n colorScheme = 'system',\n accentColor = 'blue',\n children,\n}: GnomeProviderProps) {\n const [, forceUpdate] = useReducer((n: number) => n + 1, 0);\n\n useEffect(() => {\n if (colorScheme !== 'system') {\n return;\n }\n\n const mq = window.matchMedia('(prefers-color-scheme: dark)');\n\n mq.addEventListener('change', forceUpdate);\n\n return () => mq.removeEventListener('change', forceUpdate);\n }, [colorScheme]);\n\n useEffect(() => {\n const root = document.documentElement;\n\n if (colorScheme === 'system') {\n root.removeAttribute('data-theme');\n } else {\n root.setAttribute('data-theme', colorScheme);\n }\n }, [colorScheme]);\n\n const resolvedColorScheme =\n colorScheme === 'system' ? (getSystemIsDark() ? 'dark' : 'light') : colorScheme;\n\n useEffect(() => {\n const root = document.documentElement;\n\n if (accentColor === 'blue') {\n root.style.removeProperty('--gnome-accent-color');\n root.style.removeProperty('--gnome-accent-bg-color');\n\n return;\n }\n\n if (NAMED_ACCENT_COLORS.has(accentColor)) {\n const shade = resolvedColorScheme === 'dark' ? '2' : '3';\n\n root.style.setProperty('--gnome-accent-color', `var(--gnome-${accentColor}-${shade})`);\n root.style.setProperty('--gnome-accent-bg-color', `var(--gnome-${accentColor}-3)`);\n } else {\n root.style.setProperty('--gnome-accent-color', accentColor);\n root.style.setProperty('--gnome-accent-bg-color', accentColor);\n }\n }, [accentColor, resolvedColorScheme]);\n\n const value = useMemo(\n () => ({\n locale,\n dir,\n numberFormat,\n dateTimeFormat,\n colorScheme,\n resolvedColorScheme,\n accentColor,\n }),\n [locale, dir, numberFormat, dateTimeFormat, colorScheme, resolvedColorScheme, accentColor],\n );\n\n return <GnomeContext.Provider value={value}>{children}</GnomeContext.Provider>;\n}\n"],"mappings":"+JASA,IAAM,EAAsB,IAAI,IAAY,CAC1C,OACA,QACA,SACA,SACA,MACA,SACA,QACD,CAAC,CAqCF,SAAS,GAA2B,CAClC,OAAO,OAAO,OAAW,KAAe,OAAO,WAAW,+BAA+B,CAAC,QAI5F,SAAgB,EAAc,CAC5B,SACA,MAAM,MACN,eACA,iBACA,cAAc,SACd,cAAc,OACd,YACqB,CACrB,GAAM,EAAG,IAAA,EAAA,EAAA,YAA2B,GAAc,EAAI,EAAG,EAAE,EAE3D,EAAA,EAAA,eAAgB,CACd,GAAI,IAAgB,SAClB,OAGF,IAAM,EAAK,OAAO,WAAW,+BAA+B,CAI5D,OAFA,EAAG,iBAAiB,SAAU,EAAY,KAE7B,EAAG,oBAAoB,SAAU,EAAY,EACzD,CAAC,EAAY,CAAC,EAEjB,EAAA,EAAA,eAAgB,CACd,IAAM,EAAO,SAAS,gBAElB,IAAgB,SAClB,EAAK,gBAAgB,aAAa,CAElC,EAAK,aAAa,aAAc,EAAY,EAE7C,CAAC,EAAY,CAAC,CAEjB,IAAM,EACJ,IAAgB,SAAY,GAAiB,CAAG,OAAS,QAAW,GAEtE,EAAA,EAAA,eAAgB,CACd,IAAM,EAAO,SAAS,gBAEtB,GAAI,IAAgB,OAAQ,CAC1B,EAAK,MAAM,eAAe,uBAAuB,CACjD,EAAK,MAAM,eAAe,0BAA0B,CAEpD,OAGF,GAAI,EAAoB,IAAI,EAAY,CAAE,CACxC,IAAM,EAAQ,IAAwB,OAAS,IAAM,IAErD,EAAK,MAAM,YAAY,uBAAwB,eAAe,EAAY,GAAG,EAAM,GAAG,CACtF,EAAK,MAAM,YAAY,0BAA2B,eAAe,EAAY,KAAK,MAElF,EAAK,MAAM,YAAY,uBAAwB,EAAY,CAC3D,EAAK,MAAM,YAAY,0BAA2B,EAAY,EAE/D,CAAC,EAAa,EAAoB,CAAC,CAEtC,IAAM,GAAA,EAAA,EAAA,cACG,CACL,SACA,MACA,eACA,iBACA,cACA,sBACA,cACD,EACD,CAAC,EAAQ,EAAK,EAAc,EAAgB,EAAa,EAAqB,EAAY,CAC3F,CAED,OAAO,EAAA,EAAA,KAAC,EAAA,aAAa,SAAd,CAA8B,QAAQ,WAAiC,CAAA"}