@graphprotocol/gds-react 0.1.1 → 0.2.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 (390) hide show
  1. package/dist/GDSProvider.d.ts +12 -10
  2. package/dist/GDSProvider.d.ts.map +1 -1
  3. package/dist/GDSProvider.js +10 -8
  4. package/dist/GDSProvider.js.map +1 -1
  5. package/dist/components/Address.js +2 -2
  6. package/dist/components/Address.meta.d.ts +1 -13
  7. package/dist/components/Address.meta.d.ts.map +1 -1
  8. package/dist/components/Avatar.d.ts.map +1 -1
  9. package/dist/components/Avatar.js +7 -11
  10. package/dist/components/Avatar.js.map +1 -1
  11. package/dist/components/Avatar.meta.d.ts +0 -2
  12. package/dist/components/Avatar.meta.d.ts.map +1 -1
  13. package/dist/components/AvatarGroup.meta.d.ts +8 -2
  14. package/dist/components/AvatarGroup.meta.d.ts.map +1 -1
  15. package/dist/components/Breadcrumbs.meta.d.ts +2 -3
  16. package/dist/components/Breadcrumbs.meta.d.ts.map +1 -1
  17. package/dist/components/Breadcrumbs.meta.js +3 -1
  18. package/dist/components/Breadcrumbs.meta.js.map +1 -1
  19. package/dist/components/Breadcrumbs.parts.d.ts.map +1 -1
  20. package/dist/components/Breadcrumbs.parts.js +15 -23
  21. package/dist/components/Breadcrumbs.parts.js.map +1 -1
  22. package/dist/components/Button.d.ts.map +1 -1
  23. package/dist/components/Button.js +17 -12
  24. package/dist/components/Button.js.map +1 -1
  25. package/dist/components/Button.meta.d.ts +1 -4
  26. package/dist/components/Button.meta.d.ts.map +1 -1
  27. package/dist/components/ButtonGroup.d.ts.map +1 -1
  28. package/dist/components/ButtonGroup.js +1 -5
  29. package/dist/components/ButtonGroup.js.map +1 -1
  30. package/dist/components/ButtonGroup.meta.d.ts +1 -5
  31. package/dist/components/ButtonGroup.meta.d.ts.map +1 -1
  32. package/dist/components/ButtonGroup.meta.js +8 -0
  33. package/dist/components/ButtonGroup.meta.js.map +1 -1
  34. package/dist/components/Card.js +1 -1
  35. package/dist/components/Card.js.map +1 -1
  36. package/dist/components/Card.meta.d.ts +1 -2
  37. package/dist/components/Card.meta.d.ts.map +1 -1
  38. package/dist/components/Card.meta.js +1 -0
  39. package/dist/components/Card.meta.js.map +1 -1
  40. package/dist/components/Checkbox.meta.d.ts +1 -6
  41. package/dist/components/Checkbox.meta.d.ts.map +1 -1
  42. package/dist/components/Checkbox.meta.js +1 -5
  43. package/dist/components/Checkbox.meta.js.map +1 -1
  44. package/dist/components/Chip.d.ts +6 -0
  45. package/dist/components/Chip.d.ts.map +1 -0
  46. package/dist/components/Chip.js +5 -0
  47. package/dist/components/Chip.js.map +1 -0
  48. package/dist/components/Chip.meta.d.ts +15 -0
  49. package/dist/components/Chip.meta.d.ts.map +1 -0
  50. package/dist/components/Chip.meta.js +22 -0
  51. package/dist/components/Chip.meta.js.map +1 -0
  52. package/dist/components/Chip.parts.d.ts +52 -0
  53. package/dist/components/Chip.parts.d.ts.map +1 -0
  54. package/dist/components/Chip.parts.js +114 -0
  55. package/dist/components/Chip.parts.js.map +1 -0
  56. package/dist/components/Cluster.meta.d.ts +8 -2
  57. package/dist/components/Cluster.meta.d.ts.map +1 -1
  58. package/dist/components/CodeBlock.d.ts +1 -1
  59. package/dist/components/CodeBlock.meta.d.ts +2 -4
  60. package/dist/components/CodeBlock.meta.d.ts.map +1 -1
  61. package/dist/components/CodeBlock.parts.d.ts +6 -7
  62. package/dist/components/CodeBlock.parts.d.ts.map +1 -1
  63. package/dist/components/CodeBlock.parts.js +28 -10
  64. package/dist/components/CodeBlock.parts.js.map +1 -1
  65. package/dist/components/CodeInline.js +3 -3
  66. package/dist/components/CodeInline.meta.d.ts +1 -1
  67. package/dist/components/CodeInline.meta.d.ts.map +1 -1
  68. package/dist/components/CopyButton.d.ts.map +1 -1
  69. package/dist/components/CopyButton.js +2 -4
  70. package/dist/components/CopyButton.js.map +1 -1
  71. package/dist/components/CopyButton.meta.d.ts +1 -12
  72. package/dist/components/CopyButton.meta.d.ts.map +1 -1
  73. package/dist/components/CopyButton.meta.js +1 -6
  74. package/dist/components/CopyButton.meta.js.map +1 -1
  75. package/dist/components/CurrencyInput.meta.d.ts +1 -6
  76. package/dist/components/CurrencyInput.meta.d.ts.map +1 -1
  77. package/dist/components/CurrencyInput.meta.js +1 -5
  78. package/dist/components/CurrencyInput.meta.js.map +1 -1
  79. package/dist/components/DescriptionList.meta.d.ts +2 -5
  80. package/dist/components/DescriptionList.meta.d.ts.map +1 -1
  81. package/dist/components/DescriptionList.parts.d.ts +3 -0
  82. package/dist/components/DescriptionList.parts.d.ts.map +1 -1
  83. package/dist/components/DescriptionList.parts.js +2 -1
  84. package/dist/components/DescriptionList.parts.js.map +1 -1
  85. package/dist/components/Divider.meta.d.ts +1 -3
  86. package/dist/components/Divider.meta.d.ts.map +1 -1
  87. package/dist/components/Icon.js +4 -4
  88. package/dist/components/Icon.js.map +1 -1
  89. package/dist/components/Icon.meta.d.ts +0 -2
  90. package/dist/components/Icon.meta.d.ts.map +1 -1
  91. package/dist/components/Icon.meta.js +1 -0
  92. package/dist/components/Icon.meta.js.map +1 -1
  93. package/dist/components/Input.d.ts +5 -4
  94. package/dist/components/Input.d.ts.map +1 -1
  95. package/dist/components/Input.js +1 -0
  96. package/dist/components/Input.js.map +1 -1
  97. package/dist/components/Input.meta.d.ts +1 -6
  98. package/dist/components/Input.meta.d.ts.map +1 -1
  99. package/dist/components/Input.meta.js +1 -5
  100. package/dist/components/Input.meta.js.map +1 -1
  101. package/dist/components/Keyboard.js +1 -1
  102. package/dist/components/Keyboard.meta.d.ts +0 -1
  103. package/dist/components/Keyboard.meta.d.ts.map +1 -1
  104. package/dist/components/Label.meta.d.ts +1 -3
  105. package/dist/components/Label.meta.d.ts.map +1 -1
  106. package/dist/components/Link.d.ts +1 -1
  107. package/dist/components/Link.d.ts.map +1 -1
  108. package/dist/components/Link.js +1 -2
  109. package/dist/components/Link.js.map +1 -1
  110. package/dist/components/Link.meta.d.ts +1 -2
  111. package/dist/components/Link.meta.d.ts.map +1 -1
  112. package/dist/components/Link.meta.js +1 -0
  113. package/dist/components/Link.meta.js.map +1 -1
  114. package/dist/components/Menu.meta.d.ts +31 -2
  115. package/dist/components/Menu.meta.d.ts.map +1 -1
  116. package/dist/components/Menu.meta.js +39 -1
  117. package/dist/components/Menu.meta.js.map +1 -1
  118. package/dist/components/Menu.parts.d.ts +23 -32
  119. package/dist/components/Menu.parts.d.ts.map +1 -1
  120. package/dist/components/Menu.parts.js +284 -303
  121. package/dist/components/Menu.parts.js.map +1 -1
  122. package/dist/components/Modal.d.ts +1 -1
  123. package/dist/components/Modal.meta.d.ts +1 -3
  124. package/dist/components/Modal.meta.d.ts.map +1 -1
  125. package/dist/components/Modal.meta.js +1 -1
  126. package/dist/components/Modal.meta.js.map +1 -1
  127. package/dist/components/Modal.parts.d.ts +14 -15
  128. package/dist/components/Modal.parts.d.ts.map +1 -1
  129. package/dist/components/Modal.parts.js +36 -32
  130. package/dist/components/Modal.parts.js.map +1 -1
  131. package/dist/components/OTCInput.js +1 -1
  132. package/dist/components/OTCInput.meta.d.ts +1 -6
  133. package/dist/components/OTCInput.meta.d.ts.map +1 -1
  134. package/dist/components/OTCInput.meta.js +1 -5
  135. package/dist/components/OTCInput.meta.js.map +1 -1
  136. package/dist/components/Radio.meta.d.ts +1 -6
  137. package/dist/components/Radio.meta.d.ts.map +1 -1
  138. package/dist/components/Radio.meta.js +1 -5
  139. package/dist/components/Radio.meta.js.map +1 -1
  140. package/dist/components/Search.meta.d.ts +1 -3
  141. package/dist/components/Search.meta.d.ts.map +1 -1
  142. package/dist/components/SegmentedControl.meta.d.ts +2 -3
  143. package/dist/components/SegmentedControl.meta.d.ts.map +1 -1
  144. package/dist/components/SegmentedControl.meta.js +3 -1
  145. package/dist/components/SegmentedControl.meta.js.map +1 -1
  146. package/dist/components/SegmentedControl.parts.d.ts.map +1 -1
  147. package/dist/components/SegmentedControl.parts.js +15 -31
  148. package/dist/components/SegmentedControl.parts.js.map +1 -1
  149. package/dist/components/Status.meta.d.ts +0 -2
  150. package/dist/components/Status.meta.d.ts.map +1 -1
  151. package/dist/components/Stepper.meta.d.ts +1 -2
  152. package/dist/components/Stepper.meta.d.ts.map +1 -1
  153. package/dist/components/Stepper.meta.js +1 -0
  154. package/dist/components/Stepper.meta.js.map +1 -1
  155. package/dist/components/Stepper.parts.d.ts.map +1 -1
  156. package/dist/components/Stepper.parts.js +1 -1
  157. package/dist/components/Stepper.parts.js.map +1 -1
  158. package/dist/components/Switch.meta.d.ts +1 -6
  159. package/dist/components/Switch.meta.d.ts.map +1 -1
  160. package/dist/components/Switch.meta.js +1 -5
  161. package/dist/components/Switch.meta.js.map +1 -1
  162. package/dist/components/TabSet.meta.d.ts +2 -5
  163. package/dist/components/TabSet.meta.d.ts.map +1 -1
  164. package/dist/components/TabSet.meta.js +3 -1
  165. package/dist/components/TabSet.meta.js.map +1 -1
  166. package/dist/components/TabSet.parts.js +1 -1
  167. package/dist/components/Tag.meta.d.ts +0 -2
  168. package/dist/components/Tag.meta.d.ts.map +1 -1
  169. package/dist/components/TextArea.meta.d.ts +1 -6
  170. package/dist/components/TextArea.meta.d.ts.map +1 -1
  171. package/dist/components/TextArea.meta.js +1 -5
  172. package/dist/components/TextArea.meta.js.map +1 -1
  173. package/dist/components/ToggleButton.d.ts +0 -2
  174. package/dist/components/ToggleButton.d.ts.map +1 -1
  175. package/dist/components/ToggleButton.js +2 -2
  176. package/dist/components/ToggleButton.js.map +1 -1
  177. package/dist/components/ToggleButton.meta.d.ts +1 -12
  178. package/dist/components/ToggleButton.meta.d.ts.map +1 -1
  179. package/dist/components/ToggleButton.meta.js +1 -6
  180. package/dist/components/ToggleButton.meta.js.map +1 -1
  181. package/dist/components/Tooltip.d.ts +2 -2
  182. package/dist/components/Tooltip.d.ts.map +1 -1
  183. package/dist/components/Tooltip.js +2 -2
  184. package/dist/components/Tooltip.js.map +1 -1
  185. package/dist/components/Tooltip.meta.d.ts +12 -7
  186. package/dist/components/Tooltip.meta.d.ts.map +1 -1
  187. package/dist/components/Tooltip.meta.js +13 -2
  188. package/dist/components/Tooltip.meta.js.map +1 -1
  189. package/dist/components/Tooltip.parts.d.ts +20 -20
  190. package/dist/components/Tooltip.parts.d.ts.map +1 -1
  191. package/dist/components/Tooltip.parts.js +129 -88
  192. package/dist/components/Tooltip.parts.js.map +1 -1
  193. package/dist/components/base/Addon.meta.d.ts +1 -1
  194. package/dist/components/base/Addon.meta.d.ts.map +1 -1
  195. package/dist/components/base/Addon.meta.js +3 -1
  196. package/dist/components/base/Addon.meta.js.map +1 -1
  197. package/dist/components/base/ButtonOrLink.d.ts +1 -1
  198. package/dist/components/base/ButtonOrLink.parts.d.ts +14 -10
  199. package/dist/components/base/ButtonOrLink.parts.d.ts.map +1 -1
  200. package/dist/components/base/ButtonOrLink.parts.js +47 -47
  201. package/dist/components/base/ButtonOrLink.parts.js.map +1 -1
  202. package/dist/components/base/Checkable.meta.d.ts +1 -2
  203. package/dist/components/base/Checkable.meta.d.ts.map +1 -1
  204. package/dist/components/base/Checkable.parts.d.ts +6 -6
  205. package/dist/components/base/Checkable.parts.d.ts.map +1 -1
  206. package/dist/components/base/Checkable.parts.js +2 -2
  207. package/dist/components/base/Checkable.parts.js.map +1 -1
  208. package/dist/components/base/Field.meta.d.ts +1 -2
  209. package/dist/components/base/Field.meta.d.ts.map +1 -1
  210. package/dist/components/base/Field.parts.d.ts +5 -4
  211. package/dist/components/base/Field.parts.d.ts.map +1 -1
  212. package/dist/components/base/Field.parts.js +1 -1
  213. package/dist/components/base/Field.parts.js.map +1 -1
  214. package/dist/components/base/MaybeButtonOrLink.d.ts +1 -1
  215. package/dist/components/base/MaybeButtonOrLink.d.ts.map +1 -1
  216. package/dist/components/base/Portal.d.ts +1 -1
  217. package/dist/components/base/Portal.d.ts.map +1 -1
  218. package/dist/components/base/Portal.js +3 -6
  219. package/dist/components/base/Portal.js.map +1 -1
  220. package/dist/components/base/Render.d.ts +21 -6
  221. package/dist/components/base/Render.d.ts.map +1 -1
  222. package/dist/components/base/Render.js +3 -2
  223. package/dist/components/base/Render.js.map +1 -1
  224. package/dist/components/base/Transition.js +2 -2
  225. package/dist/components/base/Transition.meta.d.ts +1 -1
  226. package/dist/components/base/Transition.meta.d.ts.map +1 -1
  227. package/dist/components/base/Transition.meta.js +1 -0
  228. package/dist/components/base/Transition.meta.js.map +1 -1
  229. package/dist/components/base/index.d.ts +1 -2
  230. package/dist/components/base/index.d.ts.map +1 -1
  231. package/dist/components/base/index.js +1 -2
  232. package/dist/components/base/index.js.map +1 -1
  233. package/dist/components/index.d.ts +3 -1
  234. package/dist/components/index.d.ts.map +1 -1
  235. package/dist/components/index.js +3 -1
  236. package/dist/components/index.js.map +1 -1
  237. package/dist/hooks/index.d.ts +1 -0
  238. package/dist/hooks/index.d.ts.map +1 -1
  239. package/dist/hooks/index.js +1 -0
  240. package/dist/hooks/index.js.map +1 -1
  241. package/dist/hooks/useCSSProp.d.ts.map +1 -1
  242. package/dist/hooks/useCSSProp.js +6 -6
  243. package/dist/hooks/useCSSProp.js.map +1 -1
  244. package/dist/hooks/useCSSProps.d.ts +11 -13
  245. package/dist/hooks/useCSSProps.d.ts.map +1 -1
  246. package/dist/hooks/useCSSProps.js +11 -19
  247. package/dist/hooks/useCSSProps.js.map +1 -1
  248. package/dist/hooks/useCSSPropsPolyfill.d.ts +1 -1
  249. package/dist/hooks/useCSSPropsPolyfill.d.ts.map +1 -1
  250. package/dist/hooks/useCSSPropsPolyfill.js +12 -20
  251. package/dist/hooks/useCSSPropsPolyfill.js.map +1 -1
  252. package/dist/hooks/useCSSState.d.ts.map +1 -1
  253. package/dist/hooks/useCSSState.js +7 -3
  254. package/dist/hooks/useCSSState.js.map +1 -1
  255. package/dist/hooks/useEffectWithRefDeps.d.ts +2 -2
  256. package/dist/hooks/useEffectWithRefDeps.d.ts.map +1 -1
  257. package/dist/hooks/useEffectWithRefDeps.js +1 -1
  258. package/dist/hooks/useEffectWithRefDeps.js.map +1 -1
  259. package/dist/hooks/useFirstRender.d.ts +14 -0
  260. package/dist/hooks/useFirstRender.d.ts.map +1 -0
  261. package/dist/hooks/useFirstRender.js +20 -0
  262. package/dist/hooks/useFirstRender.js.map +1 -0
  263. package/dist/hooks/useGDS.d.ts +1 -1
  264. package/dist/hooks/usePrevious.d.ts +6 -4
  265. package/dist/hooks/usePrevious.d.ts.map +1 -1
  266. package/dist/hooks/usePrevious.js +6 -4
  267. package/dist/hooks/usePrevious.js.map +1 -1
  268. package/dist/hooks/useRefWithInit.d.ts +2 -2
  269. package/dist/hooks/useRefWithInit.d.ts.map +1 -1
  270. package/dist/hooks/useRefWithInit.js.map +1 -1
  271. package/dist/hooks/useStyleObserver.d.ts +2 -2
  272. package/dist/hooks/useStyleObserver.d.ts.map +1 -1
  273. package/dist/hooks/useStyleObserver.js.map +1 -1
  274. package/dist/icons/CalendarDynamicIcon.d.ts +8 -5
  275. package/dist/icons/CalendarDynamicIcon.d.ts.map +1 -1
  276. package/dist/icons/CalendarDynamicIcon.js +5 -2
  277. package/dist/icons/CalendarDynamicIcon.js.map +1 -1
  278. package/dist/icons/CopyInteractiveIcon.d.ts +5 -4
  279. package/dist/icons/CopyInteractiveIcon.d.ts.map +1 -1
  280. package/dist/icons/CopyInteractiveIcon.js +2 -2
  281. package/dist/icons/CopyInteractiveIcon.js.map +1 -1
  282. package/dist/icons/SidebarLeftInteractiveIcon.d.ts +4 -3
  283. package/dist/icons/SidebarLeftInteractiveIcon.d.ts.map +1 -1
  284. package/dist/icons/SidebarLeftInteractiveIcon.js +2 -2
  285. package/dist/icons/SidebarLeftInteractiveIcon.js.map +1 -1
  286. package/dist/icons/SidebarRightInteractiveIcon.d.ts +4 -3
  287. package/dist/icons/SidebarRightInteractiveIcon.d.ts.map +1 -1
  288. package/dist/icons/SidebarRightInteractiveIcon.js +2 -2
  289. package/dist/icons/SidebarRightInteractiveIcon.js.map +1 -1
  290. package/dist/tailwind-plugin.d.ts.map +1 -1
  291. package/dist/tailwind-plugin.js +8 -5
  292. package/dist/tailwind-plugin.js.map +1 -1
  293. package/dist/utils/cn.d.ts +3 -1
  294. package/dist/utils/cn.d.ts.map +1 -1
  295. package/dist/utils/cn.js +3 -1
  296. package/dist/utils/cn.js.map +1 -1
  297. package/dist/utils/getCSSPropsAttributes.d.ts +10 -3
  298. package/dist/utils/getCSSPropsAttributes.d.ts.map +1 -1
  299. package/dist/utils/getCSSPropsAttributes.js +4 -5
  300. package/dist/utils/getCSSPropsAttributes.js.map +1 -1
  301. package/dist/utils/splitProps.d.ts +1 -4
  302. package/dist/utils/splitProps.d.ts.map +1 -1
  303. package/dist/utils/splitProps.js +2 -7
  304. package/dist/utils/splitProps.js.map +1 -1
  305. package/dist/utils/trimReactNode.d.ts +10 -8
  306. package/dist/utils/trimReactNode.d.ts.map +1 -1
  307. package/dist/utils/trimReactNode.js +10 -8
  308. package/dist/utils/trimReactNode.js.map +1 -1
  309. package/package.json +17 -17
  310. package/src/GDSProvider.tsx +11 -9
  311. package/src/components/Address.tsx +2 -2
  312. package/src/components/Avatar.tsx +10 -11
  313. package/src/components/Breadcrumbs.meta.ts +3 -1
  314. package/src/components/Breadcrumbs.parts.tsx +18 -30
  315. package/src/components/Button.tsx +27 -13
  316. package/src/components/ButtonGroup.meta.ts +8 -0
  317. package/src/components/ButtonGroup.tsx +1 -5
  318. package/src/components/Card.meta.ts +1 -0
  319. package/src/components/Card.tsx +1 -1
  320. package/src/components/Checkbox.meta.ts +1 -5
  321. package/src/components/Chip.meta.ts +23 -0
  322. package/src/components/Chip.parts.tsx +319 -0
  323. package/src/components/Chip.tsx +7 -0
  324. package/src/components/CodeBlock.parts.tsx +75 -50
  325. package/src/components/CodeInline.tsx +3 -3
  326. package/src/components/CopyButton.meta.ts +1 -6
  327. package/src/components/CopyButton.tsx +3 -4
  328. package/src/components/CurrencyInput.meta.ts +1 -5
  329. package/src/components/DescriptionList.parts.tsx +2 -1
  330. package/src/components/Icon.meta.ts +1 -0
  331. package/src/components/Icon.tsx +4 -4
  332. package/src/components/Input.meta.ts +1 -5
  333. package/src/components/Input.tsx +5 -6
  334. package/src/components/Keyboard.tsx +1 -1
  335. package/src/components/Link.meta.ts +1 -0
  336. package/src/components/Link.tsx +2 -3
  337. package/src/components/Menu.meta.ts +39 -1
  338. package/src/components/Menu.parts.tsx +553 -549
  339. package/src/components/Modal.meta.ts +1 -1
  340. package/src/components/Modal.parts.tsx +67 -68
  341. package/src/components/OTCInput.meta.ts +1 -5
  342. package/src/components/OTCInput.tsx +1 -1
  343. package/src/components/Radio.meta.ts +1 -5
  344. package/src/components/SegmentedControl.meta.ts +3 -1
  345. package/src/components/SegmentedControl.parts.tsx +40 -44
  346. package/src/components/Stepper.meta.ts +1 -0
  347. package/src/components/Stepper.parts.tsx +3 -1
  348. package/src/components/Switch.meta.ts +1 -5
  349. package/src/components/TabSet.meta.ts +3 -1
  350. package/src/components/TabSet.parts.tsx +1 -1
  351. package/src/components/TextArea.meta.ts +1 -5
  352. package/src/components/ToggleButton.meta.ts +1 -6
  353. package/src/components/ToggleButton.tsx +1 -3
  354. package/src/components/Tooltip.meta.ts +13 -2
  355. package/src/components/Tooltip.parts.tsx +215 -159
  356. package/src/components/Tooltip.tsx +2 -2
  357. package/src/components/base/Addon.meta.ts +3 -1
  358. package/src/components/base/ButtonOrLink.parts.tsx +91 -73
  359. package/src/components/base/Checkable.parts.tsx +6 -13
  360. package/src/components/base/Field.parts.tsx +5 -5
  361. package/src/components/base/Portal.tsx +5 -7
  362. package/src/components/base/Render.tsx +37 -15
  363. package/src/components/base/Transition.meta.ts +1 -0
  364. package/src/components/base/Transition.tsx +2 -2
  365. package/src/components/base/index.ts +8 -2
  366. package/src/components/index.ts +3 -2
  367. package/src/hooks/index.ts +1 -0
  368. package/src/hooks/useCSSProp.ts +6 -8
  369. package/src/hooks/useCSSProps.ts +13 -22
  370. package/src/hooks/useCSSPropsPolyfill.ts +15 -23
  371. package/src/hooks/useCSSState.ts +11 -6
  372. package/src/hooks/useEffectWithRefDeps.ts +2 -2
  373. package/src/hooks/useFirstRender.ts +36 -0
  374. package/src/hooks/usePrevious.ts +6 -4
  375. package/src/hooks/useRefWithInit.ts +2 -2
  376. package/src/hooks/useStyleObserver.ts +5 -1
  377. package/src/icons/CalendarDynamicIcon.tsx +16 -6
  378. package/src/icons/CopyInteractiveIcon.tsx +10 -5
  379. package/src/icons/SidebarLeftInteractiveIcon.tsx +9 -5
  380. package/src/icons/SidebarRightInteractiveIcon.tsx +9 -5
  381. package/src/tailwind-plugin.ts +8 -5
  382. package/src/utils/cn.ts +3 -1
  383. package/src/utils/getCSSPropsAttributes.ts +13 -8
  384. package/src/utils/splitProps.ts +9 -9
  385. package/src/utils/trimReactNode.tsx +10 -8
  386. package/dist/components/base/ButtonOrLink.meta.d.ts +0 -2
  387. package/dist/components/base/ButtonOrLink.meta.d.ts.map +0 -1
  388. package/dist/components/base/ButtonOrLink.meta.js +0 -6
  389. package/dist/components/base/ButtonOrLink.meta.js.map +0 -1
  390. package/src/components/base/ButtonOrLink.meta.ts +0 -6
