@utilitywarehouse/hearth-react 0.32.3 → 0.33.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (238) hide show
  1. package/dist/{chunk-L3VPQN5T.js → chunk-2YZ3O2PW.js} +2 -2
  2. package/dist/{chunk-VZ37XNSE.cjs → chunk-3SXNUUIV.cjs} +2 -2
  3. package/dist/{chunk-VZ37XNSE.cjs.map → chunk-3SXNUUIV.cjs.map} +1 -1
  4. package/dist/{chunk-UVHPJNXC.cjs → chunk-47IKOVZM.cjs} +2 -2
  5. package/dist/{chunk-UVHPJNXC.cjs.map → chunk-47IKOVZM.cjs.map} +1 -1
  6. package/dist/{chunk-BB2SOLJS.cjs → chunk-4VB6TWFP.cjs} +2 -2
  7. package/dist/{chunk-BB2SOLJS.cjs.map → chunk-4VB6TWFP.cjs.map} +1 -1
  8. package/dist/chunk-5DXUL2KU.js +4 -0
  9. package/dist/chunk-5DXUL2KU.js.map +1 -0
  10. package/dist/{chunk-IPBCLSDB.cjs → chunk-5QRJL6UW.cjs} +2 -2
  11. package/dist/{chunk-IPBCLSDB.cjs.map → chunk-5QRJL6UW.cjs.map} +1 -1
  12. package/dist/{chunk-U65H447D.js → chunk-6IRARDPS.js} +2 -2
  13. package/dist/{chunk-LFHNFACK.cjs → chunk-6KCGKXT6.cjs} +2 -2
  14. package/dist/{chunk-LFHNFACK.cjs.map → chunk-6KCGKXT6.cjs.map} +1 -1
  15. package/dist/{chunk-6BVOGEQF.cjs → chunk-75OLYAFB.cjs} +2 -2
  16. package/dist/{chunk-6BVOGEQF.cjs.map → chunk-75OLYAFB.cjs.map} +1 -1
  17. package/dist/{chunk-CW6UT3QU.js → chunk-7BBNLGEP.js} +2 -2
  18. package/dist/{chunk-F2ZTXLIG.js → chunk-7ILZKQOQ.js} +2 -2
  19. package/dist/{chunk-2DOX5QRE.cjs → chunk-AOWHE3JS.cjs} +2 -2
  20. package/dist/{chunk-2DOX5QRE.cjs.map → chunk-AOWHE3JS.cjs.map} +1 -1
  21. package/dist/{chunk-Y2YBHHIX.js → chunk-CKE63SKW.js} +2 -2
  22. package/dist/chunk-DMMORU7Y.cjs +4 -0
  23. package/dist/chunk-DMMORU7Y.cjs.map +1 -0
  24. package/dist/{chunk-XIAQD5M3.js → chunk-DVLDTXUF.js} +1 -1
  25. package/dist/chunk-DVLDTXUF.js.map +1 -0
  26. package/dist/{chunk-ORVVLS3D.cjs → chunk-E7RWLZ6B.cjs} +2 -2
  27. package/dist/{chunk-ORVVLS3D.cjs.map → chunk-E7RWLZ6B.cjs.map} +1 -1
  28. package/dist/{chunk-Q4GDPLX2.cjs → chunk-EP4MMAP6.cjs} +2 -2
  29. package/dist/{chunk-Q4GDPLX2.cjs.map → chunk-EP4MMAP6.cjs.map} +1 -1
  30. package/dist/{chunk-V4BZIPQB.js → chunk-HNPNWQMD.js} +2 -2
  31. package/dist/{chunk-6VZAQBWM.js → chunk-I4T6DB7C.js} +2 -2
  32. package/dist/{chunk-UB5EHJ4P.cjs → chunk-IOXDXAHO.cjs} +2 -2
  33. package/dist/{chunk-UB5EHJ4P.cjs.map → chunk-IOXDXAHO.cjs.map} +1 -1
  34. package/dist/chunk-IOZE7MTU.cjs +4 -0
  35. package/dist/chunk-IOZE7MTU.cjs.map +1 -0
  36. package/dist/{chunk-XDTM63KX.js → chunk-IUDPPU6Y.js} +2 -2
  37. package/dist/chunk-JQCRVBOS.cjs +4 -0
  38. package/dist/chunk-JQCRVBOS.cjs.map +1 -0
  39. package/dist/{chunk-PGDFEVA5.js → chunk-KKHWPT5B.js} +2 -2
  40. package/dist/{chunk-YEZ6N62U.cjs → chunk-KKJEZRGJ.cjs} +2 -2
  41. package/dist/{chunk-YEZ6N62U.cjs.map → chunk-KKJEZRGJ.cjs.map} +1 -1
  42. package/dist/{chunk-5UEDHPFN.cjs → chunk-KWBAJWSJ.cjs} +2 -2
  43. package/dist/{chunk-5UEDHPFN.cjs.map → chunk-KWBAJWSJ.cjs.map} +1 -1
  44. package/dist/{chunk-XL66CZU5.cjs → chunk-L7I7AUWH.cjs} +2 -2
  45. package/dist/{chunk-XL66CZU5.cjs.map → chunk-L7I7AUWH.cjs.map} +1 -1
  46. package/dist/{chunk-Y36QMGRW.js → chunk-LA3N4ST5.js} +2 -2
  47. package/dist/{chunk-QIPIWJCI.js → chunk-LOKIAOWS.js} +2 -2
  48. package/dist/{chunk-PJCXETFD.js → chunk-N2PQS6HG.js} +2 -2
  49. package/dist/chunk-NPCUVYMJ.js +4 -0
  50. package/dist/chunk-NPCUVYMJ.js.map +1 -0
  51. package/dist/{chunk-RVXQZ4CI.cjs → chunk-NV5OZD3V.cjs} +2 -2
  52. package/dist/{chunk-RVXQZ4CI.cjs.map → chunk-NV5OZD3V.cjs.map} +1 -1
  53. package/dist/chunk-OEEEN4T4.js +4 -0
  54. package/dist/chunk-OEEEN4T4.js.map +1 -0
  55. package/dist/{chunk-DYMXUQM4.js → chunk-OQ7TRS57.js} +2 -2
  56. package/dist/chunk-Q7M52MR2.cjs +4 -0
  57. package/dist/chunk-Q7M52MR2.cjs.map +1 -0
  58. package/dist/chunk-R5I57J2E.js +4 -0
  59. package/dist/chunk-R5I57J2E.js.map +1 -0
  60. package/dist/{chunk-H5WVT3CU.cjs → chunk-RF5NDA46.cjs} +2 -2
  61. package/dist/{chunk-H5WVT3CU.cjs.map → chunk-RF5NDA46.cjs.map} +1 -1
  62. package/dist/{chunk-CWAYK23X.js → chunk-ROSGUGBM.js} +2 -2
  63. package/dist/{chunk-BHZ3HDCP.js → chunk-RYEI7Q4H.js} +2 -2
  64. package/dist/{chunk-CICNJKHM.cjs → chunk-SWIT4LGB.cjs} +2 -2
  65. package/dist/{chunk-CICNJKHM.cjs.map → chunk-SWIT4LGB.cjs.map} +1 -1
  66. package/dist/{chunk-5JUZLZBK.js → chunk-TBO5GN3I.js} +2 -2
  67. package/dist/{chunk-FSOQCT7B.js → chunk-TR7MKE7F.js} +2 -2
  68. package/dist/{chunk-IXUXDCQL.cjs → chunk-VNLPVNVK.cjs} +2 -2
  69. package/dist/{chunk-IXUXDCQL.cjs.map → chunk-VNLPVNVK.cjs.map} +1 -1
  70. package/dist/{chunk-VZM5CVIO.js → chunk-W35QJTJH.js} +2 -2
  71. package/dist/{chunk-RG53XPCM.cjs → chunk-WDL4OS5J.cjs} +2 -2
  72. package/dist/{chunk-RG53XPCM.cjs.map → chunk-WDL4OS5J.cjs.map} +1 -1
  73. package/dist/{chunk-6GC2HQ72.cjs → chunk-X2QPGOUI.cjs} +2 -2
  74. package/dist/{chunk-6GC2HQ72.cjs.map → chunk-X2QPGOUI.cjs.map} +1 -1
  75. package/dist/{chunk-KNPNKYUS.js → chunk-XAJGQUSC.js} +2 -2
  76. package/dist/{chunk-S4U7KSTZ.js → chunk-XCT44JDG.js} +2 -2
  77. package/dist/{chunk-O7X6QXBO.js → chunk-XNM4PIXN.js} +2 -2
  78. package/dist/{chunk-TWRSAJ3F.cjs → chunk-XX6G7GZM.cjs} +1 -1
  79. package/dist/{chunk-TWRSAJ3F.cjs.map → chunk-XX6G7GZM.cjs.map} +1 -1
  80. package/dist/{chunk-ZKHAEQHH.cjs → chunk-XZBPR3WG.cjs} +2 -2
  81. package/dist/{chunk-ZKHAEQHH.cjs.map → chunk-XZBPR3WG.cjs.map} +1 -1
  82. package/dist/{chunk-QUPHSWAC.js → chunk-YABVOAPK.js} +2 -2
  83. package/dist/{chunk-HP7AVYAK.cjs → chunk-YNEPOYJV.cjs} +2 -2
  84. package/dist/{chunk-HP7AVYAK.cjs.map → chunk-YNEPOYJV.cjs.map} +1 -1
  85. package/dist/{chunk-CTVFJHPG.cjs → chunk-ZPQZJIT3.cjs} +2 -2
  86. package/dist/{chunk-CTVFJHPG.cjs.map → chunk-ZPQZJIT3.cjs.map} +1 -1
  87. package/dist/components/Accordion/Accordion.cjs +1 -1
  88. package/dist/components/Accordion/Accordion.js +1 -1
  89. package/dist/components/Button/Button.cjs +1 -1
  90. package/dist/components/Button/Button.js +1 -1
  91. package/dist/components/CardAccordion/CardAccordion.cjs +1 -1
  92. package/dist/components/CardAccordion/CardAccordion.js +1 -1
  93. package/dist/components/CardAccordion/CardAccordionButton.cjs +1 -1
  94. package/dist/components/CardAccordion/CardAccordionButton.js +1 -1
  95. package/dist/components/CardAccordion/CardAccordionItem.cjs +1 -1
  96. package/dist/components/CardAccordion/CardAccordionItem.js +1 -1
  97. package/dist/components/Checkbox/Checkbox.cjs +1 -1
  98. package/dist/components/Checkbox/Checkbox.js +1 -1
  99. package/dist/components/CheckboxTile/CheckboxTile.cjs +1 -1
  100. package/dist/components/CheckboxTile/CheckboxTile.js +1 -1
  101. package/dist/components/DateInput/DateInput.cjs +1 -1
  102. package/dist/components/DateInput/DateInput.js +1 -1
  103. package/dist/components/DescriptionList/DescriptionList.cjs +1 -1
  104. package/dist/components/DescriptionList/DescriptionList.js +1 -1
  105. package/dist/components/ExpandableCard/ExpandableCardGroup.cjs +1 -1
  106. package/dist/components/ExpandableCard/ExpandableCardGroup.js +1 -1
  107. package/dist/components/List/List.cjs +1 -1
  108. package/dist/components/List/List.js +1 -1
  109. package/dist/components/List/ListItemButton.cjs +1 -1
  110. package/dist/components/List/ListItemButton.js +1 -1
  111. package/dist/components/List/ListItemContent.cjs +1 -1
  112. package/dist/components/List/ListItemContent.d.ts.map +1 -1
  113. package/dist/components/List/ListItemContent.js +1 -1
  114. package/dist/components/List/ListItemLink.cjs +1 -1
  115. package/dist/components/List/ListItemLink.js +1 -1
  116. package/dist/components/Modal/Modal.cjs +1 -1
  117. package/dist/components/Modal/Modal.js +1 -1
  118. package/dist/components/Pagination/Pagination.cjs +1 -1
  119. package/dist/components/Pagination/Pagination.js +1 -1
  120. package/dist/components/ProgressBar/ProgressBar.cjs +1 -1
  121. package/dist/components/ProgressBar/ProgressBar.js +1 -1
  122. package/dist/components/ProgressBar/ProgressBarCircular.cjs +1 -1
  123. package/dist/components/ProgressBar/ProgressBarCircular.js +1 -1
  124. package/dist/components/ProgressBar/ProgressBarLinear.cjs +1 -1
  125. package/dist/components/ProgressBar/ProgressBarLinear.js +1 -1
  126. package/dist/components/Radio/Radio.cjs +1 -1
  127. package/dist/components/Radio/Radio.js +1 -1
  128. package/dist/components/RadioTile/RadioTile.cjs +1 -1
  129. package/dist/components/RadioTile/RadioTile.js +1 -1
  130. package/dist/components/SectionHeader/SectionHeader.cjs +1 -1
  131. package/dist/components/SectionHeader/SectionHeader.js +1 -1
  132. package/dist/components/Skeleton/SkeletonBodyText.cjs +1 -1
  133. package/dist/components/Skeleton/SkeletonBodyText.js +1 -1
  134. package/dist/components/Table/TablePagination.cjs +1 -1
  135. package/dist/components/Table/TablePagination.js +1 -1
  136. package/dist/components/Timeline/Timeline.cjs +4 -0
  137. package/dist/components/Timeline/Timeline.cjs.map +1 -0
  138. package/dist/components/Timeline/Timeline.d.ts +12 -0
  139. package/dist/components/Timeline/Timeline.d.ts.map +1 -0
  140. package/dist/components/Timeline/Timeline.js +4 -0
  141. package/dist/components/Timeline/Timeline.js.map +1 -0
  142. package/dist/components/Timeline/Timeline.props.cjs +4 -0
  143. package/dist/components/Timeline/Timeline.props.cjs.map +1 -0
  144. package/dist/components/Timeline/Timeline.props.d.ts +47 -0
  145. package/dist/components/Timeline/Timeline.props.d.ts.map +1 -0
  146. package/dist/components/Timeline/Timeline.props.js +4 -0
  147. package/dist/components/Timeline/Timeline.props.js.map +1 -0
  148. package/dist/components/Timeline/TimelineItem.cjs +4 -0
  149. package/dist/components/Timeline/TimelineItem.cjs.map +1 -0
  150. package/dist/components/Timeline/TimelineItem.d.ts +11 -0
  151. package/dist/components/Timeline/TimelineItem.d.ts.map +1 -0
  152. package/dist/components/Timeline/TimelineItem.js +4 -0
  153. package/dist/components/Timeline/TimelineItem.js.map +1 -0
  154. package/dist/components/Timeline/TimelineItem.props.cjs +3 -0
  155. package/dist/components/Timeline/TimelineItem.props.cjs.map +1 -0
  156. package/dist/components/Timeline/TimelineItem.props.d.ts +17 -0
  157. package/dist/components/Timeline/TimelineItem.props.d.ts.map +1 -0
  158. package/dist/components/Timeline/TimelineItem.props.js +3 -0
  159. package/dist/components/Timeline/TimelineItem.props.js.map +1 -0
  160. package/dist/components/Toast/ToastActionButton.cjs +1 -1
  161. package/dist/components/Toast/ToastActionButton.d.ts +6 -0
  162. package/dist/components/Toast/ToastActionButton.d.ts.map +1 -1
  163. package/dist/components/Toast/ToastActionButton.js +1 -1
  164. package/dist/components/Toast/ToastActionButton.props.d.ts +7 -1
  165. package/dist/components/Toast/ToastActionButton.props.d.ts.map +1 -1
  166. package/dist/index.cjs +1 -1
  167. package/dist/index.cjs.map +1 -1
  168. package/dist/index.d.ts +4 -0
  169. package/dist/index.d.ts.map +1 -1
  170. package/dist/index.js +1 -1
  171. package/package.json +3 -3
  172. package/public/llms/components/accordion.md +0 -10
  173. package/public/llms/components/breadcrumbs.md +0 -5
  174. package/public/llms/components/button.md +0 -14
  175. package/public/llms/components/card-accordion.md +0 -10
  176. package/public/llms/components/card.md +0 -11
  177. package/public/llms/components/checkbox-tile.md +1 -1
  178. package/public/llms/components/checkbox.md +1 -1
  179. package/public/llms/components/chip.md +1 -8
  180. package/public/llms/components/combobox.md +0 -8
  181. package/public/llms/components/description-list.md +0 -7
  182. package/public/llms/components/expandable-card.md +3 -12
  183. package/public/llms/components/highlight-banner.md +1 -1
  184. package/public/llms/components/icon-button.md +0 -11
  185. package/public/llms/components/icon-container.md +0 -9
  186. package/public/llms/components/inline-link.md +0 -7
  187. package/public/llms/components/label.md +1 -1
  188. package/public/llms/components/link.md +0 -8
  189. package/public/llms/components/list.md +0 -12
  190. package/public/llms/components/menu.md +0 -9
  191. package/public/llms/components/modal.md +0 -10
  192. package/public/llms/components/pagination.md +0 -11
  193. package/public/llms/components/progress-stepper.md +0 -5
  194. package/public/llms/components/radio-group.md +1 -40
  195. package/public/llms/components/search-input.md +0 -8
  196. package/public/llms/components/segmented-control.md +0 -5
  197. package/public/llms/components/skeleton.md +0 -8
  198. package/public/llms/components/table.md +0 -6
  199. package/public/llms/components/tabs.md +0 -10
  200. package/public/llms/components/text-area.md +0 -9
  201. package/public/llms/components/text-input.md +0 -9
  202. package/public/llms/components/timeline.md +177 -0
  203. package/public/llms/components/toast.md +0 -11
  204. package/public/llms/components/toggle-button-card.md +1 -9
  205. package/public/llms/components/toggle-button.md +0 -7
  206. package/public/llms/components/tooltip.md +0 -8
  207. package/public/llms/components/unstyled-icon-button.md +0 -8
  208. package/public/llms/docs/getting-started.md +1 -9
  209. package/public/llms/docs/migration/v0.md +0 -21
  210. package/public/llms.txt +1 -0
  211. package/styles.css +2 -2
  212. package/dist/chunk-4WLYFPTV.cjs +0 -4
  213. package/dist/chunk-4WLYFPTV.cjs.map +0 -1
  214. package/dist/chunk-HDCOVVAG.js +0 -4
  215. package/dist/chunk-HDCOVVAG.js.map +0 -1
  216. package/dist/chunk-XIAQD5M3.js.map +0 -1
  217. /package/dist/{chunk-L3VPQN5T.js.map → chunk-2YZ3O2PW.js.map} +0 -0
  218. /package/dist/{chunk-U65H447D.js.map → chunk-6IRARDPS.js.map} +0 -0
  219. /package/dist/{chunk-CW6UT3QU.js.map → chunk-7BBNLGEP.js.map} +0 -0
  220. /package/dist/{chunk-F2ZTXLIG.js.map → chunk-7ILZKQOQ.js.map} +0 -0
  221. /package/dist/{chunk-Y2YBHHIX.js.map → chunk-CKE63SKW.js.map} +0 -0
  222. /package/dist/{chunk-V4BZIPQB.js.map → chunk-HNPNWQMD.js.map} +0 -0
  223. /package/dist/{chunk-6VZAQBWM.js.map → chunk-I4T6DB7C.js.map} +0 -0
  224. /package/dist/{chunk-XDTM63KX.js.map → chunk-IUDPPU6Y.js.map} +0 -0
  225. /package/dist/{chunk-PGDFEVA5.js.map → chunk-KKHWPT5B.js.map} +0 -0
  226. /package/dist/{chunk-Y36QMGRW.js.map → chunk-LA3N4ST5.js.map} +0 -0
  227. /package/dist/{chunk-QIPIWJCI.js.map → chunk-LOKIAOWS.js.map} +0 -0
  228. /package/dist/{chunk-PJCXETFD.js.map → chunk-N2PQS6HG.js.map} +0 -0
  229. /package/dist/{chunk-DYMXUQM4.js.map → chunk-OQ7TRS57.js.map} +0 -0
  230. /package/dist/{chunk-CWAYK23X.js.map → chunk-ROSGUGBM.js.map} +0 -0
  231. /package/dist/{chunk-BHZ3HDCP.js.map → chunk-RYEI7Q4H.js.map} +0 -0
  232. /package/dist/{chunk-5JUZLZBK.js.map → chunk-TBO5GN3I.js.map} +0 -0
  233. /package/dist/{chunk-FSOQCT7B.js.map → chunk-TR7MKE7F.js.map} +0 -0
  234. /package/dist/{chunk-VZM5CVIO.js.map → chunk-W35QJTJH.js.map} +0 -0
  235. /package/dist/{chunk-KNPNKYUS.js.map → chunk-XAJGQUSC.js.map} +0 -0
  236. /package/dist/{chunk-S4U7KSTZ.js.map → chunk-XCT44JDG.js.map} +0 -0
  237. /package/dist/{chunk-O7X6QXBO.js.map → chunk-XNM4PIXN.js.map} +0 -0
  238. /package/dist/{chunk-QUPHSWAC.js.map → chunk-YABVOAPK.js.map} +0 -0
