@lidofinance/lido-app-ui 1.12.0 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (679) hide show
  1. package/README.md +85 -19
  2. package/dist/README.md +85 -19
  3. package/dist/cjs/accordion/Accordion.cjs +1 -0
  4. package/dist/cjs/accordion/Accordion.cjs.map +1 -1
  5. package/dist/cjs/address/Address.cjs +50 -0
  6. package/dist/cjs/address/Address.cjs.map +1 -0
  7. package/dist/cjs/address/Address.module.css.cjs +6 -0
  8. package/dist/cjs/address/Address.module.css.cjs.map +1 -0
  9. package/dist/cjs/address-button/AddressButton.cjs +49 -0
  10. package/dist/cjs/address-button/AddressButton.cjs.map +1 -0
  11. package/dist/cjs/address-button/AddressButton.module.css.cjs +6 -0
  12. package/dist/cjs/address-button/AddressButton.module.css.cjs.map +1 -0
  13. package/dist/cjs/badge/Badge.cjs +1 -0
  14. package/dist/cjs/badge/Badge.cjs.map +1 -1
  15. package/dist/cjs/banner/Banner.cjs +1 -0
  16. package/dist/cjs/banner/Banner.cjs.map +1 -1
  17. package/dist/cjs/breadcrumbs/Breadcrumbs.cjs +55 -26
  18. package/dist/cjs/breadcrumbs/Breadcrumbs.cjs.map +1 -1
  19. package/dist/cjs/breadcrumbs/Breadcrumbs.module.css.cjs +1 -1
  20. package/dist/cjs/button/Button.cjs +15 -24
  21. package/dist/cjs/button/Button.cjs.map +1 -1
  22. package/dist/cjs/button/Button.module.css.cjs +1 -1
  23. package/dist/cjs/button/ButtonContent.cjs +50 -0
  24. package/dist/cjs/button/ButtonContent.cjs.map +1 -0
  25. package/dist/cjs/button/LinkButton.cjs +46 -0
  26. package/dist/cjs/button/LinkButton.cjs.map +1 -0
  27. package/dist/cjs/card/Card.cjs +1 -0
  28. package/dist/cjs/card/Card.cjs.map +1 -1
  29. package/dist/cjs/checkbox/Checkbox.cjs +1 -0
  30. package/dist/cjs/checkbox/Checkbox.cjs.map +1 -1
  31. package/dist/cjs/copy/Copy.cjs +55 -0
  32. package/dist/cjs/copy/Copy.cjs.map +1 -0
  33. package/dist/cjs/copy/Copy.module.css.cjs +6 -0
  34. package/dist/cjs/copy/Copy.module.css.cjs.map +1 -0
  35. package/dist/cjs/copy/useCopy.cjs +33 -0
  36. package/dist/cjs/copy/useCopy.cjs.map +1 -0
  37. package/dist/cjs/counter/Counter.cjs +6 -2
  38. package/dist/cjs/counter/Counter.cjs.map +1 -1
  39. package/dist/cjs/counter/CounterSlot.cjs +19 -2
  40. package/dist/cjs/counter/CounterSlot.cjs.map +1 -1
  41. package/dist/cjs/counter/CounterSlot.module.css.cjs +1 -1
  42. package/dist/cjs/data-list/DataList.cjs +1 -0
  43. package/dist/cjs/data-list/DataList.cjs.map +1 -1
  44. package/dist/cjs/data-list/DataList.module.css.cjs +1 -1
  45. package/dist/cjs/data-list/DataListRow.cjs +7 -12
  46. package/dist/cjs/data-list/DataListRow.cjs.map +1 -1
  47. package/dist/cjs/disclaimer/Disclaimer.cjs +10 -3
  48. package/dist/cjs/disclaimer/Disclaimer.cjs.map +1 -1
  49. package/dist/cjs/divider/Divider.cjs +5 -0
  50. package/dist/cjs/divider/Divider.cjs.map +1 -1
  51. package/dist/cjs/error-page/ErrorPage.cjs +14 -7
  52. package/dist/cjs/error-page/ErrorPage.cjs.map +1 -1
  53. package/dist/cjs/footer/Footer.cjs +10 -2
  54. package/dist/cjs/footer/Footer.cjs.map +1 -1
  55. package/dist/cjs/grid/Grid.cjs +7 -3
  56. package/dist/cjs/grid/Grid.cjs.map +1 -1
  57. package/dist/cjs/grid/Grid.module.css.cjs +1 -1
  58. package/dist/cjs/grid/GridItem.cjs +2 -0
  59. package/dist/cjs/grid/GridItem.cjs.map +1 -1
  60. package/dist/cjs/header/Header.cjs +10 -2
  61. package/dist/cjs/header/Header.cjs.map +1 -1
  62. package/dist/cjs/header/HeaderNav.cjs +33 -21
  63. package/dist/cjs/header/HeaderNav.cjs.map +1 -1
  64. package/dist/cjs/header/HeaderNav.module.css.cjs +1 -1
  65. package/dist/cjs/hex/Hex.cjs +41 -0
  66. package/dist/cjs/hex/Hex.cjs.map +1 -0
  67. package/dist/cjs/hex/Hex.module.css.cjs +6 -0
  68. package/dist/cjs/hex/Hex.module.css.cjs.map +1 -0
  69. package/dist/cjs/hex/trimHex.cjs +15 -0
  70. package/dist/cjs/hex/trimHex.cjs.map +1 -0
  71. package/dist/cjs/hidden/Hidden.cjs +10 -4
  72. package/dist/cjs/hidden/Hidden.cjs.map +1 -1
  73. package/dist/cjs/hooks/Portal.cjs +14 -11
  74. package/dist/cjs/hooks/Portal.cjs.map +1 -1
  75. package/dist/cjs/hooks/useBodyScrollLock.cjs +49 -13
  76. package/dist/cjs/hooks/useBodyScrollLock.cjs.map +1 -1
  77. package/dist/cjs/hooks/useEdgeFade.cjs +60 -0
  78. package/dist/cjs/hooks/useEdgeFade.cjs.map +1 -0
  79. package/dist/cjs/hooks/useEscape.cjs +8 -5
  80. package/dist/cjs/hooks/useEscape.cjs.map +1 -1
  81. package/dist/cjs/hooks/useFocusTrap.cjs +61 -24
  82. package/dist/cjs/hooks/useFocusTrap.cjs.map +1 -1
  83. package/dist/cjs/hooks/useHideOthers.cjs +51 -0
  84. package/dist/cjs/hooks/useHideOthers.cjs.map +1 -0
  85. package/dist/cjs/hooks/useOutsideClick.cjs +31 -4
  86. package/dist/cjs/hooks/useOutsideClick.cjs.map +1 -1
  87. package/dist/cjs/icon-button/CloseButton.cjs +27 -0
  88. package/dist/cjs/icon-button/CloseButton.cjs.map +1 -0
  89. package/dist/cjs/icon-button/IconButton.cjs +6 -1
  90. package/dist/cjs/icon-button/IconButton.cjs.map +1 -1
  91. package/dist/cjs/icon-button/IconButton.module.css.cjs +1 -1
  92. package/dist/cjs/icons/TokenIcon.cjs +2 -0
  93. package/dist/cjs/icons/TokenIcon.cjs.map +1 -1
  94. package/dist/cjs/identicon/Identicon.cjs +2 -0
  95. package/dist/cjs/identicon/Identicon.cjs.map +1 -1
  96. package/dist/cjs/index.cjs +67 -5
  97. package/dist/cjs/index.cjs.map +1 -1
  98. package/dist/cjs/index.css +14 -4
  99. package/dist/cjs/info-tooltip/InfoTooltip.cjs +34 -0
  100. package/dist/cjs/info-tooltip/InfoTooltip.cjs.map +1 -0
  101. package/dist/cjs/info-tooltip/InfoTooltip.module.css.cjs +6 -0
  102. package/dist/cjs/info-tooltip/InfoTooltip.module.css.cjs.map +1 -0
  103. package/dist/cjs/input/Input.cjs +4 -8
  104. package/dist/cjs/input/Input.cjs.map +1 -1
  105. package/dist/cjs/input/Input.module.css.cjs +1 -1
  106. package/dist/cjs/link-provider/Anchor.cjs +23 -2
  107. package/dist/cjs/link-provider/Anchor.cjs.map +1 -1
  108. package/dist/cjs/link-provider/LinkProvider.cjs +1 -1
  109. package/dist/cjs/link-provider/LinkProvider.cjs.map +1 -1
  110. package/dist/cjs/logo/Logo.cjs +8 -0
  111. package/dist/cjs/logo/Logo.cjs.map +1 -1
  112. package/dist/cjs/message-box/MessageBox.cjs +1 -0
  113. package/dist/cjs/message-box/MessageBox.cjs.map +1 -1
  114. package/dist/cjs/modal/Modal.cjs +73 -15
  115. package/dist/cjs/modal/Modal.cjs.map +1 -1
  116. package/dist/cjs/nav-link/NavLink.cjs +6 -4
  117. package/dist/cjs/nav-link/NavLink.cjs.map +1 -1
  118. package/dist/cjs/notification/Notification.cjs +12 -6
  119. package/dist/cjs/notification/Notification.cjs.map +1 -1
  120. package/dist/cjs/page-layout/Layout.cjs +25 -0
  121. package/dist/cjs/page-layout/Layout.cjs.map +1 -0
  122. package/dist/cjs/page-layout/Layout.module.css.cjs +6 -0
  123. package/dist/cjs/page-layout/Layout.module.css.cjs.map +1 -0
  124. package/dist/cjs/page-layout/Main.cjs +29 -0
  125. package/dist/cjs/page-layout/Main.cjs.map +1 -0
  126. package/dist/cjs/page-layout/Main.module.css.cjs +6 -0
  127. package/dist/cjs/page-layout/Main.module.css.cjs.map +1 -0
  128. package/dist/cjs/page-layout/PageContent.cjs +22 -0
  129. package/dist/cjs/page-layout/PageContent.cjs.map +1 -0
  130. package/dist/cjs/page-layout/PageContent.module.css.cjs +6 -0
  131. package/dist/cjs/page-layout/PageContent.module.css.cjs.map +1 -0
  132. package/dist/cjs/pagination/Pagination.cjs +11 -6
  133. package/dist/cjs/pagination/Pagination.cjs.map +1 -1
  134. package/dist/cjs/popover/Popover.cjs +71 -15
  135. package/dist/cjs/popover/Popover.cjs.map +1 -1
  136. package/dist/cjs/radio-button/RadioButton.cjs +1 -0
  137. package/dist/cjs/radio-button/RadioButton.cjs.map +1 -1
  138. package/dist/cjs/rich-input/RichInput.cjs +22 -46
  139. package/dist/cjs/rich-input/RichInput.cjs.map +1 -1
  140. package/dist/cjs/rich-input/RichInput.module.css.cjs +1 -1
  141. package/dist/cjs/section-title/SectionTitle.cjs +9 -10
  142. package/dist/cjs/section-title/SectionTitle.cjs.map +1 -1
  143. package/dist/cjs/section-title/SectionTitle.module.css.cjs +1 -1
  144. package/dist/cjs/segmented-control/SegmentedControl.cjs +1 -0
  145. package/dist/cjs/segmented-control/SegmentedControl.cjs.map +1 -1
  146. package/dist/cjs/segmented-control/SegmentedControlCard.cjs +1 -0
  147. package/dist/cjs/segmented-control/SegmentedControlCard.cjs.map +1 -1
  148. package/dist/cjs/sidebar/Sidebar.cjs +141 -0
  149. package/dist/cjs/sidebar/Sidebar.cjs.map +1 -0
  150. package/dist/cjs/sidebar/Sidebar.module.css.cjs +6 -0
  151. package/dist/cjs/sidebar/Sidebar.module.css.cjs.map +1 -0
  152. package/dist/cjs/sidebar/SidebarContext.cjs +13 -0
  153. package/dist/cjs/sidebar/SidebarContext.cjs.map +1 -0
  154. package/dist/cjs/sidebar/SidebarGroup.cjs +37 -0
  155. package/dist/cjs/sidebar/SidebarGroup.cjs.map +1 -0
  156. package/dist/cjs/sidebar/SidebarGroup.module.css.cjs +6 -0
  157. package/dist/cjs/sidebar/SidebarGroup.module.css.cjs.map +1 -0
  158. package/dist/cjs/sidebar/SidebarInset.cjs +25 -0
  159. package/dist/cjs/sidebar/SidebarInset.cjs.map +1 -0
  160. package/dist/cjs/sidebar/SidebarInset.module.css.cjs +6 -0
  161. package/dist/cjs/sidebar/SidebarInset.module.css.cjs.map +1 -0
  162. package/dist/cjs/sidebar/SidebarItem.cjs +42 -0
  163. package/dist/cjs/sidebar/SidebarItem.cjs.map +1 -0
  164. package/dist/cjs/sidebar/SidebarItem.module.css.cjs +6 -0
  165. package/dist/cjs/sidebar/SidebarItem.module.css.cjs.map +1 -0
  166. package/dist/cjs/sidebar/SidebarLayout.cjs +41 -0
  167. package/dist/cjs/sidebar/SidebarLayout.cjs.map +1 -0
  168. package/dist/cjs/sidebar/SidebarLayout.module.css.cjs +6 -0
  169. package/dist/cjs/sidebar/SidebarLayout.module.css.cjs.map +1 -0
  170. package/dist/cjs/sidebar/SidebarToggle.cjs +44 -0
  171. package/dist/cjs/sidebar/SidebarToggle.cjs.map +1 -0
  172. package/dist/cjs/sidebar/SidebarToggle.module.css.cjs +6 -0
  173. package/dist/cjs/sidebar/SidebarToggle.module.css.cjs.map +1 -0
  174. package/dist/cjs/sidebar/useSidebarDrawer.cjs +47 -0
  175. package/dist/cjs/sidebar/useSidebarDrawer.cjs.map +1 -0
  176. package/dist/cjs/skeleton/Skeleton.cjs +18 -20
  177. package/dist/cjs/skeleton/Skeleton.cjs.map +1 -1
  178. package/dist/cjs/skip-link/SkipLink.cjs +52 -0
  179. package/dist/cjs/skip-link/SkipLink.cjs.map +1 -0
  180. package/dist/cjs/skip-link/SkipLink.module.css.cjs +6 -0
  181. package/dist/cjs/skip-link/SkipLink.module.css.cjs.map +1 -0
  182. package/dist/cjs/slider/Slider.cjs +1 -0
  183. package/dist/cjs/slider/Slider.cjs.map +1 -1
  184. package/dist/cjs/small-card/SmallCard.cjs +6 -2
  185. package/dist/cjs/small-card/SmallCard.cjs.map +1 -1
  186. package/dist/cjs/stack/Stack.cjs +27 -7
  187. package/dist/cjs/stack/Stack.cjs.map +1 -1
  188. package/dist/cjs/stack/Stack.module.css.cjs +1 -1
  189. package/dist/cjs/stat-item/StatItem.cjs +4 -8
  190. package/dist/cjs/stat-item/StatItem.cjs.map +1 -1
  191. package/dist/cjs/stat-item/StatItem.module.css.cjs +1 -1
  192. package/dist/cjs/switch/Switch.cjs +1 -0
  193. package/dist/cjs/switch/Switch.cjs.map +1 -1
  194. package/dist/cjs/tabs/Tabs.cjs +1 -0
  195. package/dist/cjs/tabs/Tabs.cjs.map +1 -1
  196. package/dist/cjs/tag/Tag.cjs +73 -8
  197. package/dist/cjs/tag/Tag.cjs.map +1 -1
  198. package/dist/cjs/tag/Tag.module.css.cjs +1 -1
  199. package/dist/cjs/text-link/TextLink.cjs +10 -13
  200. package/dist/cjs/text-link/TextLink.cjs.map +1 -1
  201. package/dist/cjs/text-link/TextLink.module.css.cjs +1 -1
  202. package/dist/cjs/theme-switcher/ThemeSwitcher.cjs +13 -5
  203. package/dist/cjs/theme-switcher/ThemeSwitcher.cjs.map +1 -1
  204. package/dist/cjs/theme-switcher/ThemeSwitcher.module.css.cjs +6 -0
  205. package/dist/cjs/theme-switcher/ThemeSwitcher.module.css.cjs.map +1 -0
  206. package/dist/cjs/token-amount/TokenAmount.cjs +1 -0
  207. package/dist/cjs/token-amount/TokenAmount.cjs.map +1 -1
  208. package/dist/cjs/token-selector/TokenSelector.cjs +56 -64
  209. package/dist/cjs/token-selector/TokenSelector.cjs.map +1 -1
  210. package/dist/cjs/tooltip/Tooltip.cjs +42 -27
  211. package/dist/cjs/tooltip/Tooltip.cjs.map +1 -1
  212. package/dist/cjs/tx-status/TxStatus.cjs +2 -0
  213. package/dist/cjs/tx-status/TxStatus.cjs.map +1 -1
  214. package/dist/cjs/typography/Typography.cjs +2 -0
  215. package/dist/cjs/typography/Typography.cjs.map +1 -1
  216. package/dist/cjs/utils/ActionElement.cjs +2 -13
  217. package/dist/cjs/utils/ActionElement.cjs.map +1 -1
  218. package/dist/cjs/utils/breakpoints.cjs +26 -0
  219. package/dist/cjs/utils/breakpoints.cjs.map +1 -0
  220. package/dist/cjs/utils/responsive.cjs +19 -30
  221. package/dist/cjs/utils/responsive.cjs.map +1 -1
  222. package/dist/cjs/utils/surface.module.css.cjs +6 -0
  223. package/dist/cjs/utils/surface.module.css.cjs.map +1 -0
  224. package/dist/esm/accordion/Accordion.mjs +1 -0
  225. package/dist/esm/accordion/Accordion.mjs.map +1 -1
  226. package/dist/esm/address/Address.mjs +46 -0
  227. package/dist/esm/address/Address.mjs.map +1 -0
  228. package/dist/esm/address/Address.module.css.mjs +4 -0
  229. package/dist/esm/address/Address.module.css.mjs.map +1 -0
  230. package/dist/esm/address-button/AddressButton.mjs +45 -0
  231. package/dist/esm/address-button/AddressButton.mjs.map +1 -0
  232. package/dist/esm/address-button/AddressButton.module.css.mjs +4 -0
  233. package/dist/esm/address-button/AddressButton.module.css.mjs.map +1 -0
  234. package/dist/esm/badge/Badge.mjs +1 -0
  235. package/dist/esm/badge/Badge.mjs.map +1 -1
  236. package/dist/esm/banner/Banner.mjs +1 -0
  237. package/dist/esm/banner/Banner.mjs.map +1 -1
  238. package/dist/esm/breadcrumbs/Breadcrumbs.mjs +56 -27
  239. package/dist/esm/breadcrumbs/Breadcrumbs.mjs.map +1 -1
  240. package/dist/esm/breadcrumbs/Breadcrumbs.module.css.mjs +1 -1
  241. package/dist/esm/button/Button.mjs +16 -25
  242. package/dist/esm/button/Button.mjs.map +1 -1
  243. package/dist/esm/button/Button.module.css.mjs +1 -1
  244. package/dist/esm/button/ButtonContent.mjs +45 -0
  245. package/dist/esm/button/ButtonContent.mjs.map +1 -0
  246. package/dist/esm/button/LinkButton.mjs +42 -0
  247. package/dist/esm/button/LinkButton.mjs.map +1 -0
  248. package/dist/esm/card/Card.mjs +1 -0
  249. package/dist/esm/card/Card.mjs.map +1 -1
  250. package/dist/esm/checkbox/Checkbox.mjs +1 -0
  251. package/dist/esm/checkbox/Checkbox.mjs.map +1 -1
  252. package/dist/esm/copy/Copy.mjs +51 -0
  253. package/dist/esm/copy/Copy.mjs.map +1 -0
  254. package/dist/esm/copy/Copy.module.css.mjs +4 -0
  255. package/dist/esm/copy/Copy.module.css.mjs.map +1 -0
  256. package/dist/esm/copy/useCopy.mjs +29 -0
  257. package/dist/esm/copy/useCopy.mjs.map +1 -0
  258. package/dist/esm/counter/Counter.mjs +6 -2
  259. package/dist/esm/counter/Counter.mjs.map +1 -1
  260. package/dist/esm/counter/CounterSlot.mjs +19 -3
  261. package/dist/esm/counter/CounterSlot.mjs.map +1 -1
  262. package/dist/esm/counter/CounterSlot.module.css.mjs +1 -1
  263. package/dist/esm/data-list/DataList.mjs +1 -0
  264. package/dist/esm/data-list/DataList.mjs.map +1 -1
  265. package/dist/esm/data-list/DataList.module.css.mjs +1 -1
  266. package/dist/esm/data-list/DataListRow.mjs +7 -12
  267. package/dist/esm/data-list/DataListRow.mjs.map +1 -1
  268. package/dist/esm/disclaimer/Disclaimer.mjs +10 -3
  269. package/dist/esm/disclaimer/Disclaimer.mjs.map +1 -1
  270. package/dist/esm/divider/Divider.mjs +5 -0
  271. package/dist/esm/divider/Divider.mjs.map +1 -1
  272. package/dist/esm/error-page/ErrorPage.mjs +14 -7
  273. package/dist/esm/error-page/ErrorPage.mjs.map +1 -1
  274. package/dist/esm/footer/Footer.mjs +10 -2
  275. package/dist/esm/footer/Footer.mjs.map +1 -1
  276. package/dist/esm/grid/Grid.mjs +8 -4
  277. package/dist/esm/grid/Grid.mjs.map +1 -1
  278. package/dist/esm/grid/Grid.module.css.mjs +1 -1
  279. package/dist/esm/grid/GridItem.mjs +2 -0
  280. package/dist/esm/grid/GridItem.mjs.map +1 -1
  281. package/dist/esm/header/Header.mjs +10 -2
  282. package/dist/esm/header/Header.mjs.map +1 -1
  283. package/dist/esm/header/HeaderNav.mjs +34 -22
  284. package/dist/esm/header/HeaderNav.mjs.map +1 -1
  285. package/dist/esm/header/HeaderNav.module.css.mjs +1 -1
  286. package/dist/esm/hex/Hex.mjs +37 -0
  287. package/dist/esm/hex/Hex.mjs.map +1 -0
  288. package/dist/esm/hex/Hex.module.css.mjs +4 -0
  289. package/dist/esm/hex/Hex.module.css.mjs.map +1 -0
  290. package/dist/esm/hex/trimHex.mjs +11 -0
  291. package/dist/esm/hex/trimHex.mjs.map +1 -0
  292. package/dist/esm/hidden/Hidden.mjs +10 -4
  293. package/dist/esm/hidden/Hidden.mjs.map +1 -1
  294. package/dist/esm/hooks/Portal.mjs +16 -13
  295. package/dist/esm/hooks/Portal.mjs.map +1 -1
  296. package/dist/esm/hooks/useBodyScrollLock.mjs +49 -13
  297. package/dist/esm/hooks/useBodyScrollLock.mjs.map +1 -1
  298. package/dist/esm/hooks/useEdgeFade.mjs +56 -0
  299. package/dist/esm/hooks/useEdgeFade.mjs.map +1 -0
  300. package/dist/esm/hooks/useEscape.mjs +8 -5
  301. package/dist/esm/hooks/useEscape.mjs.map +1 -1
  302. package/dist/esm/hooks/useFocusTrap.mjs +61 -24
  303. package/dist/esm/hooks/useFocusTrap.mjs.map +1 -1
  304. package/dist/esm/hooks/useHideOthers.mjs +47 -0
  305. package/dist/esm/hooks/useHideOthers.mjs.map +1 -0
  306. package/dist/esm/hooks/useOutsideClick.mjs +31 -4
  307. package/dist/esm/hooks/useOutsideClick.mjs.map +1 -1
  308. package/dist/esm/icon-button/CloseButton.mjs +23 -0
  309. package/dist/esm/icon-button/CloseButton.mjs.map +1 -0
  310. package/dist/esm/icon-button/IconButton.mjs +6 -1
  311. package/dist/esm/icon-button/IconButton.mjs.map +1 -1
  312. package/dist/esm/icon-button/IconButton.module.css.mjs +1 -1
  313. package/dist/esm/icons/TokenIcon.mjs +2 -0
  314. package/dist/esm/icons/TokenIcon.mjs.map +1 -1
  315. package/dist/esm/identicon/Identicon.mjs +2 -0
  316. package/dist/esm/identicon/Identicon.mjs.map +1 -1
  317. package/dist/esm/index.css +14 -4
  318. package/dist/esm/index.mjs +35 -1
  319. package/dist/esm/index.mjs.map +1 -1
  320. package/dist/esm/info-tooltip/InfoTooltip.mjs +30 -0
  321. package/dist/esm/info-tooltip/InfoTooltip.mjs.map +1 -0
  322. package/dist/esm/info-tooltip/InfoTooltip.module.css.mjs +4 -0
  323. package/dist/esm/info-tooltip/InfoTooltip.module.css.mjs.map +1 -0
  324. package/dist/esm/input/Input.mjs +4 -8
  325. package/dist/esm/input/Input.mjs.map +1 -1
  326. package/dist/esm/input/Input.module.css.mjs +1 -1
  327. package/dist/esm/link-provider/Anchor.mjs +23 -2
  328. package/dist/esm/link-provider/Anchor.mjs.map +1 -1
  329. package/dist/esm/link-provider/LinkProvider.mjs +1 -1
  330. package/dist/esm/link-provider/LinkProvider.mjs.map +1 -1
  331. package/dist/esm/logo/Logo.mjs +9 -1
  332. package/dist/esm/logo/Logo.mjs.map +1 -1
  333. package/dist/esm/message-box/MessageBox.mjs +1 -0
  334. package/dist/esm/message-box/MessageBox.mjs.map +1 -1
  335. package/dist/esm/modal/Modal.mjs +74 -17
  336. package/dist/esm/modal/Modal.mjs.map +1 -1
  337. package/dist/esm/nav-link/NavLink.mjs +6 -4
  338. package/dist/esm/nav-link/NavLink.mjs.map +1 -1
  339. package/dist/esm/notification/Notification.mjs +13 -7
  340. package/dist/esm/notification/Notification.mjs.map +1 -1
  341. package/dist/esm/page-layout/Layout.mjs +21 -0
  342. package/dist/esm/page-layout/Layout.mjs.map +1 -0
  343. package/dist/esm/page-layout/Layout.module.css.mjs +4 -0
  344. package/dist/esm/page-layout/Layout.module.css.mjs.map +1 -0
  345. package/dist/esm/page-layout/Main.mjs +24 -0
  346. package/dist/esm/page-layout/Main.mjs.map +1 -0
  347. package/dist/esm/page-layout/Main.module.css.mjs +4 -0
  348. package/dist/esm/page-layout/Main.module.css.mjs.map +1 -0
  349. package/dist/esm/page-layout/PageContent.mjs +18 -0
  350. package/dist/esm/page-layout/PageContent.mjs.map +1 -0
  351. package/dist/esm/page-layout/PageContent.module.css.mjs +4 -0
  352. package/dist/esm/page-layout/PageContent.module.css.mjs.map +1 -0
  353. package/dist/esm/pagination/Pagination.mjs +12 -7
  354. package/dist/esm/pagination/Pagination.mjs.map +1 -1
  355. package/dist/esm/popover/Popover.mjs +72 -16
  356. package/dist/esm/popover/Popover.mjs.map +1 -1
  357. package/dist/esm/radio-button/RadioButton.mjs +1 -0
  358. package/dist/esm/radio-button/RadioButton.mjs.map +1 -1
  359. package/dist/esm/rich-input/RichInput.mjs +23 -47
  360. package/dist/esm/rich-input/RichInput.mjs.map +1 -1
  361. package/dist/esm/rich-input/RichInput.module.css.mjs +1 -1
  362. package/dist/esm/section-title/SectionTitle.mjs +9 -10
  363. package/dist/esm/section-title/SectionTitle.mjs.map +1 -1
  364. package/dist/esm/section-title/SectionTitle.module.css.mjs +1 -1
  365. package/dist/esm/segmented-control/SegmentedControl.mjs +1 -0
  366. package/dist/esm/segmented-control/SegmentedControl.mjs.map +1 -1
  367. package/dist/esm/segmented-control/SegmentedControlCard.mjs +1 -0
  368. package/dist/esm/segmented-control/SegmentedControlCard.mjs.map +1 -1
  369. package/dist/esm/sidebar/Sidebar.mjs +136 -0
  370. package/dist/esm/sidebar/Sidebar.mjs.map +1 -0
  371. package/dist/esm/sidebar/Sidebar.module.css.mjs +4 -0
  372. package/dist/esm/sidebar/Sidebar.module.css.mjs.map +1 -0
  373. package/dist/esm/sidebar/SidebarContext.mjs +8 -0
  374. package/dist/esm/sidebar/SidebarContext.mjs.map +1 -0
  375. package/dist/esm/sidebar/SidebarGroup.mjs +33 -0
  376. package/dist/esm/sidebar/SidebarGroup.mjs.map +1 -0
  377. package/dist/esm/sidebar/SidebarGroup.module.css.mjs +4 -0
  378. package/dist/esm/sidebar/SidebarGroup.module.css.mjs.map +1 -0
  379. package/dist/esm/sidebar/SidebarInset.mjs +21 -0
  380. package/dist/esm/sidebar/SidebarInset.mjs.map +1 -0
  381. package/dist/esm/sidebar/SidebarInset.module.css.mjs +4 -0
  382. package/dist/esm/sidebar/SidebarInset.module.css.mjs.map +1 -0
  383. package/dist/esm/sidebar/SidebarItem.mjs +38 -0
  384. package/dist/esm/sidebar/SidebarItem.mjs.map +1 -0
  385. package/dist/esm/sidebar/SidebarItem.module.css.mjs +4 -0
  386. package/dist/esm/sidebar/SidebarItem.module.css.mjs.map +1 -0
  387. package/dist/esm/sidebar/SidebarLayout.mjs +37 -0
  388. package/dist/esm/sidebar/SidebarLayout.mjs.map +1 -0
  389. package/dist/esm/sidebar/SidebarLayout.module.css.mjs +4 -0
  390. package/dist/esm/sidebar/SidebarLayout.module.css.mjs.map +1 -0
  391. package/dist/esm/sidebar/SidebarToggle.mjs +40 -0
  392. package/dist/esm/sidebar/SidebarToggle.mjs.map +1 -0
  393. package/dist/esm/sidebar/SidebarToggle.module.css.mjs +4 -0
  394. package/dist/esm/sidebar/SidebarToggle.module.css.mjs.map +1 -0
  395. package/dist/esm/sidebar/useSidebarDrawer.mjs +43 -0
  396. package/dist/esm/sidebar/useSidebarDrawer.mjs.map +1 -0
  397. package/dist/esm/skeleton/Skeleton.mjs +18 -20
  398. package/dist/esm/skeleton/Skeleton.mjs.map +1 -1
  399. package/dist/esm/skip-link/SkipLink.mjs +48 -0
  400. package/dist/esm/skip-link/SkipLink.mjs.map +1 -0
  401. package/dist/esm/skip-link/SkipLink.module.css.mjs +4 -0
  402. package/dist/esm/skip-link/SkipLink.module.css.mjs.map +1 -0
  403. package/dist/esm/slider/Slider.mjs +1 -0
  404. package/dist/esm/slider/Slider.mjs.map +1 -1
  405. package/dist/esm/small-card/SmallCard.mjs +6 -2
  406. package/dist/esm/small-card/SmallCard.mjs.map +1 -1
  407. package/dist/esm/stack/Stack.mjs +28 -9
  408. package/dist/esm/stack/Stack.mjs.map +1 -1
  409. package/dist/esm/stack/Stack.module.css.mjs +1 -1
  410. package/dist/esm/stat-item/StatItem.mjs +4 -8
  411. package/dist/esm/stat-item/StatItem.mjs.map +1 -1
  412. package/dist/esm/stat-item/StatItem.module.css.mjs +1 -1
  413. package/dist/esm/switch/Switch.mjs +1 -0
  414. package/dist/esm/switch/Switch.mjs.map +1 -1
  415. package/dist/esm/tabs/Tabs.mjs +1 -0
  416. package/dist/esm/tabs/Tabs.mjs.map +1 -1
  417. package/dist/esm/tag/Tag.mjs +74 -9
  418. package/dist/esm/tag/Tag.mjs.map +1 -1
  419. package/dist/esm/tag/Tag.module.css.mjs +1 -1
  420. package/dist/esm/text-link/TextLink.mjs +10 -13
  421. package/dist/esm/text-link/TextLink.mjs.map +1 -1
  422. package/dist/esm/text-link/TextLink.module.css.mjs +1 -1
  423. package/dist/esm/theme-switcher/ThemeSwitcher.mjs +14 -6
  424. package/dist/esm/theme-switcher/ThemeSwitcher.mjs.map +1 -1
  425. package/dist/esm/theme-switcher/ThemeSwitcher.module.css.mjs +4 -0
  426. package/dist/esm/theme-switcher/ThemeSwitcher.module.css.mjs.map +1 -0
  427. package/dist/esm/token-amount/TokenAmount.mjs +1 -0
  428. package/dist/esm/token-amount/TokenAmount.mjs.map +1 -1
  429. package/dist/esm/token-selector/TokenSelector.mjs +58 -66
  430. package/dist/esm/token-selector/TokenSelector.mjs.map +1 -1
  431. package/dist/esm/tooltip/Tooltip.mjs +42 -27
  432. package/dist/esm/tooltip/Tooltip.mjs.map +1 -1
  433. package/dist/esm/tx-status/TxStatus.mjs +2 -0
  434. package/dist/esm/tx-status/TxStatus.mjs.map +1 -1
  435. package/dist/esm/typography/Typography.mjs +2 -0
  436. package/dist/esm/typography/Typography.mjs.map +1 -1
  437. package/dist/esm/utils/ActionElement.mjs +2 -13
  438. package/dist/esm/utils/ActionElement.mjs.map +1 -1
  439. package/dist/esm/utils/breakpoints.mjs +19 -0
  440. package/dist/esm/utils/breakpoints.mjs.map +1 -0
  441. package/dist/esm/utils/responsive.mjs +17 -27
  442. package/dist/esm/utils/responsive.mjs.map +1 -1
  443. package/dist/esm/utils/surface.module.css.mjs +4 -0
  444. package/dist/esm/utils/surface.module.css.mjs.map +1 -0
  445. package/dist/index.css +14 -4
  446. package/dist/styles/breakpoints.css +16 -12
  447. package/dist/styles/typography-mixins.css +8 -0
  448. package/dist/types/accordion/Accordion.d.ts +3 -0
  449. package/dist/types/accordion/Accordion.d.ts.map +1 -1
  450. package/dist/types/address/Address.d.ts +16 -0
  451. package/dist/types/address/Address.d.ts.map +1 -0
  452. package/dist/types/address/index.d.ts +3 -0
  453. package/dist/types/address/index.d.ts.map +1 -0
  454. package/dist/types/address-button/AddressButton.d.ts +13 -0
  455. package/dist/types/address-button/AddressButton.d.ts.map +1 -0
  456. package/dist/types/address-button/index.d.ts +3 -0
  457. package/dist/types/address-button/index.d.ts.map +1 -0
  458. package/dist/types/badge/Badge.d.ts +1 -0
  459. package/dist/types/badge/Badge.d.ts.map +1 -1
  460. package/dist/types/banner/Banner.d.ts +1 -0
  461. package/dist/types/banner/Banner.d.ts.map +1 -1
  462. package/dist/types/breadcrumbs/Breadcrumbs.d.ts +17 -1
  463. package/dist/types/breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  464. package/dist/types/breadcrumbs/index.d.ts +1 -1
  465. package/dist/types/breadcrumbs/index.d.ts.map +1 -1
  466. package/dist/types/button/Button.d.ts +6 -26
  467. package/dist/types/button/Button.d.ts.map +1 -1
  468. package/dist/types/button/ButtonContent.d.ts +10 -0
  469. package/dist/types/button/ButtonContent.d.ts.map +1 -0
  470. package/dist/types/button/LinkButton.d.ts +10 -0
  471. package/dist/types/button/LinkButton.d.ts.map +1 -0
  472. package/dist/types/button/index.d.ts +2 -0
  473. package/dist/types/button/index.d.ts.map +1 -1
  474. package/dist/types/button/types.d.ts +26 -0
  475. package/dist/types/button/types.d.ts.map +1 -0
  476. package/dist/types/card/Card.d.ts +1 -0
  477. package/dist/types/card/Card.d.ts.map +1 -1
  478. package/dist/types/checkbox/Checkbox.d.ts +3 -0
  479. package/dist/types/checkbox/Checkbox.d.ts.map +1 -1
  480. package/dist/types/colors/colorTokens.d.ts.map +1 -1
  481. package/dist/types/copy/Copy.d.ts +10 -0
  482. package/dist/types/copy/Copy.d.ts.map +1 -0
  483. package/dist/types/copy/index.d.ts +5 -0
  484. package/dist/types/copy/index.d.ts.map +1 -0
  485. package/dist/types/copy/useCopy.d.ts +9 -0
  486. package/dist/types/copy/useCopy.d.ts.map +1 -0
  487. package/dist/types/counter/Counter.d.ts +6 -2
  488. package/dist/types/counter/Counter.d.ts.map +1 -1
  489. package/dist/types/counter/CounterSlot.d.ts +3 -0
  490. package/dist/types/counter/CounterSlot.d.ts.map +1 -1
  491. package/dist/types/data-list/DataList.d.ts +1 -0
  492. package/dist/types/data-list/DataList.d.ts.map +1 -1
  493. package/dist/types/data-list/DataListRow.d.ts +1 -0
  494. package/dist/types/data-list/DataListRow.d.ts.map +1 -1
  495. package/dist/types/disclaimer/Disclaimer.d.ts +9 -2
  496. package/dist/types/disclaimer/Disclaimer.d.ts.map +1 -1
  497. package/dist/types/divider/Divider.d.ts +5 -0
  498. package/dist/types/divider/Divider.d.ts.map +1 -1
  499. package/dist/types/divider/index.d.ts +1 -1
  500. package/dist/types/divider/index.d.ts.map +1 -1
  501. package/dist/types/error-page/ErrorPage.d.ts +17 -4
  502. package/dist/types/error-page/ErrorPage.d.ts.map +1 -1
  503. package/dist/types/footer/Footer.d.ts +17 -2
  504. package/dist/types/footer/Footer.d.ts.map +1 -1
  505. package/dist/types/footer/index.d.ts +1 -1
  506. package/dist/types/footer/index.d.ts.map +1 -1
  507. package/dist/types/grid/Grid.d.ts +21 -22
  508. package/dist/types/grid/Grid.d.ts.map +1 -1
  509. package/dist/types/grid/GridItem.d.ts +14 -10
  510. package/dist/types/grid/GridItem.d.ts.map +1 -1
  511. package/dist/types/grid/index.d.ts +2 -2
  512. package/dist/types/grid/index.d.ts.map +1 -1
  513. package/dist/types/header/Header.d.ts +15 -2
  514. package/dist/types/header/Header.d.ts.map +1 -1
  515. package/dist/types/header/HeaderNav.d.ts +10 -2
  516. package/dist/types/header/HeaderNav.d.ts.map +1 -1
  517. package/dist/types/header/index.d.ts +2 -2
  518. package/dist/types/header/index.d.ts.map +1 -1
  519. package/dist/types/hex/Hex.d.ts +10 -0
  520. package/dist/types/hex/Hex.d.ts.map +1 -0
  521. package/dist/types/hex/index.d.ts +4 -0
  522. package/dist/types/hex/index.d.ts.map +1 -0
  523. package/dist/types/hex/trimHex.d.ts +2 -0
  524. package/dist/types/hex/trimHex.d.ts.map +1 -0
  525. package/dist/types/hidden/Hidden.d.ts +20 -6
  526. package/dist/types/hidden/Hidden.d.ts.map +1 -1
  527. package/dist/types/hidden/index.d.ts +1 -1
  528. package/dist/types/hidden/index.d.ts.map +1 -1
  529. package/dist/types/hooks/Portal.d.ts +2 -5
  530. package/dist/types/hooks/Portal.d.ts.map +1 -1
  531. package/dist/types/hooks/index.d.ts +2 -0
  532. package/dist/types/hooks/index.d.ts.map +1 -1
  533. package/dist/types/hooks/useBodyScrollLock.d.ts +4 -2
  534. package/dist/types/hooks/useBodyScrollLock.d.ts.map +1 -1
  535. package/dist/types/hooks/useEdgeFade.d.ts +7 -0
  536. package/dist/types/hooks/useEdgeFade.d.ts.map +1 -0
  537. package/dist/types/hooks/useEscape.d.ts +4 -2
  538. package/dist/types/hooks/useEscape.d.ts.map +1 -1
  539. package/dist/types/hooks/useFocusTrap.d.ts +7 -3
  540. package/dist/types/hooks/useFocusTrap.d.ts.map +1 -1
  541. package/dist/types/hooks/useHideOthers.d.ts +3 -0
  542. package/dist/types/hooks/useHideOthers.d.ts.map +1 -0
  543. package/dist/types/hooks/useIsomorphicLayoutEffect.d.ts +2 -2
  544. package/dist/types/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -1
  545. package/dist/types/hooks/useOutsideClick.d.ts +4 -2
  546. package/dist/types/hooks/useOutsideClick.d.ts.map +1 -1
  547. package/dist/types/icon-button/CloseButton.d.ts +9 -0
  548. package/dist/types/icon-button/CloseButton.d.ts.map +1 -0
  549. package/dist/types/icon-button/IconButton.d.ts +15 -2
  550. package/dist/types/icon-button/IconButton.d.ts.map +1 -1
  551. package/dist/types/icon-button/index.d.ts +2 -0
  552. package/dist/types/icon-button/index.d.ts.map +1 -1
  553. package/dist/types/icons/TokenIcon.d.ts +1 -0
  554. package/dist/types/icons/TokenIcon.d.ts.map +1 -1
  555. package/dist/types/identicon/Identicon.d.ts +5 -0
  556. package/dist/types/identicon/Identicon.d.ts.map +1 -1
  557. package/dist/types/index.d.ts +13 -0
  558. package/dist/types/index.d.ts.map +1 -1
  559. package/dist/types/info-tooltip/InfoTooltip.d.ts +12 -0
  560. package/dist/types/info-tooltip/InfoTooltip.d.ts.map +1 -0
  561. package/dist/types/info-tooltip/index.d.ts +3 -0
  562. package/dist/types/info-tooltip/index.d.ts.map +1 -0
  563. package/dist/types/input/Input.d.ts +1 -0
  564. package/dist/types/input/Input.d.ts.map +1 -1
  565. package/dist/types/link-provider/Anchor.d.ts +17 -1
  566. package/dist/types/link-provider/Anchor.d.ts.map +1 -1
  567. package/dist/types/link-provider/LinkProvider.d.ts +8 -2
  568. package/dist/types/link-provider/LinkProvider.d.ts.map +1 -1
  569. package/dist/types/link-provider/index.d.ts +1 -1
  570. package/dist/types/link-provider/index.d.ts.map +1 -1
  571. package/dist/types/logo/Logo.d.ts +20 -3
  572. package/dist/types/logo/Logo.d.ts.map +1 -1
  573. package/dist/types/logo/index.d.ts +1 -1
  574. package/dist/types/logo/index.d.ts.map +1 -1
  575. package/dist/types/message-box/MessageBox.d.ts +3 -0
  576. package/dist/types/message-box/MessageBox.d.ts.map +1 -1
  577. package/dist/types/modal/Modal.d.ts +21 -3
  578. package/dist/types/modal/Modal.d.ts.map +1 -1
  579. package/dist/types/modal/index.d.ts +2 -2
  580. package/dist/types/modal/index.d.ts.map +1 -1
  581. package/dist/types/nav-link/NavLink.d.ts +17 -0
  582. package/dist/types/nav-link/NavLink.d.ts.map +1 -1
  583. package/dist/types/nav-link/index.d.ts +1 -1
  584. package/dist/types/nav-link/index.d.ts.map +1 -1
  585. package/dist/types/notification/Notification.d.ts +7 -2
  586. package/dist/types/notification/Notification.d.ts.map +1 -1
  587. package/dist/types/page-layout/Layout.d.ts +5 -0
  588. package/dist/types/page-layout/Layout.d.ts.map +1 -0
  589. package/dist/types/page-layout/Main.d.ts +6 -0
  590. package/dist/types/page-layout/Main.d.ts.map +1 -0
  591. package/dist/types/page-layout/PageContent.d.ts +7 -0
  592. package/dist/types/page-layout/PageContent.d.ts.map +1 -0
  593. package/dist/types/page-layout/index.d.ts +7 -0
  594. package/dist/types/page-layout/index.d.ts.map +1 -0
  595. package/dist/types/pagination/Pagination.d.ts +3 -0
  596. package/dist/types/pagination/Pagination.d.ts.map +1 -1
  597. package/dist/types/popover/Popover.d.ts +32 -4
  598. package/dist/types/popover/Popover.d.ts.map +1 -1
  599. package/dist/types/popover/index.d.ts +1 -1
  600. package/dist/types/popover/index.d.ts.map +1 -1
  601. package/dist/types/radio-button/RadioButton.d.ts +3 -0
  602. package/dist/types/radio-button/RadioButton.d.ts.map +1 -1
  603. package/dist/types/rich-input/RichInput.d.ts +8 -1
  604. package/dist/types/rich-input/RichInput.d.ts.map +1 -1
  605. package/dist/types/section-title/SectionTitle.d.ts +8 -2
  606. package/dist/types/section-title/SectionTitle.d.ts.map +1 -1
  607. package/dist/types/section-title/index.d.ts +1 -1
  608. package/dist/types/section-title/index.d.ts.map +1 -1
  609. package/dist/types/segmented-control/SegmentedControl.d.ts +1 -0
  610. package/dist/types/segmented-control/SegmentedControl.d.ts.map +1 -1
  611. package/dist/types/segmented-control/SegmentedControlCard.d.ts +1 -0
  612. package/dist/types/segmented-control/SegmentedControlCard.d.ts.map +1 -1
  613. package/dist/types/sidebar/Sidebar.d.ts +15 -0
  614. package/dist/types/sidebar/Sidebar.d.ts.map +1 -0
  615. package/dist/types/sidebar/SidebarContext.d.ts +6 -0
  616. package/dist/types/sidebar/SidebarContext.d.ts.map +1 -0
  617. package/dist/types/sidebar/SidebarGroup.d.ts +7 -0
  618. package/dist/types/sidebar/SidebarGroup.d.ts.map +1 -0
  619. package/dist/types/sidebar/SidebarInset.d.ts +5 -0
  620. package/dist/types/sidebar/SidebarInset.d.ts.map +1 -0
  621. package/dist/types/sidebar/SidebarItem.d.ts +10 -0
  622. package/dist/types/sidebar/SidebarItem.d.ts.map +1 -0
  623. package/dist/types/sidebar/SidebarLayout.d.ts +18 -0
  624. package/dist/types/sidebar/SidebarLayout.d.ts.map +1 -0
  625. package/dist/types/sidebar/SidebarToggle.d.ts +13 -0
  626. package/dist/types/sidebar/SidebarToggle.d.ts.map +1 -0
  627. package/dist/types/sidebar/index.d.ts +17 -0
  628. package/dist/types/sidebar/index.d.ts.map +1 -0
  629. package/dist/types/sidebar/useSidebarDrawer.d.ts +23 -0
  630. package/dist/types/sidebar/useSidebarDrawer.d.ts.map +1 -0
  631. package/dist/types/skeleton/Skeleton.d.ts +17 -3
  632. package/dist/types/skeleton/Skeleton.d.ts.map +1 -1
  633. package/dist/types/skip-link/SkipLink.d.ts +11 -0
  634. package/dist/types/skip-link/SkipLink.d.ts.map +1 -0
  635. package/dist/types/skip-link/index.d.ts +3 -0
  636. package/dist/types/skip-link/index.d.ts.map +1 -0
  637. package/dist/types/slider/Slider.d.ts +1 -0
  638. package/dist/types/slider/Slider.d.ts.map +1 -1
  639. package/dist/types/small-card/SmallCard.d.ts +21 -2
  640. package/dist/types/small-card/SmallCard.d.ts.map +1 -1
  641. package/dist/types/stack/Stack.d.ts +24 -15
  642. package/dist/types/stack/Stack.d.ts.map +1 -1
  643. package/dist/types/stack/index.d.ts +1 -1
  644. package/dist/types/stack/index.d.ts.map +1 -1
  645. package/dist/types/stat-item/StatItem.d.ts +6 -0
  646. package/dist/types/stat-item/StatItem.d.ts.map +1 -1
  647. package/dist/types/switch/Switch.d.ts +3 -0
  648. package/dist/types/switch/Switch.d.ts.map +1 -1
  649. package/dist/types/tabs/Tabs.d.ts +1 -0
  650. package/dist/types/tabs/Tabs.d.ts.map +1 -1
  651. package/dist/types/tag/Tag.d.ts +31 -3
  652. package/dist/types/tag/Tag.d.ts.map +1 -1
  653. package/dist/types/text-link/TextLink.d.ts +25 -2
  654. package/dist/types/text-link/TextLink.d.ts.map +1 -1
  655. package/dist/types/text-link/index.d.ts +1 -1
  656. package/dist/types/text-link/index.d.ts.map +1 -1
  657. package/dist/types/theme-switcher/ThemeSwitcher.d.ts +9 -3
  658. package/dist/types/theme-switcher/ThemeSwitcher.d.ts.map +1 -1
  659. package/dist/types/token-amount/TokenAmount.d.ts +1 -0
  660. package/dist/types/token-amount/TokenAmount.d.ts.map +1 -1
  661. package/dist/types/token-selector/TokenSelector.d.ts +5 -1
  662. package/dist/types/token-selector/TokenSelector.d.ts.map +1 -1
  663. package/dist/types/tooltip/Tooltip.d.ts +2 -0
  664. package/dist/types/tooltip/Tooltip.d.ts.map +1 -1
  665. package/dist/types/tx-status/TxStatus.d.ts +3 -0
  666. package/dist/types/tx-status/TxStatus.d.ts.map +1 -1
  667. package/dist/types/typography/Typography.d.ts +4 -0
  668. package/dist/types/typography/Typography.d.ts.map +1 -1
  669. package/dist/types/utils/ActionElement.d.ts +4 -4
  670. package/dist/types/utils/ActionElement.d.ts.map +1 -1
  671. package/dist/types/utils/breakpoints.d.ts +16 -0
  672. package/dist/types/utils/breakpoints.d.ts.map +1 -0
  673. package/dist/types/utils/index.d.ts +5 -2
  674. package/dist/types/utils/index.d.ts.map +1 -1
  675. package/dist/types/utils/polymorphic.d.ts +15 -0
  676. package/dist/types/utils/polymorphic.d.ts.map +1 -0
  677. package/dist/types/utils/responsive.d.ts +29 -14
  678. package/dist/types/utils/responsive.d.ts.map +1 -1
  679. package/package.json +7 -3