@@ -1,4 +1,4 @@
1
- import { useLayoutEffect, useRef, type Ref, type RefCallback } from 'react'
1
+ import type { Ref, RefCallback } from 'react'
2
2
 
3
3
  import {
4
4
  getCSSPropRawValue,
@@ -9,7 +9,7 @@ import {
9
9
  } from '@graphprotocol/gds-css'
10
10
 
11
11
  import { useCSSProps, type PassedValues, type PropValues } from './useCSSProps.ts'
12
- import { useForceRerender } from './useForceRerender.ts'
12
+ import { useFirstRender } from './useFirstRender.ts'
13
13
 
14
14
  type ExtractPolyfillValues<P extends CSSPropsConfig> = {
15
15
  [K in keyof P as P[K]['type'] extends 'values' ? K : never]: CSSPropType<P[K]> | undefined
@@ -68,19 +68,21 @@ export function useCSSPropsPolyfill<
68
68
  const allPassedValues = (() => {
69
69
  if (!returnPropValues) return passedValues
70
70
  if (returnPropValues === true) return passedValues
71
- const merged = { ...passedValues }
72
- for (const [key, value] of Object.entries(returnPropValues)) {
73
- if (key in passedValues && passedValues[key as keyof typeof passedValues] !== value) {
71
+ const passed = passedValues as Record<string, unknown>
72
+ const merged = { ...passed }
73
+ for (const key of Object.keys(returnPropValues)) {
74
+ const value = returnPropValues[key]
75
+ if (key in passedValues && passed[key] !== value) {
74
76
  throw new Error(
75
- `[useCSSPropsPolyfill] Conflicting values for prop \`${key}\`: ${passedValues[key as keyof typeof passedValues]} vs ${value}`,
77
+ `[useCSSPropsPolyfill] Conflicting values for prop \`${key}\`: ${String(passed[key])} vs ${value}`,
76
78
  )
77
79
  }
78
- merged[key as keyof typeof merged] = value as (typeof merged)[keyof typeof merged]
80
+ merged[key] = value
79
81
  }
80
- return merged
82
+ return merged as typeof passedValues
81
83
  })()
82
84
 
83
- const [callbackRef, propValues, props] = useCSSProps(component, allPassedValues, {
85
+ const [callbackRef, propValues, cssProps] = useCSSProps(component, allPassedValues, {
84
86
  ref,
85
87
  disabled: !polyfillEnabled && !returnPropValues,
86
88
  })
@@ -92,30 +94,20 @@ export function useCSSPropsPolyfill<
92
94
  * to immediately rerender in browsers that support style queries); unfortunately, that would
93
95
  * cause a flash of missing styles in browsers that need the polyfill.
94
96
  */
95
- const firstRender = useRef(true)
97
+ const firstRender = useFirstRender({ immediatelyRerender: !polyfillEnabled })
96
98
  const polyfillAttributes =
97
- polyfillEnabled || firstRender.current
99
+ polyfillEnabled || firstRender
98
100
  ? Object.fromEntries(
99
- props
101
+ cssProps
100
102
  .filter((prop) => prop.name in passedValues)
101
103
  .map((prop) => {
102
104
  const value = propValues[prop.name as keyof typeof propValues]
103
- const rawValue = getCSSPropRawValue(prop.cssProp, value)
105
+ const rawValue = getCSSPropRawValue(prop, value)
104
106
  return [prop.polyfillAttribute, rawValue]
105
107
  }),
106
108
  )
107
109
  : {}
108
110
 
109
- // If the polyfill is not needed, rerender to remove the polyfill attributes
110
- const [rerender] = useForceRerender()
111
- useLayoutEffect(() => {
112
- firstRender.current = false
113
- if (!polyfillEnabled) {
114
- rerender()
115
- }
116
- // oxlint-disable-next-line exhaustive-deps
117
- }, [])
118
-
119
111
  if (!returnPropValues) {
120
112
  return [callbackRef, polyfillAttributes] as const
121
113
  }
@@ -56,15 +56,17 @@ export function useCSSState<
56
56
 
57
57
  const variables = useRefWithInit(() =>
58
58
  Object.keys(variableInitialValues).map((variableName) => {
59
- const defaultValue =
60
- variableName in cssStateVariables
61
- ? cssStateVariables[variableName as CSSStateVariableName].defaultValue
62
- : undefined
59
+ const isArbitrary = !(variableName in cssStateVariables)
60
+ const defaultValue = !isArbitrary
61
+ ? cssStateVariables[variableName as CSSStateVariableName].defaultValue
62
+ : undefined
63
63
  return {
64
64
  name: variableName,
65
65
  defaultValue,
66
66
  initialValue: variableInitialValues[variableName as keyof T] ?? defaultValue,
67
- observedProperty: `--gds-observed-${variableName}`,
67
+ observedProperty: isArbitrary
68
+ ? `--gds-state-${variableName}`
69
+ : `--gds-observed-${variableName}`,
68
70
  exposedProperty: `--gds-exposed-${variableName}`,
69
71
  exposedAttribute: `data-gds-exposed-${variableName}`,
70
72
  polyfillAttribute: `data-gds-state-polyfill-${variableName}`,
@@ -105,7 +107,10 @@ export function useCSSState<
105
107
  for (const record of records) {
106
108
  if (propertyValues.get(record.property) !== record.value) {
107
109
  propertyValues.set(record.property, record.value)
108
- if (record.property.startsWith('--gds-observed-')) {
110
+ if (
111
+ record.property.startsWith('--gds-state-') ||
112
+ record.property.startsWith('--gds-observed-')
113
+ ) {
109
114
  statePropertiesChanged = true
110
115
  }
111
116
  }
@@ -20,7 +20,7 @@ export function useEffectWithRefDeps<T, RefDeps extends readonly Ref<T>[]>(
20
20
  effect: EffectCallback,
21
21
  regularDeps: unknown[],
22
22
  refDeps: [...RefDeps],
23
- options: { deepCompare?: boolean; hook?: EffectHook } = {},
23
+ options: { deepCompare?: boolean | undefined; hook?: EffectHook | undefined } = {},
24
24
  ) {
25
25
  const { deepCompare = false, hook = useEffect } = options
26
26
 
@@ -53,7 +53,7 @@ export function useEffectWithRefDeps<T, RefDeps extends readonly Ref<T>[]>(
53
53
 
54
54
  const runEffectNextTick = useCallback(() => {
55
55
  const token = ++runEffectToken.current
56
- queueMicrotask(() => {
56
+ window.queueMicrotask(() => {
57
57
  if (runEffectToken.current === token) {
58
58
  runEffect()
59
59
  }
@@ -0,0 +1,36 @@
1
+ import { useEffect, useRef } from 'react'
2
+
3
+ import { useForceRerender } from './useForceRerender.ts'
4
+
5
+ interface UseFirstRenderOptions {
6
+ /** Callback to run on first render. */
7
+ callback?: () => void
8
+ /**
9
+ * If true, immediately triggers a re-render after the first render.
10
+ *
11
+ * @default false
12
+ */
13
+ immediatelyRerender?: boolean | undefined
14
+ }
15
+
16
+ export function useFirstRender(callback?: () => void): boolean
17
+ export function useFirstRender(options: UseFirstRenderOptions): boolean
18
+ export function useFirstRender(callbackOrOptions?: (() => void) | UseFirstRenderOptions) {
19
+ const options = typeof callbackOrOptions === 'function' ? undefined : callbackOrOptions
20
+ const callback = typeof callbackOrOptions === 'function' ? callbackOrOptions : options?.callback
21
+
22
+ const firstRender = useRef(true)
23
+ const [rerender] = useForceRerender()
24
+
25
+ useEffect(() => {
26
+ if (!firstRender.current) return
27
+ firstRender.current = false
28
+ callback?.()
29
+ if (options?.immediatelyRerender) {
30
+ rerender()
31
+ }
32
+ // oxlint-disable-next-line react-hooks/exhaustive-deps
33
+ }, [])
34
+
35
+ return firstRender.current
36
+ }
@@ -12,10 +12,12 @@ const NOT_SET = Symbol('NOT_SET')
12
12
  *
13
13
  * @example
14
14
  *
15
- * const previous = usePrevious(someValue)
16
- * if (previous.hasChanged) {
17
- * // Value changed from `previous.value` to `someValue`
18
- * }
15
+ * ```ts
16
+ * const previous = usePrevious(someValue)
17
+ * if (previous.hasChanged) {
18
+ * // Value changed from `previous.value` to `someValue`
19
+ * }
20
+ * ```
19
21
  */
20
22
  export function usePrevious<T>(value: T) {
21
23
  const previousRenderValueRef = useRef<T | typeof NOT_SET>(NOT_SET)
@@ -1,4 +1,4 @@
1
- import { useRef, type MutableRefObject } from 'react'
1
+ import { useRef, type RefObject } from 'react'
2
2
 
3
3
  /**
4
4
  * Works like `useRef` but accepts an initializer function that runs once on the first render, like
@@ -11,5 +11,5 @@ export function useRefWithInit<T>(initFn: () => T) {
11
11
  ref.current = initFn()
12
12
  }
13
13
 
14
- return ref as MutableRefObject<T>
14
+ return ref as RefObject<T>
15
15
  }
@@ -17,7 +17,11 @@ export function useStyleObserver<T extends string>(
17
17
  properties: T[],
18
18
  onChange: (records: Record<T>[]) => void,
19
19
  deps: unknown[],
20
- options: { ref?: Ref<HTMLElement> | undefined; immediate?: boolean; disabled?: boolean } = {},
20
+ options: {
21
+ ref?: Ref<HTMLElement> | undefined
22
+ immediate?: boolean | undefined
23
+ disabled?: boolean | undefined
24
+ } = {},
21
25
  ) {
22
26
  const { ref: passedRef, immediate = false, disabled = false } = options
23
27
  const elementRef = useRef<HTMLElement>(null)
@@ -2,17 +2,21 @@ import { useId } from 'react'
2
2
 
3
3
  import { Icon, type IconProps } from '../components/Icon.tsx'
4
4
 
5
- export interface CalendarDynamicIconProps extends IconProps {
5
+ export interface CalendarDynamicIconProps extends Omit<IconProps, 'alt'> {
6
+ /** Defaults to a formatted version of `date`. */
7
+ alt?: string
6
8
  /**
7
- * Day of the month.
9
+ * Day of the month, or a full date. If the latter, the icon will only display the day part, but
10
+ * the default `alt` will be the full formatted date.
8
11
  *
9
- * @default new Date().getDate()
12
+ * @default new Date()
10
13
  */
11
- date?: number
14
+ date?: number | Date
12
15
  }
13
16
 
14
17
  export function CalendarDynamicIcon({
15
- date = new Date().getDate(),
18
+ alt,
19
+ date = new Date(),
16
20
  ...props
17
21
  }: CalendarDynamicIconProps) {
18
22
  const uniqueId = useId()
@@ -37,13 +41,19 @@ export function CalendarDynamicIcon({
37
41
  fontSize="7px"
38
42
  fontWeight="bold"
39
43
  >
40
- {date}
44
+ {typeof date === 'number' ? date : date.getDate()}
41
45
  </text>
42
46
  </mask>
43
47
  </defs>
44
48
  <use href={`#${uniqueId}-calendar-path`} mask={`url(#${uniqueId}-text-mask)`} />
45
49
  </svg>
46
50
  }
51
+ alt={
52
+ alt ??
53
+ (typeof date === 'number'
54
+ ? `Day ${date} of the month`
55
+ : date.toLocaleDateString(undefined, { dateStyle: 'long' }))
56
+ }
47
57
  data-name="CalendarDynamic"
48
58
  {...props}
49
59
  />
@@ -1,14 +1,19 @@
1
1
  import { useId } from 'react'
2
- import type { SetOptional } from 'type-fest'
3
2
 
4
3
  import { Icon, type IconProps } from '../components/Icon.tsx'
5
4
 
6
- export interface CopyInteractiveIconProps extends SetOptional<IconProps, 'alt'> {
5
+ export interface CopyInteractiveIconProps extends Omit<IconProps, 'alt'> {
6
+ /** @default 'Copy' */
7
+ alt?: IconProps['alt']
7
8
  /** @default false */
8
- copied?: boolean
9
+ copied?: boolean | undefined
9
10
  }
10
11
 
11
- export function CopyInteractiveIcon({ copied = false, ...props }: CopyInteractiveIconProps) {
12
+ export function CopyInteractiveIcon({
13
+ alt = 'Copy',
14
+ copied = false,
15
+ ...props
16
+ }: CopyInteractiveIconProps) {
12
17
  const uniqueId = useId()
13
18
 
14
19
  return (
@@ -85,7 +90,7 @@ export function CopyInteractiveIcon({ copied = false, ...props }: CopyInteractiv
85
90
  </g>
86
91
  </svg>
87
92
  }
88
- alt="Copy"
93
+ alt={alt}
89
94
  data-name="CopyAnimated"
90
95
  {...props}
91
96
  />
@@ -1,10 +1,14 @@
1
- import type { SetOptional } from 'type-fest'
2
-
3
1
  import { Icon, type IconProps } from '../components/Icon.tsx'
4
2
 
5
- export interface SidebarLeftInteractiveIconProps extends SetOptional<IconProps, 'alt'> {}
3
+ export interface SidebarLeftInteractiveIconProps extends Omit<IconProps, 'alt'> {
4
+ /** @default 'Toggle sidebar' */
5
+ alt?: IconProps['alt']
6
+ }
6
7
 
7
- export function SidebarLeftInteractiveIcon(props: SidebarLeftInteractiveIconProps) {
8
+ export function SidebarLeftInteractiveIcon({
9
+ alt = 'Toggle sidebar',
10
+ ...props
11
+ }: SidebarLeftInteractiveIconProps) {
8
12
  return (
9
13
  <Icon
10
14
  src={
@@ -19,7 +23,7 @@ export function SidebarLeftInteractiveIcon(props: SidebarLeftInteractiveIconProp
19
23
  />
20
24
  </svg>
21
25
  }
22
- alt=""
26
+ alt={alt}
23
27
  data-name="SidebarLeftInteractive"
24
28
  {...props}
25
29
  />
@@ -1,10 +1,14 @@
1
- import type { SetOptional } from 'type-fest'
2
-
3
1
  import { Icon, type IconProps } from '../components/Icon.tsx'
4
2
 
5
- export interface SidebarRightInteractiveIconProps extends SetOptional<IconProps, 'alt'> {}
3
+ export interface SidebarRightInteractiveIconProps extends Omit<IconProps, 'alt'> {
4
+ /** @default 'Toggle sidebar' */
5
+ alt?: IconProps['alt']
6
+ }
6
7
 
7
- export function SidebarRightInteractiveIcon(props: SidebarRightInteractiveIconProps) {
8
+ export function SidebarRightInteractiveIcon({
9
+ alt = 'Toggle sidebar',
10
+ ...props
11
+ }: SidebarRightInteractiveIconProps) {
8
12
  return (
9
13
  <Icon
10
14
  src={
@@ -19,7 +23,7 @@ export function SidebarRightInteractiveIcon(props: SidebarRightInteractiveIconPr
19
23
  />
20
24
  </svg>
21
25
  }
22
- alt=""
26
+ alt={alt}
23
27
  data-name="SidebarRightInteractive"
24
28
  {...props}
25
29
  />
@@ -7,7 +7,6 @@ import { AddressMeta } from './components/Address.meta.ts'
7
7
  import { AvatarMeta } from './components/Avatar.meta.ts'
8
8
  import { AvatarGroupMeta } from './components/AvatarGroup.meta.ts'
9
9
  import { AddonMeta } from './components/base/Addon.meta.ts'
10
- import { ButtonOrLinkMeta } from './components/base/ButtonOrLink.meta.ts'
11
10
  import { CheckableMeta } from './components/base/Checkable.meta.ts'
12
11
  import { FieldMeta } from './components/base/Field.meta.ts'
13
12
  import { TransitionMeta } from './components/base/Transition.meta.ts'
@@ -16,8 +15,10 @@ import { ButtonMeta } from './components/Button.meta.ts'
16
15
  import { ButtonGroupMeta } from './components/ButtonGroup.meta.ts'
17
16
  import { CardMeta } from './components/Card.meta.ts'
18
17
  import { CheckboxMeta } from './components/Checkbox.meta.ts'
18
+ import { ChipGroupMeta, ChipMeta } from './components/Chip.meta.ts'
19
19
  import { ClusterMeta } from './components/Cluster.meta.ts'
20
20
  import { CodeBlockMeta, CodeBlockTabsMeta } from './components/CodeBlock.meta.ts'
21
+ import { CodeInlineMeta } from './components/CodeInline.meta.ts'
21
22
  import { CopyButtonMeta } from './components/CopyButton.meta.ts'
22
23
  import { CurrencyInputMeta } from './components/CurrencyInput.meta.ts'
23
24
  import { DescriptionListItemMeta, DescriptionListMeta } from './components/DescriptionList.meta.ts'
@@ -77,15 +78,17 @@ const gdsTailwindPluginWithComponents: ReturnType<typeof createPlugin> = createP
77
78
  AvatarGroupMeta,
78
79
  BreadcrumbsItemMeta,
79
80
  BreadcrumbsMeta,
80
- ButtonOrLinkMeta,
81
81
  ButtonMeta,
82
82
  ButtonGroupMeta,
83
83
  CardMeta,
84
- CodeBlockMeta,
85
- CodeBlockTabsMeta,
86
84
  CheckableMeta,
87
85
  CheckboxMeta,
86
+ ChipMeta,
87
+ ChipGroupMeta,
88
88
  ClusterMeta,
89
+ CodeBlockMeta,
90
+ CodeBlockTabsMeta,
91
+ CodeInlineMeta,
89
92
  CopyButtonMeta,
90
93
  CurrencyInputMeta,
91
94
  DescriptionListItemMeta,
@@ -108,8 +111,8 @@ const gdsTailwindPluginWithComponents: ReturnType<typeof createPlugin> = createP
108
111
  StatusMeta,
109
112
  StepperMeta,
110
113
  SwitchMeta,
111
- TabSetTabsMeta,
112
114
  TabSetTabMeta,
115
+ TabSetTabsMeta,
113
116
  TagMeta,
114
117
  TextAreaMeta,
115
118
  ToggleButtonMeta,
package/src/utils/cn.ts CHANGED
@@ -3,7 +3,9 @@
3
3
  *
4
4
  * @example
5
5
  *
6
- * cn('base-class', condition && 'conditional-class', className)
6
+ * ```ts
7
+ * cn('base-class', condition && 'conditional-class', className)
8
+ * ```
7
9
  */
8
10
  export function cn(...classes: (string | undefined | null | false)[]): string {
9
11
  return classes.filter(Boolean).join(' ')
@@ -12,8 +12,14 @@ type AllCSSProps<C extends GDSComponent> = {
12
12
  [K in keyof ComponentCSSProps<C>]-?: ComponentCSSProps<C>[K] | undefined
13
13
  }
14
14
 
15
- // For props with a `defaultValue`, ensure they can be `undefined` (preventing destructuring defaults like `{ size = 'medium' }`).
16
- // For props without a `defaultValue`, allow any value since they're required and will never be `undefined`.
15
+ /**
16
+ * Validates the passed values object:
17
+ *
18
+ * - Rejects keys that are not CSS props.
19
+ * - For props with a `defaultValue`, ensures they can be `undefined` (preventing destructuring
20
+ * defaults, which would break `default-*` utilities).
21
+ * - For props without a `defaultValue`, allows any value since they're required.
22
+ */
17
23
  type ValidatePassedValues<C extends GDSComponent, T extends AllCSSProps<C>> = {
18
24
  [K in keyof T]: K extends keyof ComponentCSSPropsConfig<C>
19
25
  ? 'defaultValue' extends keyof ComponentCSSPropsConfig<C>[K]
@@ -21,12 +27,11 @@ type ValidatePassedValues<C extends GDSComponent, T extends AllCSSProps<C>> = {
21
27
  ? T[K]
22
28
  : never
23
29
  : T[K]
24
- : T[K]
30
+ : `"${K & string}" is not a CSS prop of this component`
25
31
  }
26
32
 
27
33
  /**
28
- * Returns attributes to spread on the root element of a component that supports CSS Props. This
29
- * enables the CSS Props system to apply prop-based styling.
34
+ * Returns attributes to spread on the root element of a component that supports CSS props.
30
35
  *
31
36
  * @param component The component metadata object created with createComponent.
32
37
  * @param passedValues Object containing all the CSS prop values from the component props.
@@ -41,13 +46,13 @@ export function getCSSPropsAttributes<C extends GDSComponent, V extends AllCSSPr
41
46
  const customProperties: Record<string, string> = {}
42
47
 
43
48
  for (const propName in passedValues) {
44
- const prop = component.getCSSPropByName(propName)
49
+ const cssProp = component.getCSSPropByName(propName)
45
50
  const value = passedValues[propName]
46
51
  if (value === undefined) continue
47
- customProperties[`--gds-passed-${prop.kebabName}`] = getCSSPropRawValue(prop, value)
52
+ customProperties[`--gds-passed-${cssProp.kebabName}`] = getCSSPropRawValue(cssProp, value)
48
53
  }
49
54
 
50
55
  return {
51
- style: { ...style, ...customProperties },
56
+ style: { ...customProperties, ...style },
52
57
  }
53
58
  }
@@ -10,28 +10,22 @@
10
10
  * destructured), `style`, `inert`, `hidden`, and `aria-hidden` go in `rootProps`, along with data
11
11
  * attributes, since they can be coupled to the `className` to apply styles conditionally, e.g.
12
12
  * `<Button data-highlighted={highlighted} className="data-[highlighted]:prop-variant-primary" />`.
13
- * However, data attributes can also be needed on the underlying element in some cases, so they are
14
- * also included in the `nestedProps`, except the ones starting with `data-gds-`, to avoid messing
15
- * with the CSS props or states systems.
16
13
  */
17
14
  export function splitProps<T extends Record<string, unknown>>(props: T) {
18
15
  const rootProps: Record<string, unknown> = {}
19
16
  const nestedProps: Record<string, unknown> = {}
20
17
 
21
18
  for (const [key, value] of Object.entries(props)) {
22
- const isDataAttribute = key.startsWith('data-')
23
- const isGDSDataAttribute = key.startsWith('data-gds-')
24
19
  const isRootProp =
25
20
  key === 'className' ||
26
21
  key === 'style' ||
27
22
  key === 'inert' ||
28
23
  key === 'hidden' ||
29
24
  key === 'aria-hidden' ||
30
- isDataAttribute
25
+ key.startsWith('data-')
31
26
  if (isRootProp) {
32
27
  rootProps[key] = value
33
- }
34
- if (!isRootProp || (isDataAttribute && !isGDSDataAttribute)) {
28
+ } else {
35
29
  nestedProps[key] = value
36
30
  }
37
31
  }
@@ -49,7 +43,13 @@ export function splitProps<T extends Record<string, unknown>>(props: T) {
49
43
  : never]: T[K]
50
44
  }
51
45
  nestedProps: {
52
- [K in keyof T as K extends 'className' | 'style' | 'inert' | 'hidden' | 'aria-hidden'
46
+ [K in keyof T as K extends
47
+ | 'className'
48
+ | 'style'
49
+ | 'inert'
50
+ | 'hidden'
51
+ | 'aria-hidden'
52
+ | `data-${string}`
53
53
  ? never
54
54
  : K]: T[K]
55
55
  }
@@ -12,14 +12,16 @@ import { Children, isValidElement, type ReactElement, type ReactNode } from 'rea
12
12
  *
13
13
  * @example
14
14
  *
15
- * trimReactNode(' hello ') // 'hello'
16
- * trimReactNode(
17
- * <>
18
- * {' '}
19
- * <span>test</span>{' '}
20
- * </>,
21
- * ) // <><span>test</span></>
22
- * trimReactNode([' ', <div>content</div>, ' ']) // [<div>content</div>]
15
+ * ```tsx
16
+ * trimReactNode(' hello ') // 'hello'
17
+ * trimReactNode(
18
+ * <>
19
+ * {' '}
20
+ * <span>test</span>{' '}
21
+ * </>,
22
+ * ) // <><span>test</span></>
23
+ * trimReactNode([' ', <div>content</div>, ' ']) // [<div>content</div>]
24
+ * ```
23
25
  *
24
26
  * @param node - The `ReactNode` to trim.
25
27
  * @returns A new `ReactNode` with leading and trailing whitespace removed.
@@ -1,2 +0,0 @@
1
- export declare const ButtonOrLinkMeta: import("@graphprotocol/gds-css").GDSComponent<import("@graphprotocol/gds-css").CSSPropsConfig, boolean>;
2
- //# sourceMappingURL=ButtonOrLink.meta.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ButtonOrLink.meta.d.ts","sourceRoot":"","sources":["../../../src/components/base/ButtonOrLink.meta.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB,yGAE3B,CAAA"}
@@ -1,6 +0,0 @@
1
- import { createComponent } from '@graphprotocol/gds-css';
2
- // `ButtonOrLink` doesn't use CSS Props, but we register it for the `*-button-or-link` variants
3
- export const ButtonOrLinkMeta = createComponent('ButtonOrLink', {
4
- containerName: null,
5
- });
6
- //# sourceMappingURL=ButtonOrLink.meta.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ButtonOrLink.meta.js","sourceRoot":"","sources":["../../../src/components/base/ButtonOrLink.meta.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAExD,+FAA+F;AAC/F,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC,cAAc,EAAE;IAC9D,aAAa,EAAE,IAAI;CACpB,CAAC,CAAA"}
@@ -1,6 +0,0 @@
1
- import { createComponent } from '@graphprotocol/gds-css'
2
-
3
- // `ButtonOrLink` doesn't use CSS Props, but we register it for the `*-button-or-link` variants
4
- export const ButtonOrLinkMeta = createComponent('ButtonOrLink', {
5
- containerName: null,
6
- })