@@ -0,0 +1,177 @@
1
+ # Timeline
2
+
3
+ Use Timeline to show a sequence of events or steps, each rendered as a
4
+ `TimelineItem`, in the order they occur. Use the `progress` variant when
5
+ the sequence represents the user's advancement through it; use `static`
6
+ for a purely informational history or schedule. For a multi-step process
7
+ the user actively navigates, use ProgressStepper instead.
8
+
9
+ ```tsx
10
+ <Flex direction="row" gap="600">
11
+ {variants.map(variant => (
12
+ <Timeline key={variant} variant={variant}>
13
+ <TimelineItem state="complete" label="Direct debit set up" helperText="1 March 2026" />
14
+ <TimelineItem state="active" label="First payment due" helperText="1 April 2026" />
15
+ <TimelineItem state="incomplete" label="Final payment due" helperText="1 June 2026" />
16
+ </Timeline>
17
+ ))}
18
+ </Flex>
19
+ ```
20
+
21
+ ## Usage
22
+
23
+ Wrap one or more `TimelineItem` components in a `Timeline`. Each item needs a
24
+ `label` and a `state`; `helperText` and `children` are optional for
25
+ supporting detail such as a date or amount.
26
+
27
+ ```tsx
28
+ <Timeline {...args}>
29
+ <TimelineItem state="complete" label="Direct debit set up" helperText="1 March 2026" />
30
+ <TimelineItem state="complete" label="First payment collected" helperText="1 April 2026" />
31
+ <TimelineItem state="active" label="Second payment due" helperText="1 June 2026" />
32
+ <TimelineItem state="incomplete" label="Final payment due" helperText="1 July 2026" />
33
+ </Timeline>
34
+ ```
35
+
36
+ ```tsx
37
+ <Timeline>
38
+ <TimelineItem state="complete" label="Direct debit set up" helperText="1 March 2026" />
39
+ <TimelineItem state="complete" label="First payment collected" helperText="1 April 2026" />
40
+ <TimelineItem state="active" label="Second payment due" helperText="1 June 2026" />
41
+ <TimelineItem state="incomplete" label="Final payment due" helperText="1 July 2026" />
42
+ </Timeline>
43
+ ```
44
+
45
+ ## Variants
46
+
47
+ `variant` controls the size of each item's indicator:
48
+
49
+ - `static` — a small dot, for a purely informational history or schedule.
50
+ - `progress` — a larger circle that can carry a complete icon, for a
51
+ sequence the user is advancing through.
52
+
53
+ ```tsx
54
+ <Timeline {...args}>
55
+ <TimelineItem state="complete" label="Order placed" helperText="12 January 2026" />
56
+ <TimelineItem state="complete" label="Order dispatched" helperText="13 January 2026" />
57
+ <TimelineItem state="incomplete" label="Order delivered" helperText="Estimated 15 January 2026" />
58
+ </Timeline>
59
+ ```
60
+
61
+ ```tsx
62
+ <Timeline {...args}>
63
+ <TimelineItem state="complete" label="Application submitted" helperText="12 January 2026" />
64
+ <TimelineItem state="complete" label="Documents verified" helperText="14 January 2026" />
65
+ <TimelineItem state="incomplete" label="Final approval" />
66
+ </Timeline>
67
+ ```
68
+
69
+ A realistic schedule, mixing `helperText` with `children` for extra
70
+ per-item content:
71
+
72
+ ```tsx
73
+ <Timeline {...args}>
74
+ <TimelineItem state="complete" label="Plan starts" helperText="Today">
75
+ <BodyText size="md" color="secondary">
76
+ 1 Jun 2025
77
+ </BodyText>
78
+ </TimelineItem>
79
+ <TimelineItem
80
+ state="incomplete"
81
+ label="Plan health check"
82
+ helperText="An automatic review 45 days after joining us to make sure your payments line up with how much energy you actually use."
83
+ >
84
+ <BodyText size="md" color="secondary">
85
+ 15 July 2025
86
+ </BodyText>
87
+ </TimelineItem>
88
+ <TimelineItem
89
+ state="incomplete"
90
+ label="Annual plan review"
91
+ helperText="We’ll review your full 12-month energy consumption to adjust your regular payments and get you closer to a zero balance."
92
+ >
93
+ <BodyText size="md" color="secondary">
94
+ By May 2026
95
+ </BodyText>
96
+ </TimelineItem>
97
+ <TimelineItem
98
+ state="incomplete"
99
+ label="Next 12-month cycle begins"
100
+ helperText="Your refreshed plan kicks off for the year ahead, with your next automatic review scheduled for May 2027."
101
+ >
102
+ <BodyText size="md" color="secondary">
103
+ 1 Jun 2026
104
+ </BodyText>
105
+ </TimelineItem>
106
+ </Timeline>
107
+ ```
108
+
109
+ `children` can also render a `Card`, for content that needs its own visual
110
+ grouping — such as an action the user needs to take:
111
+
112
+ ```tsx
113
+ <Timeline {...args}>
114
+ <TimelineItem
115
+ state="complete"
116
+ label="Application started"
117
+ helperText="We have saved your draft"
118
+ />
119
+ <TimelineItem state="active" label="Additional information" helperText="Action needed">
120
+ <Card variant="subtle" direction="column" gap="100">
121
+ <Badge>Required</Badge>
122
+ <BodyText size="sm">Upload proof of address to continue.</BodyText>
123
+ </Card>
124
+ </TimelineItem>
125
+ <TimelineItem state="incomplete" label="Review complete" helperText="Pending" />
126
+ </Timeline>
127
+ ```
128
+
129
+ ## States
130
+
131
+ Each `TimelineItem` has one of three states:
132
+
133
+ - `complete`
134
+ - `active`
135
+ - `incomplete`
136
+
137
+ State is expressed purely through the indicator and connector styling —
138
+ there is no separate variant prop on `TimelineItem` itself.
139
+
140
+ ## Dangling rail
141
+
142
+ Set `danglingRail` to extend the final item's connector line beyond the
143
+ list, fading it to transparent, to suggest the timeline continues beyond
144
+ what's shown. It only applies to the `progress` variant, and only takes
145
+ effect when the final item's `state` is `incomplete` — a `complete` or
146
+ `active` final item never gets a dangling rail, since there's nothing left
147
+ to continue into.
148
+
149
+ ```tsx
150
+ <Timeline {...args} danglingRail>
151
+ <TimelineItem state="complete" label="Direct debit set up" helperText="1 March 2026" />
152
+ <TimelineItem state="active" label="First payment due" helperText="1 April 2026" />
153
+ <TimelineItem state="incomplete" label="Ongoing payments" helperText="Monthly" />
154
+ </Timeline>
155
+ ```
156
+
157
+ ## API
158
+
159
+ This component is based on the `ol` element and supports the following
160
+ common props:
161
+
162
+ - Margin
163
+
164
+ | Prop | Type | Default | Description |
165
+ | -------------- | ------------------------ | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
166
+ | `variant` | `"progress" \| "static"` | `static` | Controls the size of each `TimelineItem`'s indicator — `static` renders a small dot, `progress` renders a larger circle that can carry a complete icon. |
167
+ | `danglingRail` | `boolean` | `false` | Extends the final `TimelineItem`'s connector line beyond the list, fading it to transparent, to suggest the timeline continues. Only takes effect when `variant` is `progress` and the final item's `state` is `incomplete`. |
168
+
169
+ ### TimelineItem API
170
+
171
+ This component is based on the `li` element.
172
+
173
+ | Prop | Type | Default | Description |
174
+ | ------------ | ---------------------------------------- | ------- | ---------------------------------------------------------------------------- |
175
+ | `label` | `string` | — | The label text to display for this item. |
176
+ | `helperText` | `string` | — | Optional supporting text to display below the label. |
177
+ | `state` | `"complete" \| "active" \| "incomplete"` | — | The current state of this item, driving the indicator and connector styling. |
@@ -5,17 +5,6 @@ action or notifies users of important information, auto-dismissing after a
5
5
  set duration. It must be rendered inside a ToastProvider. For messages that