@@ -1 +1 @@
1
- {"version":3,"file":"Counter.cjs","sources":["../../../src/counter/Counter.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Counter.module.css'\n\nexport type CounterVariant =\n | 'default'\n | 'neutral'\n | 'error'\n | 'warning'\n | 'action'\n | 'active'\n\nexport type CounterDataTestId = {\n root?: string\n}\n\nexport type CounterProps = HTMLAttributes<HTMLSpanElement> & {\n variant?: CounterVariant\n dataTestId?: CounterDataTestId\n}\n\nexport const Counter = ({\n variant = 'default',\n className,\n children,\n dataTestId,\n ...rest\n}: CounterProps) => (\n <span\n className={cn(styles.counter, styles[variant], className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {children}\n </span>\n)\n"],"names":["Counter","_ref","variant","className","children","dataTestId","rest","_jsx","cn","styles","counter","root"],"mappings":";;;;;;;;AAuBO,MAAMA,OAAO,GAAGC,IAAA,IAAA;EAAA,IAAC;AACtBC,IAAAA,OAAO,GAAG,SAAS;IACnBC,SAAS;IACTC,QAAQ;IACRC,UAAU;IACV,GAAGC,IAAAA;AACS,GAAC,GAAAL,IAAA,CAAA;AAAA,EAAA,oBACbM,cAAA,CAAA,MAAA,EAAA;AACEJ,IAAAA,SAAS,EAAEK,EAAE,CAACC,cAAM,CAACC,OAAO,EAAED,cAAM,CAACP,OAAO,CAAC,EAAEC,SAAS,CAAE;IAC1D,aAAaE,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAF,IAAAA,QAAA,EAEPA,QAAAA;AAAQ,GACL,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"Counter.cjs","sources":["../../../src/counter/Counter.tsx"],"sourcesContent":["import { forwardRef, type HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Counter.module.css'\n\nexport type CounterVariant =\n | 'default'\n | 'neutral'\n | 'error'\n | 'warning'\n | 'action'\n | 'active'\n\nexport type CounterDataTestId = {\n root?: string\n}\n\nexport type CounterProps = HTMLAttributes<HTMLSpanElement> & {\n variant?: CounterVariant\n dataTestId?: CounterDataTestId\n}\n\n/** 20px pill for notification/unread counts; grows horizontally for multi-digit values. */\nexport const Counter = forwardRef<HTMLSpanElement, CounterProps>(\n ({ variant = 'default', className, children, dataTestId, ...rest }, ref) => (\n <span\n ref={ref}\n className={cn(styles.counter, styles[variant], className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {children}\n </span>\n ),\n)\n\nCounter.displayName = 'Counter'\n"],"names":["Counter","forwardRef","_ref","ref","variant","className","children","dataTestId","rest","_jsx","cn","styles","counter","root","displayName"],"mappings":";;;;;;;;;AAuBA;AACO,MAAMA,OAAO,gBAAGC,gBAAU,CAC/B,CAAAC,IAAA,EAAoEC,GAAG,KAAA;EAAA,IAAtE;AAAEC,IAAAA,OAAO,GAAG,SAAS;IAAEC,SAAS;IAAEC,QAAQ;IAAEC,UAAU;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAN,IAAA,CAAA;AAAA,EAAA,oBAChEO,cAAA,CAAA,MAAA,EAAA;AACEN,IAAAA,GAAG,EAAEA,GAAI;AACTE,IAAAA,SAAS,EAAEK,EAAE,CAACC,cAAM,CAACC,OAAO,EAAED,cAAM,CAACP,OAAO,CAAC,EAAEC,SAAS,CAAE;IAC1D,aAAaE,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAF,IAAAA,QAAA,EAEPA,QAAAA;AAAQ,GACL,CAAC,CAAA;AAAA,CAEX,EAAC;AAEDN,OAAO,CAACc,WAAW,GAAG,SAAS;;;;"}
@@ -2,6 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
+ const Counter = require('./Counter.cjs');
5
6
  const CounterSlot_module = require('./CounterSlot.module.css.cjs');
6
7
  const jsxRuntime = require('react/jsx-runtime');
7
8
 
@@ -10,13 +11,29 @@ const CounterSlot = _ref => {
10
11
  children,
11
12
  dataTestId
12
13
  } = _ref;
13
- return children == null || children === false ? null : /*#__PURE__*/jsxRuntime.jsx("span", {
14
+ if (children == null || typeof children === 'boolean' || children === '') {
15
+ return null;
16
+ }
17
+ const content = typeof children === 'number' || typeof children === 'string' ? /*#__PURE__*/jsxRuntime.jsx(Counter.Counter, {
18
+ children: children
19
+ }) : children;
20
+ return /*#__PURE__*/jsxRuntime.jsx("span", {
14
21
  className: CounterSlot_module.slot,
15
22
  "aria-hidden": "true",
16
23
  "data-testid": dataTestId,
17
- children: children
24
+ children: content
18
25
  });
19
26
  };
27
+ const CounterLabel = _ref2 => {
28
+ let {
29
+ children
30
+ } = _ref2;
31
+ return children ? /*#__PURE__*/jsxRuntime.jsx("span", {
32
+ className: CounterSlot_module.visuallyHidden,
33
+ children: children
34
+ }) : null;
35
+ };
20
36
 
37
+ exports.CounterLabel = CounterLabel;
21
38
  exports.CounterSlot = CounterSlot;
22
39
  //# sourceMappingURL=CounterSlot.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CounterSlot.cjs","sources":["../../../src/counter/CounterSlot.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\n\nimport styles from './CounterSlot.module.css'\n\ntype CounterSlotProps = {\n children?: ReactNode\n dataTestId?: string\n}\n\nexport const CounterSlot = ({ children, dataTestId }: CounterSlotProps) =>\n children == null || children === false ? null : (\n <span className={styles.slot} aria-hidden='true' data-testid={dataTestId}>\n {children}\n </span>\n )\n"],"names":["CounterSlot","_ref","children","dataTestId","_jsx","className","styles","slot"],"mappings":";;;;;;;AASO,MAAMA,WAAW,GAAGC,IAAA,IAAA;EAAA,IAAC;IAAEC,QAAQ;AAAEC,IAAAA,UAAAA;AAA6B,GAAC,GAAAF,IAAA,CAAA;EAAA,OACpEC,QAAQ,IAAI,IAAI,IAAIA,QAAQ,KAAK,KAAK,GAAG,IAAI,gBAC3CE,cAAA,CAAA,MAAA,EAAA;IAAMC,SAAS,EAAEC,kBAAM,CAACC,IAAK;AAAC,IAAA,aAAA,EAAY,MAAM;AAAC,IAAA,aAAA,EAAaJ,UAAW;AAAAD,IAAAA,QAAA,EACtEA,QAAAA;AAAQ,GACL,CACP,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"CounterSlot.cjs","sources":["../../../src/counter/CounterSlot.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\n\nimport { Counter } from './Counter'\nimport styles from './CounterSlot.module.css'\n\ntype CounterSlotProps = {\n children?: ReactNode\n dataTestId?: string\n}\n\nexport const CounterSlot = ({ children, dataTestId }: CounterSlotProps) => {\n if (children == null || typeof children === 'boolean' || children === '') {\n return null\n }\n\n const content =\n typeof children === 'number' || typeof children === 'string' ? (\n <Counter>{children}</Counter>\n ) : (\n children\n )\n\n return (\n <span className={styles.slot} aria-hidden='true' data-testid={dataTestId}>\n {content}\n </span>\n )\n}\n\nexport const CounterLabel = ({ children }: { children?: string }) =>\n children ? <span className={styles.visuallyHidden}>{children}</span> : null\n"],"names":["CounterSlot","_ref","children","dataTestId","content","_jsx","Counter","className","styles","slot","CounterLabel","_ref2","visuallyHidden"],"mappings":";;;;;;;;AAUaA,MAAAA,WAAW,GAAGC,IAAA,IAAgD;EAAA,IAA/C;IAAEC,QAAQ;AAAEC,IAAAA,UAAAA;AAA6B,GAAC,GAAAF,IAAA,CAAA;AACpE,EAAA,IAAIC,QAAQ,IAAI,IAAI,IAAI,OAAOA,QAAQ,KAAK,SAAS,IAAIA,QAAQ,KAAK,EAAE,EAAE;AACxE,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;AAEA,EAAA,MAAME,OAAO,GACX,OAAOF,QAAQ,KAAK,QAAQ,IAAI,OAAOA,QAAQ,KAAK,QAAQ,gBAC1DG,cAAA,CAACC,eAAO,EAAA;AAAAJ,IAAAA,QAAA,EAAEA,QAAAA;GAAkB,CAAC,GAE7BA,QACD,CAAA;AAEH,EAAA,oBACEG,cAAA,CAAA,MAAA,EAAA;IAAME,SAAS,EAAEC,kBAAM,CAACC,IAAK;AAAC,IAAA,aAAA,EAAY,MAAM;AAAC,IAAA,aAAA,EAAaN,UAAW;AAAAD,IAAAA,QAAA,EACtEE,OAAAA;AAAO,GACJ,CAAC,CAAA;AAEX,EAAC;AAEM,MAAMM,YAAY,GAAGC,KAAA,IAAA;EAAA,IAAC;AAAET,IAAAA,QAAAA;AAAgC,GAAC,GAAAS,KAAA,CAAA;EAAA,OAC9DT,QAAQ,gBAAGG,cAAA,CAAA,MAAA,EAAA;IAAME,SAAS,EAAEC,kBAAM,CAACI,cAAe;AAAAV,IAAAA,QAAA,EAAEA,QAAAA;GAAe,CAAC,GAAG,IAAI,CAAA;AAAA;;;;;"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const styles = {"slot":"CounterSlot-module_slot__EhyeG"};
3
+ const styles = {"slot":"CounterSlot-module_slot__EhyeG","visuallyHidden":"CounterSlot-module_visuallyHidden__mbzc0"};
4
4
 
5
5
  module.exports = styles;
6
6
  //# sourceMappingURL=CounterSlot.module.css.cjs.map
@@ -6,6 +6,7 @@ const cn = require('classnames');
6
6
  const DataList_module = require('./DataList.module.css.cjs');
7
7
  const jsxRuntime = require('react/jsx-runtime');
8
8
 
9
+ /** Spacing wrapper for label-left, value-right transaction details; put `DataListRow`s inside. */
9
10
  const DataList = _ref => {
10
11
  let {
11
12
  children,
@@ -1 +1 @@
1
- {"version":3,"file":"DataList.cjs","sources":["../../../src/data-list/DataList.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './DataList.module.css'\n\nexport type DataListDataTestId = {\n root?: string\n}\n\nexport type DataListProps = Omit<\n ComponentPropsWithoutRef<'div'>,\n 'children'\n> & {\n children: ReactNode\n divided?: boolean\n dataTestId?: DataListDataTestId\n}\n\nexport const DataList = ({\n children,\n className,\n divided = false,\n dataTestId,\n ...rest\n}: DataListProps) => (\n <div\n className={cn(styles.card, divided && styles.divided, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {children}\n </div>\n)\n"],"names":["DataList","_ref","children","className","divided","dataTestId","rest","_jsx","cn","styles","card","root"],"mappings":";;;;;;;;AAmBO,MAAMA,QAAQ,GAAGC,IAAA,IAAA;EAAA,IAAC;IACvBC,QAAQ;IACRC,SAAS;AACTC,IAAAA,OAAO,GAAG,KAAK;IACfC,UAAU;IACV,GAAGC,IAAAA;AACU,GAAC,GAAAL,IAAA,CAAA;AAAA,EAAA,oBACdM,cAAA,CAAA,KAAA,EAAA;AACEJ,IAAAA,SAAS,EAAEK,EAAE,CAACC,eAAM,CAACC,IAAI,EAAEN,OAAO,IAAIK,eAAM,CAACL,OAAO,EAAED,SAAS,CAAE;IACjE,aAAaE,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAJ,IAAAA,QAAA,EAEPA,QAAAA;AAAQ,GACN,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"DataList.cjs","sources":["../../../src/data-list/DataList.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './DataList.module.css'\n\nexport type DataListDataTestId = {\n root?: string\n}\n\nexport type DataListProps = Omit<\n ComponentPropsWithoutRef<'div'>,\n 'children'\n> & {\n children: ReactNode\n divided?: boolean\n dataTestId?: DataListDataTestId\n}\n\n/** Spacing wrapper for label-left, value-right transaction details; put `DataListRow`s inside. */\nexport const DataList = ({\n children,\n className,\n divided = false,\n dataTestId,\n ...rest\n}: DataListProps) => (\n <div\n className={cn(styles.card, divided && styles.divided, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {children}\n </div>\n)\n"],"names":["DataList","_ref","children","className","divided","dataTestId","rest","_jsx","cn","styles","card","root"],"mappings":";;;;;;;;AAmBA;AACO,MAAMA,QAAQ,GAAGC,IAAA,IAAA;EAAA,IAAC;IACvBC,QAAQ;IACRC,SAAS;AACTC,IAAAA,OAAO,GAAG,KAAK;IACfC,UAAU;IACV,GAAGC,IAAAA;AACU,GAAC,GAAAL,IAAA,CAAA;AAAA,EAAA,oBACdM,cAAA,CAAA,KAAA,EAAA;AACEJ,IAAAA,SAAS,EAAEK,EAAE,CAACC,eAAM,CAACC,IAAI,EAAEN,OAAO,IAAIK,eAAM,CAACL,OAAO,EAAED,SAAS,CAAE;IACjE,aAAaE,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAJ,IAAAA,QAAA,EAEPA,QAAAA;AAAQ,GACN,CAAC,CAAA;AAAA;;;;"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const styles = {"card":"DataList-module_card__k21RE","divided":"DataList-module_divided__y48ZD","row":"DataList-module_row__d5UUl","mainRow":"DataList-module_mainRow__eAAA3","labelGroup":"DataList-module_labelGroup__-vCWZ","leadingIcon":"DataList-module_leadingIcon__6L9A9","label":"DataList-module_label__xl6By","info":"DataList-module_info__TF2HU","infoIcon":"DataList-module_infoIcon__czTXh","infoFaint":"DataList-module_infoFaint__lq3WZ","value":"DataList-module_value__oGp7D","valueOld":"DataList-module_valueOld__FuEV2","valueArrow":"DataList-module_valueArrow__7RRSA","descriptionRow":"DataList-module_descriptionRow__oZCWf","description":"DataList-module_description__biMHO","descriptionIcon":"DataList-module_descriptionIcon__pS1MU"};
3
+ const styles = {"card":"DataList-module_card__k21RE","divided":"DataList-module_divided__y48ZD","row":"DataList-module_row__d5UUl","mainRow":"DataList-module_mainRow__eAAA3","labelGroup":"DataList-module_labelGroup__-vCWZ","leadingIcon":"DataList-module_leadingIcon__6L9A9","label":"DataList-module_label__xl6By","infoFaint":"DataList-module_infoFaint__lq3WZ","value":"DataList-module_value__oGp7D","valueOld":"DataList-module_valueOld__FuEV2","valueArrow":"DataList-module_valueArrow__7RRSA","descriptionRow":"DataList-module_descriptionRow__oZCWf","description":"DataList-module_description__biMHO"};
4
4
 
5
5
  module.exports = styles;
6
6
  //# sourceMappingURL=DataList.module.css.cjs.map
@@ -5,10 +5,11 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const cn = require('classnames');
6
6
  const DataList_module = require('./DataList.module.css.cjs');
7
7
  const jsxRuntime = require('react/jsx-runtime');
8
- const Tooltip = require('../tooltip/Tooltip.cjs');
9
- const IconInfo = require('../icons/components/base/IconInfo.cjs');
8
+ const InfoTooltip = require('../info-tooltip/InfoTooltip.cjs');
10
9
 
11
10
  const isChangeValue = value => typeof value === 'object' && value !== null && 'from' in value && 'to' in value;
11
+
12
+ /** Label and value row with an optional info tooltip, leading icon and from → to change format. */
12
13
  const DataListRow = _ref => {
13
14
  let {
14
15
  label,
@@ -38,12 +39,9 @@ const DataListRow = _ref => {
38
39
  className: DataList_module.label,
39
40
  "data-testid": dataTestId?.label,
40
41
  children: label
41
- }), info ? /*#__PURE__*/jsxRuntime.jsx(Tooltip.Tooltip, {
42
+ }), info ? /*#__PURE__*/jsxRuntime.jsx(InfoTooltip.InfoTooltip, {
42
43
  content: info,
43
- className: cn(DataList_module.info, infoFaint && DataList_module.infoFaint),
44
- children: /*#__PURE__*/jsxRuntime.jsx(IconInfo.IconInfo, {
45
- className: DataList_module.infoIcon
46
- })
44
+ className: cn(infoFaint && DataList_module.infoFaint)
47
45
  }) : null]
48
46
  }), isChangeValue(value) ? /*#__PURE__*/jsxRuntime.jsxs("span", {
49
47
  className: DataList_module.value,
@@ -69,12 +67,9 @@ const DataListRow = _ref => {
69
67
  className: DataList_module.description,
70
68
  "data-testid": dataTestId?.description,
71
69
  children: description
72
- }), descriptionInfo ? /*#__PURE__*/jsxRuntime.jsx(Tooltip.Tooltip, {
70
+ }), descriptionInfo ? /*#__PURE__*/jsxRuntime.jsx(InfoTooltip.InfoTooltip, {
73
71
  content: descriptionInfo,
74
- className: DataList_module.info,
75
- children: /*#__PURE__*/jsxRuntime.jsx(IconInfo.IconInfo, {
76
- className: DataList_module.descriptionIcon
77
- })
72
+ tone: "tertiary"
78
73
  }) : null]
79
74
  }) : null]
80
75
  });
@@ -1 +1 @@
1
- {"version":3,"file":"DataListRow.cjs","sources":["../../../src/data-list/DataListRow.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport { IconInfo } from '../icons'\nimport cn from 'classnames'\nimport { Tooltip } from '../tooltip'\n\nimport styles from './DataList.module.css'\n\nexport type DetailRowValue = ReactNode | { from: ReactNode; to: ReactNode }\n\nexport type DataListRowDataTestId = {\n root?: string\n label?: string\n value?: string\n icon?: string\n description?: string\n}\n\nexport type DetailRowProps = ComponentPropsWithoutRef<'div'> & {\n label: ReactNode\n value: DetailRowValue\n icon?: ReactNode\n info?: ReactNode\n infoFaint?: boolean\n description?: ReactNode\n descriptionInfo?: ReactNode\n dataTestId?: DataListRowDataTestId\n}\n\nconst isChangeValue = (\n value: DetailRowValue,\n): value is { from: ReactNode; to: ReactNode } =>\n typeof value === 'object' &&\n value !== null &&\n 'from' in value &&\n 'to' in value\n\nexport const DataListRow = ({\n label,\n value,\n icon,\n info,\n infoFaint = false,\n description,\n descriptionInfo,\n className,\n dataTestId,\n ...rest\n}: DetailRowProps) => (\n <div\n className={cn(styles.row, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <span className={styles.mainRow}>\n <span className={styles.labelGroup}>\n {icon ? (\n <span className={styles.leadingIcon} data-testid={dataTestId?.icon}>\n {icon}\n </span>\n ) : null}\n <span className={styles.label} data-testid={dataTestId?.label}>\n {label}\n </span>\n {info ? (\n <Tooltip\n content={info}\n className={cn(styles.info, infoFaint && styles.infoFaint)}\n >\n <IconInfo className={styles.infoIcon} />\n </Tooltip>\n ) : null}\n </span>\n {isChangeValue(value) ? (\n <span className={styles.value} data-testid={dataTestId?.value}>\n <span className={styles.valueOld}>{value.from}</span>\n <span className={styles.valueArrow} aria-hidden='true'>\n →\n </span>\n <span>{value.to}</span>\n </span>\n ) : (\n <span className={styles.value} data-testid={dataTestId?.value}>\n {value}\n </span>\n )}\n </span>\n {description ? (\n <span className={styles.descriptionRow}>\n <span\n className={styles.description}\n data-testid={dataTestId?.description}\n >\n {description}\n </span>\n {descriptionInfo ? (\n <Tooltip content={descriptionInfo} className={styles.info}>\n <IconInfo className={styles.descriptionIcon} />\n </Tooltip>\n ) : null}\n </span>\n ) : null}\n </div>\n)\n"],"names":["isChangeValue","value","DataListRow","_ref","label","icon","info","infoFaint","description","descriptionInfo","className","dataTestId","rest","_jsxs","cn","styles","row","root","children","mainRow","labelGroup","_jsx","leadingIcon","Tooltip","content","IconInfo","infoIcon","valueOld","from","valueArrow","to","descriptionRow","descriptionIcon"],"mappings":"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"}
1
+ {"version":3,"file":"DataListRow.cjs","sources":["../../../src/data-list/DataListRow.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport cn from 'classnames'\nimport { InfoTooltip } from '../info-tooltip'\n\nimport styles from './DataList.module.css'\n\nexport type DetailRowValue = ReactNode | { from: ReactNode; to: ReactNode }\n\nexport type DataListRowDataTestId = {\n root?: string\n label?: string\n value?: string\n icon?: string\n description?: string\n}\n\nexport type DetailRowProps = ComponentPropsWithoutRef<'div'> & {\n label: ReactNode\n value: DetailRowValue\n icon?: ReactNode\n info?: ReactNode\n infoFaint?: boolean\n description?: ReactNode\n descriptionInfo?: ReactNode\n dataTestId?: DataListRowDataTestId\n}\n\nconst isChangeValue = (\n value: DetailRowValue,\n): value is { from: ReactNode; to: ReactNode } =>\n typeof value === 'object' &&\n value !== null &&\n 'from' in value &&\n 'to' in value\n\n/** Label and value row with an optional info tooltip, leading icon and from → to change format. */\nexport const DataListRow = ({\n label,\n value,\n icon,\n info,\n infoFaint = false,\n description,\n descriptionInfo,\n className,\n dataTestId,\n ...rest\n}: DetailRowProps) => (\n <div\n className={cn(styles.row, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <span className={styles.mainRow}>\n <span className={styles.labelGroup}>\n {icon ? (\n <span className={styles.leadingIcon} data-testid={dataTestId?.icon}>\n {icon}\n </span>\n ) : null}\n <span className={styles.label} data-testid={dataTestId?.label}>\n {label}\n </span>\n {info ? (\n <InfoTooltip\n content={info}\n className={cn(infoFaint && styles.infoFaint)}\n />\n ) : null}\n </span>\n {isChangeValue(value) ? (\n <span className={styles.value} data-testid={dataTestId?.value}>\n <span className={styles.valueOld}>{value.from}</span>\n <span className={styles.valueArrow} aria-hidden='true'>\n →\n </span>\n <span>{value.to}</span>\n </span>\n ) : (\n <span className={styles.value} data-testid={dataTestId?.value}>\n {value}\n </span>\n )}\n </span>\n {description ? (\n <span className={styles.descriptionRow}>\n <span\n className={styles.description}\n data-testid={dataTestId?.description}\n >\n {description}\n </span>\n {descriptionInfo ? (\n <InfoTooltip content={descriptionInfo} tone='tertiary' />\n ) : null}\n </span>\n ) : null}\n </div>\n)\n"],"names":["isChangeValue","value","DataListRow","_ref","label","icon","info","infoFaint","description","descriptionInfo","className","dataTestId","rest","_jsxs","cn","styles","row","root","children","mainRow","labelGroup","_jsx","leadingIcon","InfoTooltip","content","valueOld","from","valueArrow","to","descriptionRow","tone"],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
+ const react = require('react');
5
6
  const cn = require('classnames');
6
7
  const Disclaimer_module = require('./Disclaimer.module.css.cjs');
7
8
  const jsxRuntime = require('react/jsx-runtime');
@@ -11,23 +12,29 @@ const defaultContent = /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
11
12
  children: ["Your privacy matters. We use cookieless analytics and collect only anonymized data for improvements. Cookies are used for functionality only. For more info read", ' ', /*#__PURE__*/jsxRuntime.jsx(TextLink.TextLink, {
12
13
  href: "https://lido.fi/privacy-notice",
13
14
  external: true,
15
+ size: "inherit",
14
16
  children: "Privacy Notice"
15
17
  }), "."]
16
18
  });
17
- const Disclaimer = _ref => {
19
+
20
+ /** Page-level note that defaults to the privacy text and pins to the bottom (`margin-top: auto`) as the last child of a flex column. */
21
+ const Disclaimer = /*#__PURE__*/react.forwardRef((_ref, ref) => {
18
22
  let {
23
+ as: Component = 'p',
19
24
  className,
20
25
  children = defaultContent,
21
26
  dataTestId,
22
27
  ...rest
23
28
  } = _ref;
24
- return /*#__PURE__*/jsxRuntime.jsx("p", {
29
+ return /*#__PURE__*/jsxRuntime.jsx(Component, {
30
+ ref: ref,
25
31
  className: cn(Disclaimer_module.root, className),
26
32
  "data-testid": dataTestId?.root,
27
33
  ...rest,
28
34
  children: children
29
35
  });
30
- };
36
+ });
37
+ Disclaimer.displayName = 'Disclaimer';
31
38
 
32
39
  exports.Disclaimer = Disclaimer;
33
40
  //# sourceMappingURL=Disclaimer.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Disclaimer.cjs","sources":["../../../src/disclaimer/Disclaimer.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef } from 'react'\n\nimport cn from 'classnames'\n\nimport { TextLink } from '../text-link'\nimport styles from './Disclaimer.module.css'\n\nexport type DisclaimerDataTestId = {\n root?: string\n}\n\nexport type DisclaimerProps = ComponentPropsWithoutRef<'p'> & {\n dataTestId?: DisclaimerDataTestId\n}\n\nconst defaultContent = (\n <>\n Your privacy matters. We use cookieless analytics and collect only\n anonymized data for improvements. Cookies are used for functionality only.\n For more info read{' '}\n <TextLink href='https://lido.fi/privacy-notice' external>\n Privacy Notice\n </TextLink>\n .\n </>\n)\n\nexport const Disclaimer = ({\n className,\n children = defaultContent,\n dataTestId,\n ...rest\n}: DisclaimerProps) => (\n <p\n className={cn(styles.root, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {children}\n </p>\n)\n"],"names":["defaultContent","_jsxs","_Fragment","children","_jsx","TextLink","href","external","Disclaimer","_ref","className","dataTestId","rest","cn","styles","root"],"mappings":";;;;;;;;;AAeA,MAAMA,cAAc,gBAClBC,eAAA,CAAAC,mBAAA,EAAA;AAAAC,EAAAA,QAAA,GAAE,kKAGkB,EAAC,GAAG,eACtBC,cAAA,CAACC,iBAAQ,EAAA;AAACC,IAAAA,IAAI,EAAC,gCAAgC;IAACC,QAAQ,EAAA,IAAA;AAAAJ,IAAAA,QAAA,EAAC,gBAAA;AAEzD,GAAU,CAAC,EAEb,GAAA,CAAA;AAAA,CAAE,CACH,CAAA;AAEM,MAAMK,UAAU,GAAGC,IAAA,IAAA;EAAA,IAAC;IACzBC,SAAS;AACTP,IAAAA,QAAQ,GAAGH,cAAc;IACzBW,UAAU;IACV,GAAGC,IAAAA;AACY,GAAC,GAAAH,IAAA,CAAA;AAAA,EAAA,oBAChBL,cAAA,CAAA,GAAA,EAAA;IACEM,SAAS,EAAEG,EAAE,CAACC,iBAAM,CAACC,IAAI,EAAEL,SAAS,CAAE;IACtC,aAAaC,EAAAA,UAAU,EAAEI,IAAK;AAAA,IAAA,GAC1BH,IAAI;AAAAT,IAAAA,QAAA,EAEPA,QAAAA;AAAQ,GACR,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"Disclaimer.cjs","sources":["../../../src/disclaimer/Disclaimer.tsx"],"sourcesContent":["import { forwardRef, type ComponentPropsWithoutRef, type Ref } from 'react'\n\nimport cn from 'classnames'\n\nimport { TextLink } from '../text-link'\nimport styles from './Disclaimer.module.css'\n\nexport type DisclaimerDataTestId = {\n root?: string\n}\n\nexport type DisclaimerProps = ComponentPropsWithoutRef<'p'> & {\n /** Root element; use `div` when `children` contain block content. */\n as?: 'p' | 'div'\n dataTestId?: DisclaimerDataTestId\n}\n\nconst defaultContent = (\n <>\n Your privacy matters. We use cookieless analytics and collect only\n anonymized data for improvements. Cookies are used for functionality only.\n For more info read{' '}\n <TextLink href='https://lido.fi/privacy-notice' external size='inherit'>\n Privacy Notice\n </TextLink>\n .\n </>\n)\n\n/** Page-level note that defaults to the privacy text and pins to the bottom (`margin-top: auto`) as the last child of a flex column. */\nexport const Disclaimer = forwardRef<HTMLElement, DisclaimerProps>(\n (\n {\n as: Component = 'p',\n className,\n children = defaultContent,\n dataTestId,\n ...rest\n },\n ref,\n ) => (\n <Component\n ref={ref as Ref<HTMLDivElement & HTMLParagraphElement>}\n className={cn(styles.root, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n {children}\n </Component>\n ),\n)\n\nDisclaimer.displayName = 'Disclaimer'\n"],"names":["defaultContent","_jsxs","_Fragment","children","_jsx","TextLink","href","external","size","Disclaimer","forwardRef","_ref","ref","as","Component","className","dataTestId","rest","cn","styles","root","displayName"],"mappings":";;;;;;;;;;AAiBA,MAAMA,cAAc,gBAClBC,eAAA,CAAAC,mBAAA,EAAA;AAAAC,EAAAA,QAAA,GAAE,kKAGkB,EAAC,GAAG,eACtBC,cAAA,CAACC,iBAAQ,EAAA;AAACC,IAAAA,IAAI,EAAC,gCAAgC;IAACC,QAAQ,EAAA,IAAA;AAACC,IAAAA,IAAI,EAAC,SAAS;AAAAL,IAAAA,QAAA,EAAC,gBAAA;AAExE,GAAU,CAAC,EAEb,GAAA,CAAA;AAAA,CAAE,CACH,CAAA;;AAED;AACO,MAAMM,UAAU,gBAAGC,gBAAU,CAClC,CAAAC,IAAA,EAQEC,GAAG,KAAA;EAAA,IAPH;IACEC,EAAE,EAAEC,SAAS,GAAG,GAAG;IACnBC,SAAS;AACTZ,IAAAA,QAAQ,GAAGH,cAAc;IACzBgB,UAAU;IACV,GAAGC,IAAAA;AACL,GAAC,GAAAN,IAAA,CAAA;EAAA,oBAGDP,cAAA,CAACU,SAAS,EAAA;AACRF,IAAAA,GAAG,EAAEA,GAAkD;IACvDG,SAAS,EAAEG,EAAE,CAACC,iBAAM,CAACC,IAAI,EAAEL,SAAS,CAAE;IACtC,aAAaC,EAAAA,UAAU,EAAEI,IAAK;AAAA,IAAA,GAC1BH,IAAI;AAAAd,IAAAA,QAAA,EAEPA,QAAAA;AAAQ,GACA,CAAC,CAAA;AAAA,CAEhB,EAAC;AAEDM,UAAU,CAACY,WAAW,GAAG,YAAY;;;;"}
@@ -12,11 +12,16 @@ const Divider = /*#__PURE__*/react.forwardRef((_ref, ref) => {
12
12
  let {
13
13
  orientation = 'horizontal',
14
14
  className,
15
+ role,
16
+ dataTestId,
15
17
  ...rest
16
18
  } = _ref;
17
19
  return /*#__PURE__*/jsxRuntime.jsx("div", {
18
20
  ref: ref,
21
+ role: role,
22
+ "aria-orientation": role === 'separator' && orientation === 'vertical' ? 'vertical' : undefined,
19
23
  className: cn(Divider_module.root, Divider_module[orientation], className),
24
+ "data-testid": dataTestId?.root,
20
25
  ...rest
21
26
  });
22
27
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Divider.cjs","sources":["../../../src/divider/Divider.tsx"],"sourcesContent":["import { forwardRef, type HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Divider.module.css'\n\nexport type DividerOrientation = 'horizontal' | 'vertical'\n\nexport type DividerProps = Omit<HTMLAttributes<HTMLDivElement>, 'children'> & {\n orientation?: DividerOrientation\n}\n\n/** Visual-only 1px line in the default border color; stretches along the cross axis of a flex parent. Pass role='separator' for semantics. */\nexport const Divider = forwardRef<HTMLDivElement, DividerProps>(\n ({ orientation = 'horizontal', className, ...rest }, ref) => (\n <div\n ref={ref}\n className={cn(styles.root, styles[orientation], className)}\n {...rest}\n />\n ),\n)\n\nDivider.displayName = 'Divider'\n"],"names":["Divider","forwardRef","_ref","ref","orientation","className","rest","_jsx","cn","styles","root","displayName"],"mappings":";;;;;;;;;AAYA;AACO,MAAMA,OAAO,gBAAGC,gBAAU,CAC/B,CAAAC,IAAA,EAAqDC,GAAG,KAAA;EAAA,IAAvD;AAAEC,IAAAA,WAAW,GAAG,YAAY;IAAEC,SAAS;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAJ,IAAA,CAAA;AAAA,EAAA,oBACjDK,cAAA,CAAA,KAAA,EAAA;AACEJ,IAAAA,GAAG,EAAEA,GAAI;AACTE,IAAAA,SAAS,EAAEG,EAAE,CAACC,cAAM,CAACC,IAAI,EAAED,cAAM,CAACL,WAAW,CAAC,EAAEC,SAAS,CAAE;IAAA,GACvDC,IAAAA;AAAI,GACT,CAAC,CAAA;AAAA,CAEN,EAAC;AAEDN,OAAO,CAACW,WAAW,GAAG,SAAS;;;;"}
1
+ {"version":3,"file":"Divider.cjs","sources":["../../../src/divider/Divider.tsx"],"sourcesContent":["import { forwardRef, type HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Divider.module.css'\n\nexport type DividerOrientation = 'horizontal' | 'vertical'\n\nexport type DividerDataTestId = { root?: string }\n\nexport type DividerProps = Omit<HTMLAttributes<HTMLDivElement>, 'children'> & {\n orientation?: DividerOrientation\n dataTestId?: DividerDataTestId\n}\n\n/** Visual-only 1px line in the default border color; stretches along the cross axis of a flex parent. Pass role='separator' for semantics. */\nexport const Divider = forwardRef<HTMLDivElement, DividerProps>(\n (\n { orientation = 'horizontal', className, role, dataTestId, ...rest },\n ref,\n ) => (\n <div\n ref={ref}\n role={role}\n aria-orientation={\n role === 'separator' && orientation === 'vertical'\n ? 'vertical'\n : undefined\n }\n className={cn(styles.root, styles[orientation], className)}\n data-testid={dataTestId?.root}\n {...rest}\n />\n ),\n)\n\nDivider.displayName = 'Divider'\n"],"names":["Divider","forwardRef","_ref","ref","orientation","className","role","dataTestId","rest","_jsx","undefined","cn","styles","root","displayName"],"mappings":";;;;;;;;;AAeA;AACO,MAAMA,OAAO,gBAAGC,gBAAU,CAC/B,CAAAC,IAAA,EAEEC,GAAG,KAAA;EAAA,IADH;AAAEC,IAAAA,WAAW,GAAG,YAAY;IAAEC,SAAS;IAAEC,IAAI;IAAEC,UAAU;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAN,IAAA,CAAA;AAAA,EAAA,oBAGpEO,cAAA,CAAA,KAAA,EAAA;AACEN,IAAAA,GAAG,EAAEA,GAAI;AACTG,IAAAA,IAAI,EAAEA,IAAK;IACX,kBACEA,EAAAA,IAAI,KAAK,WAAW,IAAIF,WAAW,KAAK,UAAU,GAC9C,UAAU,GACVM,SACL;AACDL,IAAAA,SAAS,EAAEM,EAAE,CAACC,cAAM,CAACC,IAAI,EAAED,cAAM,CAACR,WAAW,CAAC,EAAEC,SAAS,CAAE;IAC3D,aAAaE,EAAAA,UAAU,EAAEM,IAAK;IAAA,GAC1BL,IAAAA;AAAI,GACT,CAAC,CAAA;AAAA,CAEN,EAAC;AAEDR,OAAO,CAACc,WAAW,GAAG,SAAS;;;;"}
@@ -2,6 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
+ const react = require('react');
5
6
  const cn = require('classnames');
6
7
  const ErrorPage_module = require('./ErrorPage.module.css.cjs');
7
8
  const jsxRuntime = require('react/jsx-runtime');
@@ -17,7 +18,10 @@ const presets = {
17
18
  }
18
19
  };
19
20
  const isPresetCode = code => code === '404' || code === '500';
20
- const ErrorPage = _ref => {
21
+ const isEmpty = node => node == null || node === '' || typeof node === 'boolean';
22
+
23
+ /** Centered 404 / 500 block with its own page gutters; render it directly in the page, not inside a container that already adds them. */
24
+ const ErrorPage = /*#__PURE__*/react.forwardRef((_ref, ref) => {
21
25
  let {
22
26
  code,
23
27
  title,
@@ -27,26 +31,28 @@ const ErrorPage = _ref => {
27
31
  dataTestId,
28
32
  ...rest
29
33
  } = _ref;
30
- const preset = isPresetCode(code) ? presets[code] : undefined;
34
+ const codeStr = code == null ? undefined : String(code);
35
+ const preset = isPresetCode(codeStr) ? presets[codeStr] : undefined;
31
36
  const resolvedTitle = title !== undefined ? title : preset?.title;
32
37
  const resolvedDescription = description !== undefined ? description : preset?.description;
33
38
  return /*#__PURE__*/jsxRuntime.jsx("div", {
39
+ ref: ref,
34
40
  className: cn(ErrorPage_module.root, className),
35
41
  "data-testid": dataTestId?.root,
36
42
  ...rest,
37
43
  children: /*#__PURE__*/jsxRuntime.jsxs("div", {
38
44
  className: ErrorPage_module.inner,
39
- children: [code != null ? /*#__PURE__*/jsxRuntime.jsx("div", {
45
+ children: [codeStr != null ? /*#__PURE__*/jsxRuntime.jsx("div", {
40
46
  className: ErrorPage_module.code,
41
47
  "data-testid": dataTestId?.code,
42
- children: code
48
+ children: codeStr
43
49
  }) : null, /*#__PURE__*/jsxRuntime.jsxs("div", {
44
50
  className: ErrorPage_module.text,
45
- children: [resolvedTitle != null ? /*#__PURE__*/jsxRuntime.jsx("h1", {
51
+ children: [!isEmpty(resolvedTitle) ? /*#__PURE__*/jsxRuntime.jsx("h1", {
46
52
  className: ErrorPage_module.title,
47
53
  "data-testid": dataTestId?.title,
48
54
  children: resolvedTitle
49
- }) : null, resolvedDescription != null ? /*#__PURE__*/jsxRuntime.jsx("p", {
55
+ }) : null, !isEmpty(resolvedDescription) ? /*#__PURE__*/jsxRuntime.jsx("p", {
50
56
  className: ErrorPage_module.description,
51
57
  "data-testid": dataTestId?.description,
52
58
  children: resolvedDescription
@@ -58,7 +64,8 @@ const ErrorPage = _ref => {
58
64
  }) : null]
59
65
  })
60
66
  });
61
- };
67
+ });
68
+ ErrorPage.displayName = 'ErrorPage';
62
69
 
63
70
  exports.ErrorPage = ErrorPage;
64
71
  //# sourceMappingURL=ErrorPage.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorPage.cjs","sources":["../../../src/error-page/ErrorPage.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './ErrorPage.module.css'\n\nexport type ErrorPageCode = '404' | '500'\n\nexport type ErrorPageDataTestId = {\n root?: string\n code?: string\n title?: string\n description?: string\n action?: string\n}\n\nexport type ErrorPageProps = Omit<HTMLAttributes<HTMLDivElement>, 'title'> & {\n /** `'404'` / `'500'` fill default title and description. */\n code?: ErrorPageCode | (string & {})\n title?: ReactNode\n description?: ReactNode\n /** Slot below the text, usually a `Button`. */\n action?: ReactNode\n dataTestId?: ErrorPageDataTestId\n}\n\nconst presets: Record<ErrorPageCode, { title: string; description: string }> = {\n '404': {\n title: 'Page not found',\n description:\n 'The page you’re looking for doesn’t exist or has been moved. Check the URL or return to your dashboard.',\n },\n '500': {\n title: 'Something went wrong',\n description:\n 'We’re having trouble loading this page. Please try again in a moment.',\n },\n}\n\nconst isPresetCode = (code?: string): code is ErrorPageCode =>\n code === '404' || code === '500'\n\nexport const ErrorPage = ({\n code,\n title,\n description,\n action,\n className,\n dataTestId,\n ...rest\n}: ErrorPageProps) => {\n const preset = isPresetCode(code) ? presets[code] : undefined\n const resolvedTitle = title !== undefined ? title : preset?.title\n const resolvedDescription =\n description !== undefined ? description : preset?.description\n\n return (\n <div\n className={cn(styles.root, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <div className={styles.inner}>\n {code != null ? (\n <div className={styles.code} data-testid={dataTestId?.code}>\n {code}\n </div>\n ) : null}\n <div className={styles.text}>\n {resolvedTitle != null ? (\n <h1 className={styles.title} data-testid={dataTestId?.title}>\n {resolvedTitle}\n </h1>\n ) : null}\n {resolvedDescription != null ? (\n <p\n className={styles.description}\n data-testid={dataTestId?.description}\n >\n {resolvedDescription}\n </p>\n ) : null}\n </div>\n {action != null ? (\n <div className={styles.action} data-testid={dataTestId?.action}>\n {action}\n </div>\n ) : null}\n </div>\n </div>\n )\n}\n"],"names":["presets","title","description","isPresetCode","code","ErrorPage","_ref","action","className","dataTestId","rest","preset","undefined","resolvedTitle","resolvedDescription","_jsx","cn","styles","root","children","_jsxs","inner","text"],"mappings":";;;;;;;;AA0BA,MAAMA,OAAsE,GAAG;AAC7E,EAAA,KAAK,EAAE;AACLC,IAAAA,KAAK,EAAE,gBAAgB;AACvBC,IAAAA,WAAW,EACT,yGAAA;GACH;AACD,EAAA,KAAK,EAAE;AACLD,IAAAA,KAAK,EAAE,sBAAsB;AAC7BC,IAAAA,WAAW,EACT,uEAAA;AACJ,GAAA;AACF,CAAC,CAAA;AAED,MAAMC,YAAY,GAAIC,IAAa,IACjCA,IAAI,KAAK,KAAK,IAAIA,IAAI,KAAK,KAAK,CAAA;AAErBC,MAAAA,SAAS,GAAGC,IAAA,IAQH;EAAA,IARI;IACxBF,IAAI;IACJH,KAAK;IACLC,WAAW;IACXK,MAAM;IACNC,SAAS;IACTC,UAAU;IACV,GAAGC,IAAAA;AACW,GAAC,GAAAJ,IAAA,CAAA;AACf,EAAA,MAAMK,MAAM,GAAGR,YAAY,CAACC,IAAI,CAAC,GAAGJ,OAAO,CAACI,IAAI,CAAC,GAAGQ,SAAS,CAAA;EAC7D,MAAMC,aAAa,GAAGZ,KAAK,KAAKW,SAAS,GAAGX,KAAK,GAAGU,MAAM,EAAEV,KAAK,CAAA;EACjE,MAAMa,mBAAmB,GACvBZ,WAAW,KAAKU,SAAS,GAAGV,WAAW,GAAGS,MAAM,EAAET,WAAW,CAAA;AAE/D,EAAA,oBACEa,cAAA,CAAA,KAAA,EAAA;IACEP,SAAS,EAAEQ,EAAE,CAACC,gBAAM,CAACC,IAAI,EAAEV,SAAS,CAAE;IACtC,aAAaC,EAAAA,UAAU,EAAES,IAAK;AAAA,IAAA,GAC1BR,IAAI;AAAAS,IAAAA,QAAA,eAERC,eAAA,CAAA,KAAA,EAAA;MAAKZ,SAAS,EAAES,gBAAM,CAACI,KAAM;AAAAF,MAAAA,QAAA,EAC1Bf,CAAAA,IAAI,IAAI,IAAI,gBACXW,cAAA,CAAA,KAAA,EAAA;QAAKP,SAAS,EAAES,gBAAM,CAACb,IAAK;QAAC,aAAaK,EAAAA,UAAU,EAAEL,IAAK;AAAAe,QAAAA,QAAA,EACxDf,IAAAA;AAAI,OACF,CAAC,GACJ,IAAI,eACRgB,eAAA,CAAA,KAAA,EAAA;QAAKZ,SAAS,EAAES,gBAAM,CAACK,IAAK;AAAAH,QAAAA,QAAA,EACzBN,CAAAA,aAAa,IAAI,IAAI,gBACpBE,cAAA,CAAA,IAAA,EAAA;UAAIP,SAAS,EAAES,gBAAM,CAAChB,KAAM;UAAC,aAAaQ,EAAAA,UAAU,EAAER,KAAM;AAAAkB,UAAAA,QAAA,EACzDN,aAAAA;SACC,CAAC,GACH,IAAI,EACPC,mBAAmB,IAAI,IAAI,gBAC1BC,cAAA,CAAA,GAAA,EAAA;UACEP,SAAS,EAAES,gBAAM,CAACf,WAAY;UAC9B,aAAaO,EAAAA,UAAU,EAAEP,WAAY;AAAAiB,UAAAA,QAAA,EAEpCL,mBAAAA;SACA,CAAC,GACF,IAAI,CAAA;AAAA,OACL,CAAC,EACLP,MAAM,IAAI,IAAI,gBACbQ,cAAA,CAAA,KAAA,EAAA;QAAKP,SAAS,EAAES,gBAAM,CAACV,MAAO;QAAC,aAAaE,EAAAA,UAAU,EAAEF,MAAO;AAAAY,QAAAA,QAAA,EAC5DZ,MAAAA;OACE,CAAC,GACJ,IAAI,CAAA;KACL,CAAA;AAAC,GACH,CAAC,CAAA;AAEV;;;;"}
1
+ {"version":3,"file":"ErrorPage.cjs","sources":["../../../src/error-page/ErrorPage.tsx"],"sourcesContent":["import { forwardRef, type HTMLAttributes, type ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './ErrorPage.module.css'\n\nexport type ErrorPageCode = '404' | '500'\n\nexport type ErrorPageDataTestId = {\n root?: string\n code?: string\n title?: string\n description?: string\n action?: string\n}\n\nexport type ErrorPageProps = Omit<HTMLAttributes<HTMLDivElement>, 'title'> & {\n /** `'404'` / `'500'` fill default title and description. */\n code?: ErrorPageCode | number | (string & {})\n /** Overrides the preset title; `null` suppresses it. */\n title?: ReactNode\n /** Overrides the preset description; `null` suppresses it. */\n description?: ReactNode\n /** Slot below the text: one or more `Button`s, which wrap on narrow screens. */\n action?: ReactNode\n dataTestId?: ErrorPageDataTestId\n}\n\nconst presets: Record<ErrorPageCode, { title: string; description: string }> = {\n '404': {\n title: 'Page not found',\n description:\n 'The page you’re looking for doesn’t exist or has been moved. Check the URL or return to your dashboard.',\n },\n '500': {\n title: 'Something went wrong',\n description:\n 'We’re having trouble loading this page. Please try again in a moment.',\n },\n}\n\nconst isPresetCode = (code?: string): code is ErrorPageCode =>\n code === '404' || code === '500'\n\nconst isEmpty = (node: ReactNode) =>\n node == null || node === '' || typeof node === 'boolean'\n\n/** Centered 404 / 500 block with its own page gutters; render it directly in the page, not inside a container that already adds them. */\nexport const ErrorPage = forwardRef<HTMLDivElement, ErrorPageProps>(\n (\n { code, title, description, action, className, dataTestId, ...rest },\n ref,\n ) => {\n const codeStr = code == null ? undefined : String(code)\n const preset = isPresetCode(codeStr) ? presets[codeStr] : undefined\n const resolvedTitle = title !== undefined ? title : preset?.title\n const resolvedDescription =\n description !== undefined ? description : preset?.description\n\n return (\n <div\n ref={ref}\n className={cn(styles.root, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <div className={styles.inner}>\n {codeStr != null ? (\n <div className={styles.code} data-testid={dataTestId?.code}>\n {codeStr}\n </div>\n ) : null}\n <div className={styles.text}>\n {!isEmpty(resolvedTitle) ? (\n <h1 className={styles.title} data-testid={dataTestId?.title}>\n {resolvedTitle}\n </h1>\n ) : null}\n {!isEmpty(resolvedDescription) ? (\n <p\n className={styles.description}\n data-testid={dataTestId?.description}\n >\n {resolvedDescription}\n </p>\n ) : null}\n </div>\n {action != null ? (\n <div className={styles.action} data-testid={dataTestId?.action}>\n {action}\n </div>\n ) : null}\n </div>\n </div>\n )\n },\n)\n\nErrorPage.displayName = 'ErrorPage'\n"],"names":["presets","title","description","isPresetCode","code","isEmpty","node","ErrorPage","forwardRef","_ref","ref","action","className","dataTestId","rest","codeStr","undefined","String","preset","resolvedTitle","resolvedDescription","_jsx","cn","styles","root","children","_jsxs","inner","text","displayName"],"mappings":"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"}
@@ -2,29 +2,37 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
+ const react = require('react');
5
6
  const cn = require('classnames');
6
7
  const Footer_module = require('./Footer.module.css.cjs');
7
8
  const jsxRuntime = require('react/jsx-runtime');
8
9
 
9
- const Footer = _ref => {
10
+ /** App footer shell with page background, top border and page gutters. */
11
+ const Footer = /*#__PURE__*/react.forwardRef((_ref, ref) => {
10
12
  let {
11
13
  children,
12
14
  aside,
13
15
  className,
16
+ dataTestId,
14
17
  ...rest
15
18
  } = _ref;
16
19
  return /*#__PURE__*/jsxRuntime.jsxs("footer", {
20
+ ref: ref,
17
21
  className: cn(Footer_module.footer, className),
22
+ "data-testid": dataTestId?.root,
18
23
  ...rest,
19
24
  children: [/*#__PURE__*/jsxRuntime.jsx("div", {
20
25
  className: Footer_module.content,
26
+ "data-testid": dataTestId?.content,
21
27
  children: children
22
28
  }), aside != null ? /*#__PURE__*/jsxRuntime.jsx("div", {
23
29
  className: Footer_module.aside,
30
+ "data-testid": dataTestId?.aside,
24
31
  children: aside
25
32
  }) : null]
26
33
  });
27
- };
34
+ });
35
+ Footer.displayName = 'Footer';
28
36
 
29
37
  exports.Footer = Footer;
30
38
  //# sourceMappingURL=Footer.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.cjs","sources":["../../../src/footer/Footer.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Footer.module.css'\n\nexport type FooterProps = ComponentPropsWithoutRef<'footer'> & {\n /** Right slot, e.g. version tag. */\n aside?: ReactNode\n}\n\nexport const Footer = ({\n children,\n aside,\n className,\n ...rest\n}: FooterProps) => (\n <footer className={cn(styles.footer, className)} {...rest}>\n <div className={styles.content}>{children}</div>\n {aside != null ? <div className={styles.aside}>{aside}</div> : null}\n </footer>\n)\n"],"names":["Footer","_ref","children","aside","className","rest","_jsxs","cn","styles","footer","_jsx","content"],"mappings":";;;;;;;;AAWO,MAAMA,MAAM,GAAGC,IAAA,IAAA;EAAA,IAAC;IACrBC,QAAQ;IACRC,KAAK;IACLC,SAAS;IACT,GAAGC,IAAAA;AACQ,GAAC,GAAAJ,IAAA,CAAA;AAAA,EAAA,oBACZK,eAAA,CAAA,QAAA,EAAA;IAAQF,SAAS,EAAEG,EAAE,CAACC,aAAM,CAACC,MAAM,EAAEL,SAAS,CAAE;AAAA,IAAA,GAAKC,IAAI;AAAAH,IAAAA,QAAA,gBACvDQ,cAAA,CAAA,KAAA,EAAA;MAAKN,SAAS,EAAEI,aAAM,CAACG,OAAQ;AAAAT,MAAAA,QAAA,EAAEA,QAAAA;AAAQ,KAAM,CAAC,EAC/CC,KAAK,IAAI,IAAI,gBAAGO,cAAA,CAAA,KAAA,EAAA;MAAKN,SAAS,EAAEI,aAAM,CAACL,KAAM;AAAAD,MAAAA,QAAA,EAAEC,KAAAA;KAAW,CAAC,GAAG,IAAI,CAAA;AAAA,GAC7D,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"Footer.cjs","sources":["../../../src/footer/Footer.tsx"],"sourcesContent":["import {\n forwardRef,\n type ComponentPropsWithoutRef,\n type ReactNode,\n} from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Footer.module.css'\n\nexport type FooterDataTestId = {\n root?: string\n content?: string\n aside?: string\n}\n\nexport type FooterProps = ComponentPropsWithoutRef<'footer'> & {\n /** Left row of links or text; wraps. */\n children?: ReactNode\n /** Right slot, e.g. version tag. */\n aside?: ReactNode\n dataTestId?: FooterDataTestId\n}\n\n/** App footer shell with page background, top border and page gutters. */\nexport const Footer = forwardRef<HTMLElement, FooterProps>(\n ({ children, aside, className, dataTestId, ...rest }, ref) => (\n <footer\n ref={ref}\n className={cn(styles.footer, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <div className={styles.content} data-testid={dataTestId?.content}>\n {children}\n </div>\n {aside != null ? (\n <div className={styles.aside} data-testid={dataTestId?.aside}>\n {aside}\n </div>\n ) : null}\n </footer>\n ),\n)\n\nFooter.displayName = 'Footer'\n"],"names":["Footer","forwardRef","_ref","ref","children","aside","className","dataTestId","rest","_jsxs","cn","styles","footer","root","_jsx","content","displayName"],"mappings":";;;;;;;;;AAwBA;AACO,MAAMA,MAAM,gBAAGC,gBAAU,CAC9B,CAAAC,IAAA,EAAsDC,GAAG,KAAA;EAAA,IAAxD;IAAEC,QAAQ;IAAEC,KAAK;IAAEC,SAAS;IAAEC,UAAU;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAN,IAAA,CAAA;AAAA,EAAA,oBAClDO,eAAA,CAAA,QAAA,EAAA;AACEN,IAAAA,GAAG,EAAEA,GAAI;IACTG,SAAS,EAAEI,EAAE,CAACC,aAAM,CAACC,MAAM,EAAEN,SAAS,CAAE;IACxC,aAAaC,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAJ,IAAAA,QAAA,gBAERU,cAAA,CAAA,KAAA,EAAA;MAAKR,SAAS,EAAEK,aAAM,CAACI,OAAQ;MAAC,aAAaR,EAAAA,UAAU,EAAEQ,OAAQ;AAAAX,MAAAA,QAAA,EAC9DA,QAAAA;AAAQ,KACN,CAAC,EACLC,KAAK,IAAI,IAAI,gBACZS,cAAA,CAAA,KAAA,EAAA;MAAKR,SAAS,EAAEK,aAAM,CAACN,KAAM;MAAC,aAAaE,EAAAA,UAAU,EAAEF,KAAM;AAAAD,MAAAA,QAAA,EAC1DC,KAAAA;KACE,CAAC,GACJ,IAAI,CAAA;AAAA,GACF,CAAC,CAAA;AAAA,CAEb,EAAC;AAEDL,MAAM,CAACgB,WAAW,GAAG,QAAQ;;;;"}
@@ -4,13 +4,14 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const react = require('react');
6
6
  const cn = require('classnames');
7
+ const Stack = require('../stack/Stack.cjs');
7
8
  const Grid_module = require('./Grid.module.css.cjs');
8
9
  const jsxRuntime = require('react/jsx-runtime');
9
10
  const responsive = require('../utils/responsive.cjs');
10
11
 
11
12
  const columnsToCss = columns => typeof columns === 'number' ? `repeat(${columns}, minmax(0, 1fr))` : columns;
12
13
 
13
- /** CSS grid container with equal, templated or auto-fit columns and a spacing scale. */
14
+ /** CSS grid container; `columns`, `gap` and `align` take a value or a desktop-first per-breakpoint object like `{ base: 4, mdDown: 2 }`. Use `minItemWidth` to adapt to the container width instead of the viewport. */
14
15
  const Grid = /*#__PURE__*/react.forwardRef((_ref, ref) => {
15
16
  let {
16
17
  as: Component = 'div',
@@ -22,6 +23,7 @@ const Grid = /*#__PURE__*/react.forwardRef((_ref, ref) => {
22
23
  align,
23
24
  className,
24
25
  style,
26
+ dataTestId,
25
27
  ...rest
26
28
  } = _ref;
27
29
  const minWidth = typeof minItemWidth === 'number' ? `${minItemWidth}px` : minItemWidth;
@@ -29,15 +31,17 @@ const Grid = /*#__PURE__*/react.forwardRef((_ref, ref) => {
29
31
  const vars = {
30
32
  ...responsive.responsiveVars('columns', template, columnsToCss),
31
33
  ...responsive.responsiveVars('rowGap', responsive.mergeResponsive(gap, rowGap), responsive.spaceToCss),
32
- ...responsive.responsiveVars('columnGap', responsive.mergeResponsive(gap, columnGap), responsive.spaceToCss)
34
+ ...responsive.responsiveVars('columnGap', responsive.mergeResponsive(gap, columnGap), responsive.spaceToCss),
35
+ ...responsive.responsiveVars('align', align, Stack.alignToCss)
33
36
  };
34
37
  return /*#__PURE__*/jsxRuntime.jsx(Component, {
35
38
  ref: ref,
36
- className: cn(Grid_module.root, align && Grid_module[`align${responsive.capitalize(align)}`], className),
39
+ className: cn(Grid_module.root, className),
37
40
  style: {
38
41
  ...vars,
39
42
  ...style
40
43
  },
44
+ "data-testid": dataTestId?.root,
41
45
  ...rest
42
46
  });
43
47
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Grid.cjs","sources":["../../../src/grid/Grid.tsx"],"sourcesContent":["import { forwardRef, type ElementType, type HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport {\n capitalize,\n mergeResponsive,\n responsiveVars,\n spaceToCss,\n type Responsive,\n type Space,\n} from '../utils'\nimport styles from './Grid.module.css'\n\nexport type GridAlign = 'start' | 'center' | 'end' | 'stretch'\n\nexport type GridProps = HTMLAttributes<HTMLElement> & {\n as?: ElementType\n /** A number makes equal columns; a string is used as raw `grid-template-columns`. */\n columns?: Responsive<number | string>\n /** Auto-fit columns of at least this width (number = px). Takes precedence over `columns`. */\n minItemWidth?: number | string\n gap?: Responsive<Space>\n /** Overrides `gap` for rows, per breakpoint. */\n rowGap?: Responsive<Space>\n /** Overrides `gap` for columns, per breakpoint. */\n columnGap?: Responsive<Space>\n align?: GridAlign\n}\n\nconst columnsToCss = (columns: number | string) =>\n typeof columns === 'number' ? `repeat(${columns}, minmax(0, 1fr))` : columns\n\n/** CSS grid container with equal, templated or auto-fit columns and a spacing scale. */\nexport const Grid = forwardRef<HTMLElement, GridProps>(\n (\n {\n as: Component = 'div',\n columns,\n minItemWidth,\n gap,\n rowGap,\n columnGap,\n align,\n className,\n style,\n ...rest\n },\n ref,\n ) => {\n const minWidth =\n typeof minItemWidth === 'number' ? `${minItemWidth}px` : minItemWidth\n const template =\n minItemWidth !== undefined\n ? `repeat(auto-fit, minmax(min(${minWidth}, 100%), 1fr))`\n : columns\n\n const vars = {\n ...responsiveVars('columns', template, columnsToCss),\n ...responsiveVars('rowGap', mergeResponsive(gap, rowGap), spaceToCss),\n ...responsiveVars(\n 'columnGap',\n mergeResponsive(gap, columnGap),\n spaceToCss,\n ),\n }\n\n return (\n <Component\n ref={ref}\n className={cn(\n styles.root,\n align && styles[`align${capitalize(align)}`],\n className,\n )}\n style={{ ...vars, ...style }}\n {...rest}\n />\n )\n },\n)\n\nGrid.displayName = 'Grid'\n"],"names":["columnsToCss","columns","Grid","forwardRef","_ref","ref","as","Component","minItemWidth","gap","rowGap","columnGap","align","className","style","rest","minWidth","template","undefined","vars","responsiveVars","mergeResponsive","spaceToCss","_jsx","cn","styles","root","capitalize","displayName"],"mappings":";;;;;;;;;;AA8BA,MAAMA,YAAY,GAAIC,OAAwB,IAC5C,OAAOA,OAAO,KAAK,QAAQ,GAAG,CAAA,OAAA,EAAUA,OAAO,CAAA,iBAAA,CAAmB,GAAGA,OAAO,CAAA;;AAE9E;AACO,MAAMC,IAAI,gBAAGC,gBAAU,CAC5B,CAAAC,IAAA,EAaEC,GAAG,KACA;EAAA,IAbH;IACEC,EAAE,EAAEC,SAAS,GAAG,KAAK;IACrBN,OAAO;IACPO,YAAY;IACZC,GAAG;IACHC,MAAM;IACNC,SAAS;IACTC,KAAK;IACLC,SAAS;IACTC,KAAK;IACL,GAAGC,IAAAA;AACL,GAAC,GAAAX,IAAA,CAAA;EAGD,MAAMY,QAAQ,GACZ,OAAOR,YAAY,KAAK,QAAQ,GAAG,CAAGA,EAAAA,YAAY,CAAI,EAAA,CAAA,GAAGA,YAAY,CAAA;EACvE,MAAMS,QAAQ,GACZT,YAAY,KAAKU,SAAS,GACtB,CAA+BF,4BAAAA,EAAAA,QAAQ,CAAgB,cAAA,CAAA,GACvDf,OAAO,CAAA;AAEb,EAAA,MAAMkB,IAAI,GAAG;AACX,IAAA,GAAGC,yBAAc,CAAC,SAAS,EAAEH,QAAQ,EAAEjB,YAAY,CAAC;AACpD,IAAA,GAAGoB,yBAAc,CAAC,QAAQ,EAAEC,0BAAe,CAACZ,GAAG,EAAEC,MAAM,CAAC,EAAEY,qBAAU,CAAC;IACrE,GAAGF,yBAAc,CACf,WAAW,EACXC,0BAAe,CAACZ,GAAG,EAAEE,SAAS,CAAC,EAC/BW,qBACF,CAAA;GACD,CAAA;EAED,oBACEC,cAAA,CAAChB,SAAS,EAAA;AACRF,IAAAA,GAAG,EAAEA,GAAI;IACTQ,SAAS,EAAEW,EAAE,CACXC,WAAM,CAACC,IAAI,EACXd,KAAK,IAAIa,WAAM,CAAC,CAAQE,KAAAA,EAAAA,qBAAU,CAACf,KAAK,CAAC,EAAE,CAAC,EAC5CC,SACF,CAAE;AACFC,IAAAA,KAAK,EAAE;AAAE,MAAA,GAAGK,IAAI;MAAE,GAAGL,KAAAA;KAAQ;IAAA,GACzBC,IAAAA;AAAI,GACT,CAAC,CAAA;AAEN,CACF,EAAC;AAEDb,IAAI,CAAC0B,WAAW,GAAG,MAAM;;;;"}
1
+ {"version":3,"file":"Grid.cjs","sources":["../../../src/grid/Grid.tsx"],"sourcesContent":["import { forwardRef, type ElementType, type HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport {\n mergeResponsive,\n responsiveVars,\n spaceToCss,\n type PolymorphicComponent,\n type PolymorphicProps,\n type Responsive,\n type Space,\n} from '../utils'\nimport { alignToCss, type StackAlign } from '../stack/Stack'\nimport styles from './Grid.module.css'\n\nexport type GridAlign = Exclude<StackAlign, 'baseline'>\n\nexport type GridDataTestId = { root?: string }\n\ntype GridOwnProps = {\n /** Per-breakpoint, desktop-first (see breakpointWidths); breakpoint keys follow the viewport width. A number makes equal columns; a string is used as raw `grid-template-columns`. */\n columns?: Responsive<number | string>\n /** Auto-fit columns of at least this width (number = px). Responds to the Grid's own width, not the viewport; prefer it inside cards, panels and modals. Takes precedence over `columns`. */\n minItemWidth?: number | string\n /** Gap from the spacing scale in px. Per-breakpoint, desktop-first (see breakpointWidths). */\n gap?: Responsive<Space>\n /** Overrides `gap` for rows, merged per breakpoint key: keys you omit keep `gap`'s value. `16` and `{ base: 16 }` are the same. */\n rowGap?: Responsive<Space>\n /** Overrides `gap` for columns, merged per breakpoint key: keys you omit keep `gap`'s value. `16` and `{ base: 16 }` are the same. */\n columnGap?: Responsive<Space>\n /** Cross-axis alignment of items. Per-breakpoint, desktop-first (see breakpointWidths). */\n align?: Responsive<GridAlign | 'baseline'>\n dataTestId?: GridDataTestId\n}\n\ntype GridImplProps = HTMLAttributes<HTMLElement> &\n GridOwnProps & { as?: ElementType }\n\nexport type GridProps<E extends ElementType = never> = [E] extends [never]\n ? GridImplProps\n : PolymorphicProps<E, GridOwnProps>\n\nconst columnsToCss = (columns: number | string) =>\n typeof columns === 'number' ? `repeat(${columns}, minmax(0, 1fr))` : columns\n\n/** CSS grid container; `columns`, `gap` and `align` take a value or a desktop-first per-breakpoint object like `{ base: 4, mdDown: 2 }`. Use `minItemWidth` to adapt to the container width instead of the viewport. */\nexport const Grid = forwardRef<HTMLElement, GridImplProps>(\n (\n {\n as: Component = 'div',\n columns,\n minItemWidth,\n gap,\n rowGap,\n columnGap,\n align,\n className,\n style,\n dataTestId,\n ...rest\n },\n ref,\n ) => {\n const minWidth =\n typeof minItemWidth === 'number' ? `${minItemWidth}px` : minItemWidth\n const template =\n minItemWidth !== undefined\n ? `repeat(auto-fit, minmax(min(${minWidth}, 100%), 1fr))`\n : columns\n\n const vars = {\n ...responsiveVars('columns', template, columnsToCss),\n ...responsiveVars('rowGap', mergeResponsive(gap, rowGap), spaceToCss),\n ...responsiveVars(\n 'columnGap',\n mergeResponsive(gap, columnGap),\n spaceToCss,\n ),\n ...responsiveVars('align', align, alignToCss),\n }\n\n return (\n <Component\n ref={ref}\n className={cn(styles.root, className)}\n style={{ ...vars, ...style }}\n data-testid={dataTestId?.root}\n {...rest}\n />\n )\n },\n) as PolymorphicComponent<'div', GridOwnProps>\n\nGrid.displayName = 'Grid'\n"],"names":["columnsToCss","columns","Grid","forwardRef","_ref","ref","as","Component","minItemWidth","gap","rowGap","columnGap","align","className","style","dataTestId","rest","minWidth","template","undefined","vars","responsiveVars","mergeResponsive","spaceToCss","alignToCss","_jsx","cn","styles","root","displayName"],"mappings":";;;;;;;;;;;AA2CA,MAAMA,YAAY,GAAIC,OAAwB,IAC5C,OAAOA,OAAO,KAAK,QAAQ,GAAG,CAAA,OAAA,EAAUA,OAAO,CAAA,iBAAA,CAAmB,GAAGA,OAAO,CAAA;;AAE9E;AACO,MAAMC,IAAI,gBAAGC,gBAAU,CAC5B,CAAAC,IAAA,EAcEC,GAAG,KACA;EAAA,IAdH;IACEC,EAAE,EAAEC,SAAS,GAAG,KAAK;IACrBN,OAAO;IACPO,YAAY;IACZC,GAAG;IACHC,MAAM;IACNC,SAAS;IACTC,KAAK;IACLC,SAAS;IACTC,KAAK;IACLC,UAAU;IACV,GAAGC,IAAAA;AACL,GAAC,GAAAZ,IAAA,CAAA;EAGD,MAAMa,QAAQ,GACZ,OAAOT,YAAY,KAAK,QAAQ,GAAG,CAAGA,EAAAA,YAAY,CAAI,EAAA,CAAA,GAAGA,YAAY,CAAA;EACvE,MAAMU,QAAQ,GACZV,YAAY,KAAKW,SAAS,GACtB,CAA+BF,4BAAAA,EAAAA,QAAQ,CAAgB,cAAA,CAAA,GACvDhB,OAAO,CAAA;AAEb,EAAA,MAAMmB,IAAI,GAAG;AACX,IAAA,GAAGC,yBAAc,CAAC,SAAS,EAAEH,QAAQ,EAAElB,YAAY,CAAC;AACpD,IAAA,GAAGqB,yBAAc,CAAC,QAAQ,EAAEC,0BAAe,CAACb,GAAG,EAAEC,MAAM,CAAC,EAAEa,qBAAU,CAAC;AACrE,IAAA,GAAGF,yBAAc,CACf,WAAW,EACXC,0BAAe,CAACb,GAAG,EAAEE,SAAS,CAAC,EAC/BY,qBACF,CAAC;AACD,IAAA,GAAGF,yBAAc,CAAC,OAAO,EAAET,KAAK,EAAEY,gBAAU,CAAA;GAC7C,CAAA;EAED,oBACEC,cAAA,CAAClB,SAAS,EAAA;AACRF,IAAAA,GAAG,EAAEA,GAAI;IACTQ,SAAS,EAAEa,EAAE,CAACC,WAAM,CAACC,IAAI,EAAEf,SAAS,CAAE;AACtCC,IAAAA,KAAK,EAAE;AAAE,MAAA,GAAGM,IAAI;MAAE,GAAGN,KAAAA;KAAQ;IAC7B,aAAaC,EAAAA,UAAU,EAAEa,IAAK;IAAA,GAC1BZ,IAAAA;AAAI,GACT,CAAC,CAAA;AAEN,CACF,EAA8C;AAE9Cd,IAAI,CAAC2B,WAAW,GAAG,MAAM;;;;"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const styles = {"root":"Grid-module_root__WQ5eA","alignStart":"Grid-module_alignStart__tJzED","alignCenter":"Grid-module_alignCenter__Br-nr","alignEnd":"Grid-module_alignEnd__oWTV-","alignStretch":"Grid-module_alignStretch__v1rgi"};
3
+ const styles = {"root":"Grid-module_root__WQ5eA"};
4
4
 
5
5
  module.exports = styles;
6
6
  //# sourceMappingURL=Grid.module.css.cjs.map
@@ -18,6 +18,7 @@ const GridItem = /*#__PURE__*/react.forwardRef((_ref, ref) => {
18
18
  area,
19
19
  className,
20
20
  style,
21
+ dataTestId,
21
22
  ...rest
22
23
  } = _ref;
23
24
  return /*#__PURE__*/jsxRuntime.jsx(Component, {
@@ -30,6 +31,7 @@ const GridItem = /*#__PURE__*/react.forwardRef((_ref, ref) => {
30
31
  }),
31
32
  ...style
32
33
  },
34
+ "data-testid": dataTestId?.root,
33
35
  ...rest
34
36
  });
35
37
  });
@@ -1 +1 @@
1
- {"version":3,"file":"GridItem.cjs","sources":["../../../src/grid/GridItem.tsx"],"sourcesContent":["import { forwardRef, type ElementType, type HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport { responsiveVars, type Responsive } from '../utils'\nimport styles from './GridItem.module.css'\n\nexport type GridItemProps = HTMLAttributes<HTMLElement> & {\n as?: ElementType\n /** Number of columns to span; `'full'` spans every column. */\n span?: Responsive<number | 'full'>\n area?: string\n}\n\nconst spanToCss = (span: number | 'full') =>\n span === 'full' ? '1 / -1' : `span ${span} / span ${span}`\n\n/** Grid child that can span columns or sit in a named area. */\nexport const GridItem = forwardRef<HTMLElement, GridItemProps>(\n ({ as: Component = 'div', span, area, className, style, ...rest }, ref) => {\n return (\n <Component\n ref={ref}\n className={cn(styles.root, className)}\n style={{\n ...responsiveVars('span', span, spanToCss),\n ...(area !== undefined && { gridArea: area }),\n ...style,\n }}\n {...rest}\n />\n )\n },\n)\n\nGridItem.displayName = 'GridItem'\n"],"names":["spanToCss","span","GridItem","forwardRef","_ref","ref","as","Component","area","className","style","rest","_jsx","cn","styles","root","responsiveVars","undefined","gridArea","displayName"],"mappings":";;;;;;;;;;AAcA,MAAMA,SAAS,GAAIC,IAAqB,IACtCA,IAAI,KAAK,MAAM,GAAG,QAAQ,GAAG,CAAA,KAAA,EAAQA,IAAI,CAAA,QAAA,EAAWA,IAAI,CAAE,CAAA,CAAA;;AAE5D;AACO,MAAMC,QAAQ,gBAAGC,gBAAU,CAChC,CAAAC,IAAA,EAAmEC,GAAG,KAAK;EAAA,IAA1E;IAAEC,EAAE,EAAEC,SAAS,GAAG,KAAK;IAAEN,IAAI;IAAEO,IAAI;IAAEC,SAAS;IAAEC,KAAK;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAP,IAAA,CAAA;EAC/D,oBACEQ,cAAA,CAACL,SAAS,EAAA;AACRF,IAAAA,GAAG,EAAEA,GAAI;IACTI,SAAS,EAAEI,EAAE,CAACC,eAAM,CAACC,IAAI,EAAEN,SAAS,CAAE;AACtCC,IAAAA,KAAK,EAAE;AACL,MAAA,GAAGM,yBAAc,CAAC,MAAM,EAAEf,IAAI,EAAED,SAAS,CAAC;MAC1C,IAAIQ,IAAI,KAAKS,SAAS,IAAI;AAAEC,QAAAA,QAAQ,EAAEV,IAAAA;AAAK,OAAC,CAAC;MAC7C,GAAGE,KAAAA;KACH;IAAA,GACEC,IAAAA;AAAI,GACT,CAAC,CAAA;AAEN,CACF,EAAC;AAEDT,QAAQ,CAACiB,WAAW,GAAG,UAAU;;;;"}
1
+ {"version":3,"file":"GridItem.cjs","sources":["../../../src/grid/GridItem.tsx"],"sourcesContent":["import { forwardRef, type ElementType, type HTMLAttributes } from 'react'\n\nimport cn from 'classnames'\n\nimport {\n responsiveVars,\n type PolymorphicComponent,\n type PolymorphicProps,\n type Responsive,\n} from '../utils'\nimport styles from './GridItem.module.css'\n\nexport type GridItemDataTestId = { root?: string }\n\ntype GridItemOwnProps = {\n /** Per-breakpoint, desktop-first (see breakpointWidths). Number of columns to span; `'full'` spans every column. When Grid `columns` shrinks, make `span` responsive too: a span wider than the current column count adds an empty implicit track, and its gap shortens every other cell. */\n span?: Responsive<number | 'full'>\n /** Places the item in a named `grid-template-areas` area. */\n area?: string\n dataTestId?: GridItemDataTestId\n}\n\ntype GridItemImplProps = HTMLAttributes<HTMLElement> &\n GridItemOwnProps & { as?: ElementType }\n\nexport type GridItemProps<E extends ElementType = never> = [E] extends [never]\n ? GridItemImplProps\n : PolymorphicProps<E, GridItemOwnProps>\n\nconst spanToCss = (span: number | 'full') =>\n span === 'full' ? '1 / -1' : `span ${span} / span ${span}`\n\n/** Grid child that can span columns or sit in a named area. */\nexport const GridItem = forwardRef<HTMLElement, GridItemImplProps>(\n (\n {\n as: Component = 'div',\n span,\n area,\n className,\n style,\n dataTestId,\n ...rest\n },\n ref,\n ) => {\n return (\n <Component\n ref={ref}\n className={cn(styles.root, className)}\n style={{\n ...responsiveVars('span', span, spanToCss),\n ...(area !== undefined && { gridArea: area }),\n ...style,\n }}\n data-testid={dataTestId?.root}\n {...rest}\n />\n )\n },\n) as PolymorphicComponent<'div', GridItemOwnProps>\n\nGridItem.displayName = 'GridItem'\n"],"names":["spanToCss","span","GridItem","forwardRef","_ref","ref","as","Component","area","className","style","dataTestId","rest","_jsx","cn","styles","root","responsiveVars","undefined","gridArea","displayName"],"mappings":";;;;;;;;;;AA6BA,MAAMA,SAAS,GAAIC,IAAqB,IACtCA,IAAI,KAAK,MAAM,GAAG,QAAQ,GAAG,CAAA,KAAA,EAAQA,IAAI,CAAA,QAAA,EAAWA,IAAI,CAAE,CAAA,CAAA;;AAE5D;AACO,MAAMC,QAAQ,gBAAGC,gBAAU,CAChC,CAAAC,IAAA,EAUEC,GAAG,KACA;EAAA,IAVH;IACEC,EAAE,EAAEC,SAAS,GAAG,KAAK;IACrBN,IAAI;IACJO,IAAI;IACJC,SAAS;IACTC,KAAK;IACLC,UAAU;IACV,GAAGC,IAAAA;AACL,GAAC,GAAAR,IAAA,CAAA;EAGD,oBACES,cAAA,CAACN,SAAS,EAAA;AACRF,IAAAA,GAAG,EAAEA,GAAI;IACTI,SAAS,EAAEK,EAAE,CAACC,eAAM,CAACC,IAAI,EAAEP,SAAS,CAAE;AACtCC,IAAAA,KAAK,EAAE;AACL,MAAA,GAAGO,yBAAc,CAAC,MAAM,EAAEhB,IAAI,EAAED,SAAS,CAAC;MAC1C,IAAIQ,IAAI,KAAKU,SAAS,IAAI;AAAEC,QAAAA,QAAQ,EAAEX,IAAAA;AAAK,OAAC,CAAC;MAC7C,GAAGE,KAAAA;KACH;IACF,aAAaC,EAAAA,UAAU,EAAEK,IAAK;IAAA,GAC1BJ,IAAAA;AAAI,GACT,CAAC,CAAA;AAEN,CACF,EAAkD;AAElDV,QAAQ,CAACkB,WAAW,GAAG,UAAU;;;;"}
@@ -2,30 +2,38 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
+ const react = require('react');
5
6
  const cn = require('classnames');
6
7
  const Header_module = require('./Header.module.css.cjs');
7
8
  const jsxRuntime = require('react/jsx-runtime');
8
9
 
9
- const Header = _ref => {
10
+ /** App top bar shell (64px, bottom border, page-gutter padding): `children` fill the left, `actions` sit right. Only the last child shrinks, so put Breadcrumbs or HeaderNav last. `sticky` needs no `overflow: hidden/auto` ancestor and sets `scroll-padding-top` on `html` to `--lido-app-ui-header-height`; your own `html` rule wins. */
11
+ const Header = /*#__PURE__*/react.forwardRef((_ref, ref) => {
10
12
  let {
11
13
  children,
12
14
  actions,
13
15
  sticky,
14
16
  className,
17
+ dataTestId,
15
18
  ...rest
16
19
  } = _ref;
17
20
  return /*#__PURE__*/jsxRuntime.jsxs("header", {
21
+ ref: ref,
18
22
  className: cn(Header_module.header, sticky && Header_module.sticky, className),
23
+ "data-testid": dataTestId?.root,
19
24
  ...rest,
20
25
  children: [/*#__PURE__*/jsxRuntime.jsx("div", {
21
26
  className: Header_module.content,
27
+ "data-testid": dataTestId?.content,
22
28
  children: children
23
29
  }), actions != null ? /*#__PURE__*/jsxRuntime.jsx("div", {
24
30
  className: Header_module.actions,
31
+ "data-testid": dataTestId?.actions,
25
32
  children: actions
26
33
  }) : null]
27
34
  });
28
- };
35
+ });
36
+ Header.displayName = 'Header';
29
37
 
30
38
  exports.Header = Header;
31
39
  //# sourceMappingURL=Header.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Header.cjs","sources":["../../../src/header/Header.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Header.module.css'\n\nexport type HeaderProps = ComponentPropsWithoutRef<'header'> & {\n /** Right control group. */\n actions?: ReactNode\n /** Sticks to the top of the viewport while scrolling. */\n sticky?: boolean\n}\n\nexport const Header = ({\n children,\n actions,\n sticky,\n className,\n ...rest\n}: HeaderProps) => (\n <header\n className={cn(styles.header, sticky && styles.sticky, className)}\n {...rest}\n >\n <div className={styles.content}>{children}</div>\n {actions != null ? <div className={styles.actions}>{actions}</div> : null}\n </header>\n)\n"],"names":["Header","_ref","children","actions","sticky","className","rest","_jsxs","cn","styles","header","_jsx","content"],"mappings":";;;;;;;;AAaO,MAAMA,MAAM,GAAGC,IAAA,IAAA;EAAA,IAAC;IACrBC,QAAQ;IACRC,OAAO;IACPC,MAAM;IACNC,SAAS;IACT,GAAGC,IAAAA;AACQ,GAAC,GAAAL,IAAA,CAAA;AAAA,EAAA,oBACZM,eAAA,CAAA,QAAA,EAAA;AACEF,IAAAA,SAAS,EAAEG,EAAE,CAACC,aAAM,CAACC,MAAM,EAAEN,MAAM,IAAIK,aAAM,CAACL,MAAM,EAAEC,SAAS,CAAE;AAAA,IAAA,GAC7DC,IAAI;AAAAJ,IAAAA,QAAA,gBAERS,cAAA,CAAA,KAAA,EAAA;MAAKN,SAAS,EAAEI,aAAM,CAACG,OAAQ;AAAAV,MAAAA,QAAA,EAAEA,QAAAA;AAAQ,KAAM,CAAC,EAC/CC,OAAO,IAAI,IAAI,gBAAGQ,cAAA,CAAA,KAAA,EAAA;MAAKN,SAAS,EAAEI,aAAM,CAACN,OAAQ;AAAAD,MAAAA,QAAA,EAAEC,OAAAA;KAAa,CAAC,GAAG,IAAI,CAAA;AAAA,GACnE,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"Header.cjs","sources":["../../../src/header/Header.tsx"],"sourcesContent":["import {\n forwardRef,\n type ComponentPropsWithoutRef,\n type ReactNode,\n} from 'react'\n\nimport cn from 'classnames'\n\nimport styles from './Header.module.css'\n\nexport type HeaderDataTestId = {\n root?: string\n content?: string\n actions?: string\n}\n\nexport type HeaderProps = ComponentPropsWithoutRef<'header'> & {\n /** Right control group. */\n actions?: ReactNode\n /** Sticks to the top of the viewport while scrolling. */\n sticky?: boolean\n dataTestId?: HeaderDataTestId\n}\n\n/** App top bar shell (64px, bottom border, page-gutter padding): `children` fill the left, `actions` sit right. Only the last child shrinks, so put Breadcrumbs or HeaderNav last. `sticky` needs no `overflow: hidden/auto` ancestor and sets `scroll-padding-top` on `html` to `--lido-app-ui-header-height`; your own `html` rule wins. */\nexport const Header = forwardRef<HTMLElement, HeaderProps>(\n ({ children, actions, sticky, className, dataTestId, ...rest }, ref) => (\n <header\n ref={ref}\n className={cn(styles.header, sticky && styles.sticky, className)}\n data-testid={dataTestId?.root}\n {...rest}\n >\n <div className={styles.content} data-testid={dataTestId?.content}>\n {children}\n </div>\n {actions != null ? (\n <div className={styles.actions} data-testid={dataTestId?.actions}>\n {actions}\n </div>\n ) : null}\n </header>\n ),\n)\n\nHeader.displayName = 'Header'\n"],"names":["Header","forwardRef","_ref","ref","children","actions","sticky","className","dataTestId","rest","_jsxs","cn","styles","header","root","_jsx","content","displayName"],"mappings":";;;;;;;;;AAwBA;AACO,MAAMA,MAAM,gBAAGC,gBAAU,CAC9B,CAAAC,IAAA,EAAgEC,GAAG,KAAA;EAAA,IAAlE;IAAEC,QAAQ;IAAEC,OAAO;IAAEC,MAAM;IAAEC,SAAS;IAAEC,UAAU;IAAE,GAAGC,IAAAA;AAAK,GAAC,GAAAP,IAAA,CAAA;AAAA,EAAA,oBAC5DQ,eAAA,CAAA,QAAA,EAAA;AACEP,IAAAA,GAAG,EAAEA,GAAI;AACTI,IAAAA,SAAS,EAAEI,EAAE,CAACC,aAAM,CAACC,MAAM,EAAEP,MAAM,IAAIM,aAAM,CAACN,MAAM,EAAEC,SAAS,CAAE;IACjE,aAAaC,EAAAA,UAAU,EAAEM,IAAK;AAAA,IAAA,GAC1BL,IAAI;AAAAL,IAAAA,QAAA,gBAERW,cAAA,CAAA,KAAA,EAAA;MAAKR,SAAS,EAAEK,aAAM,CAACI,OAAQ;MAAC,aAAaR,EAAAA,UAAU,EAAEQ,OAAQ;AAAAZ,MAAAA,QAAA,EAC9DA,QAAAA;AAAQ,KACN,CAAC,EACLC,OAAO,IAAI,IAAI,gBACdU,cAAA,CAAA,KAAA,EAAA;MAAKR,SAAS,EAAEK,aAAM,CAACP,OAAQ;MAAC,aAAaG,EAAAA,UAAU,EAAEH,OAAQ;AAAAD,MAAAA,QAAA,EAC9DC,OAAAA;KACE,CAAC,GACJ,IAAI,CAAA;AAAA,GACF,CAAC,CAAA;AAAA,CAEb,EAAC;AAEDL,MAAM,CAACiB,WAAW,GAAG,QAAQ;;;;"}