6
6
  require the user to make a decision, use Alert instead.
7
7
 
8
- - [Usage](#usage)
9
- - [Icon](#icon)
10
- - [Dismiss toast](#dismiss-toast)
11
- - [Actions](#actions)
12
- - [Custom duration](#custom-duration)
13
- - [Accessibility](#accessibility)
14
- - [Sensitivity](#sensitivity)
15
- - [Keyboard interactions](#keyboard-interactions)
16
- - [Duplicate toasts](#duplicate-toasts)
17
- - [API](#api)
18
-
19
8
  ```tsx
20
9
  <div>
21
10
  <Button
@@ -58,14 +58,6 @@
58
58
  </Box>
59
59
  ```
60
60
 
61
- - [Usage](#usage)
62
- - [ToggleGroup type](#togglegroup-type)
63
- - [Layout](#layout)
64
- - [Interactive content](#interactive-content)
65
- - [Accessibility](#accessibility)
66
- - [ToggleButtonCard API](#togglebuttoncard-api)
67
- - [ToggleGroup API](#togglegroup-api)
68
-
69
61
  ## Usage
70
62
 
71
63
  Use the `ToggleGroup` to wrap `ToggleButtonCard` components.
@@ -141,7 +133,7 @@ return (
141
133
  >
142
134
  {['One', 'Two', 'Three', 'Four'].map((label, value) => (
143
135
  <ToggleButtonCard key={value} value={`${value}`} label={label} aria-labelledby="">
144
- <Placeholder borderColor="subtle" backgroundColor="primary" width="120px" height="50px" />
136
+ <Placeholder borderColor="subtle" backgroundColor="primary" height="50px" />
145
137
  </ToggleButtonCard>
146
138
  ))}
147
139
  </ToggleGroup>
@@ -14,13 +14,6 @@ ToggleGroup, and requires a unique `value` prop.
14
14
  </ToggleGroup>
15
15
  ```
16
16
 
17
- - [Usage](#usage)
18
- - [ToggleGroup type](#togglegroup-type)
19
- - [Custom layout](#custom-layout)
20
- - [Accessibility](#accessibility)
21
- - [ToggleButton API](#togglebutton-api)
22
- - [ToggleGroup API](#togglegroup-api)
23
-
24
17
  ## Usage
25
18
 
26
19
  Wrap `ToggleButton` components in a `ToggleGroup`. The `value` prop on each
@@ -5,14 +5,6 @@ related to an element when it receives keyboard focus or is hovered. It
5
5
  requires a single child element as its trigger, and must be used within a
6
6
  TooltipProvider (or the global HearthProvider).
7
7
 
8
- - [Setup](#setup)
9
- - [Usage](#usage)
10
- - [Alignment](#alignment)
11
- - [Heading](#heading)
12
- - [Accessibility](#accessibility)
13
- - [Keyboard interactions](#keyboard-interactions)
14
- - [API](#api)
15
-
16
8
  ```tsx
17
9
  <Flex justifyContent="center" padding="800">
18
10
  <Tooltip {...args}>
@@ -5,14 +5,6 @@ its own: a plain, unstyled base for building custom icon button variants.
5
5
  For a fully-styled icon button, use IconButton instead. A `label` is
6
6
  required, since the button contains only an icon with no visible text.
7
7
 
8
- - [Icons](#icons)
9
- - [Accessibility](#accessibility)
10
- - [Disabled buttons](#disabled-buttons)
11
- - [Size](#size)
12
- - [Responsive icon sizes](#responsive-icon-sizes)
13
- - [Semantic HTML](#semantic-html)
14
- - [API](#api)
15
-
16
8
  ```tsx
17
9
  <Flex direction="column">
18
10
  <Box padding="200">
@@ -1,14 +1,6 @@
1
1
  # Hearth React
2
2
 
3
- Current version: v0.32.3
4
-
5
- - [Install Hearth](#install-hearth)
6
- - [Import CSS](#import-css)
7
- - [HearthProvider](#hearthprovider)
8
- - [Start building](#start-building)
9
- - [CSS reset](#css-reset)
10
- - [Portals](#portals)
11
- - [React DevTools](#react-devtools)
3
+ Current version: v0.33.1
12
4
 
13
5
  ## Install Hearth
14
6
 
@@ -1,26 +1,5 @@
1
1
  # Migration from Web UI
2
2
 
3
- - [Components](#components)
4
- - [Stack](#stack)
5
- - [Grid](#grid)
6
- - [Spacer](#spacer)
7
- - [CheckboxGridGroup and RadioGridGroup](#checkboxgridgroup-and-radiogridgroup)
8
- - [Typography](#typography)
9
- - [Button](#button)
10
- - [Link](#link)
11
- - [Badge](#badge)
12
- - [Inputs](#inputs)
13
- - [Polymorphism](#polymorphism)
14
- - [Styling](#styling)
15
- - [Interoperability](#interoperability)
16
- - [ThemeProvider](#themeprovider)
17
- - [Portals](#portals)
18
- - [The sx prop and styled method API](#the-sx-prop-and-styled-method-api)
19
- - [Tokens](#tokens)
20
- - [Responsive props](#responsive-props)
21
- - [Common props](#common-props)
22
- - [Contextual colours](#contextual-colours)
23
-
24
3
  ### Stack
25
4
 
26
5
  This component from Web UI has not been implemented in **Hearth React**. We
package/public/llms.txt CHANGED
@@ -91,6 +91,7 @@
91
91
  - [Tabs](llms/components/tabs.md): Use Tabs to organize and navigate between content sections within the same
92
92
  - [TextArea](llms/components/text-area.md): Use TextArea for a multi-line text input, such as a comment, message, or
93
93
  - [TextInput](llms/components/text-input.md): Use TextInput for a single-line text or data entry field. For passwords,
94
+ - [Timeline](llms/components/timeline.md): Use Timeline to show a sequence of events or steps, each rendered as a
94
95
  - [Toast](llms/components/toast.md): Use Toast for a brief, non-intrusive message that provides feedback on an
95
96
  - [ToggleButton](llms/components/toggle-button.md): Use ToggleButton as a standalone toggle option within a ToggleGroup, when
96
97
  - [ToggleButtonCard](llms/components/toggle-button-card.md): ```tsx