@tempoxyz/ds 0.3.11 → 0.3.13

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 (212) hide show
  1. package/README.md +7 -6
  2. package/dist/docs/AGENTS.md +8 -5
  3. package/dist/docs/index.md +143 -135
  4. package/dist/docs/marketing/introduction/getting-started.md +241 -0
  5. package/dist/docs/{components → product/components}/accordion.md +8 -8
  6. package/dist/docs/{components → product/components}/address-card.md +5 -5
  7. package/dist/docs/{components → product/components}/agent-logo.md +5 -5
  8. package/dist/docs/{components → product/components}/alert-dialog.md +11 -11
  9. package/dist/docs/{components → product/components}/alert.md +11 -11
  10. package/dist/docs/{components → product/components}/amount-input.md +13 -13
  11. package/dist/docs/{components → product/components}/amount.md +8 -8
  12. package/dist/docs/{components → product/components}/app-shell.md +13 -13
  13. package/dist/docs/{components → product/components}/asset-chip.md +11 -11
  14. package/dist/docs/{components → product/components}/autocomplete.md +10 -9
  15. package/dist/docs/{components → product/components}/avatar.md +8 -8
  16. package/dist/docs/{components → product/components}/badge.md +9 -9
  17. package/dist/docs/{components → product/components}/badged-logo.md +6 -6
  18. package/dist/docs/{components → product/components}/banner.md +8 -8
  19. package/dist/docs/{components → product/components}/bar-chart.md +7 -7
  20. package/dist/docs/{components → product/components}/breadcrumbs.md +8 -8
  21. package/dist/docs/{components → product/components}/button-group.md +8 -8
  22. package/dist/docs/{components → product/components}/button.md +17 -17
  23. package/dist/docs/{components → product/components}/calendar.md +8 -8
  24. package/dist/docs/{components → product/components}/callout.md +5 -5
  25. package/dist/docs/{components → product/components}/checkbox-group.md +13 -13
  26. package/dist/docs/{components → product/components}/checkbox.md +12 -12
  27. package/dist/docs/{components → product/components}/choice-group.md +14 -14
  28. package/dist/docs/{components → product/components}/choicebox.md +9 -9
  29. package/dist/docs/{components → product/components}/code.md +5 -5
  30. package/dist/docs/{components → product/components}/combobox.md +9 -9
  31. package/dist/docs/{components → product/components}/container.md +7 -7
  32. package/dist/docs/{components → product/components}/copy-button.md +13 -13
  33. package/dist/docs/{components → product/components}/date-picker.md +11 -11
  34. package/dist/docs/{components → product/components}/dialog.md +17 -17
  35. package/dist/docs/{components → product/components}/drawer.md +11 -11
  36. package/dist/docs/{components → product/components}/empty.md +9 -9
  37. package/dist/docs/{components → product/components}/field.md +14 -14
  38. package/dist/docs/{components → product/components}/fieldset.md +6 -6
  39. package/dist/docs/{components → product/components}/frame.md +9 -9
  40. package/dist/docs/{components → product/components}/gauge.md +7 -7
  41. package/dist/docs/{components → product/components}/get-started-visual.md +4 -4
  42. package/dist/docs/{components → product/components}/grid.md +7 -7
  43. package/dist/docs/{components → product/components}/hero-visual.md +4 -4
  44. package/dist/docs/{components → product/components}/hex.md +9 -9
  45. package/dist/docs/{components → product/components}/icon-tile.md +8 -8
  46. package/dist/docs/{components → product/components}/identicon.md +7 -7
  47. package/dist/docs/{components → product/components}/inline.md +7 -7
  48. package/dist/docs/{components → product/components}/inset.md +8 -8
  49. package/dist/docs/{components → product/components}/kbd.md +8 -8
  50. package/dist/docs/{components → product/components}/list-group.md +24 -24
  51. package/dist/docs/{components → product/components}/loading-dots.md +8 -8
  52. package/dist/docs/{components → product/components}/menu.md +14 -14
  53. package/dist/docs/{components → product/components}/native-select.md +7 -7
  54. package/dist/docs/{components → product/components}/network-logo.md +7 -7
  55. package/dist/docs/{components → product/components}/number-field.md +8 -8
  56. package/dist/docs/{components → product/components}/otp-field.md +9 -9
  57. package/dist/docs/{components → product/components}/pagination.md +8 -8
  58. package/dist/docs/{components → product/components}/popover.md +11 -11
  59. package/dist/docs/{components → product/components}/progress.md +10 -10
  60. package/dist/docs/{components → product/components}/qr.md +8 -8
  61. package/dist/docs/{components → product/components}/radio-group.md +10 -10
  62. package/dist/docs/{components → product/components}/secret-value.md +8 -8
  63. package/dist/docs/{components → product/components}/select.md +13 -13
  64. package/dist/docs/{components → product/components}/separator.md +7 -7
  65. package/dist/docs/{components → product/components}/sidebar-menu.md +11 -11
  66. package/dist/docs/{components → product/components}/skeleton.md +9 -9
  67. package/dist/docs/{components → product/components}/slider.md +8 -8
  68. package/dist/docs/{components → product/components}/snippet.md +10 -10
  69. package/dist/docs/{components → product/components}/spinner.md +12 -12
  70. package/dist/docs/{components → product/components}/split-bar.md +5 -5
  71. package/dist/docs/{components → product/components}/split-button.md +11 -11
  72. package/dist/docs/{components → product/components}/stack.md +8 -8
  73. package/dist/docs/{components → product/components}/status-chip.md +7 -7
  74. package/dist/docs/{components → product/components}/status-indicator.md +6 -6
  75. package/dist/docs/{components → product/components}/status-row.md +7 -7
  76. package/dist/docs/{components → product/components}/stepper.md +9 -9
  77. package/dist/docs/{components → product/components}/success-hero.md +5 -5
  78. package/dist/docs/{components → product/components}/surface.md +11 -11
  79. package/dist/docs/{components → product/components}/switch.md +11 -11
  80. package/dist/docs/{components → product/components}/table.md +16 -16
  81. package/dist/docs/{components → product/components}/tabs.md +11 -11
  82. package/dist/docs/{components → product/components}/tempo-logo.md +4 -4
  83. package/dist/docs/{components → product/components}/text-input.md +14 -14
  84. package/dist/docs/{components → product/components}/textarea.md +7 -7
  85. package/dist/docs/{components → product/components}/toast.md +11 -11
  86. package/dist/docs/{components → product/components}/token-logo.md +16 -16
  87. package/dist/docs/{components → product/components}/token.md +10 -10
  88. package/dist/docs/{components → product/components}/tooltip.md +11 -11
  89. package/dist/docs/{components → product/components}/verification-code.md +4 -4
  90. package/dist/docs/{components → product/components}/visual.md +5 -5
  91. package/dist/docs/product/components.md +203 -0
  92. package/dist/docs/{foundations → product/foundations}/accessibility.md +16 -16
  93. package/dist/docs/{foundations → product/foundations}/agents.md +17 -17
  94. package/dist/docs/{foundations → product/foundations}/color.md +7 -7
  95. package/dist/docs/{foundations → product/foundations}/content/tone.md +7 -7
  96. package/dist/docs/{foundations → product/foundations}/content/voice.md +2 -2
  97. package/dist/docs/{foundations → product/foundations}/content/writing-style.md +8 -8
  98. package/dist/docs/{foundations → product/foundations}/iconography.md +11 -11
  99. package/dist/docs/{foundations → product/foundations}/intent.md +28 -28
  100. package/dist/docs/{foundations → product/foundations}/layout.md +22 -22
  101. package/dist/docs/product/foundations/linter.md +496 -0
  102. package/dist/docs/{foundations → product/foundations}/motion.md +7 -7
  103. package/dist/docs/{foundations → product/foundations}/radius-and-padding.md +3 -3
  104. package/dist/docs/{foundations → product/foundations}/typography.md +4 -4
  105. package/dist/docs/{introduction → product/introduction}/faq.md +22 -21
  106. package/dist/docs/{introduction → product/introduction}/getting-started.md +4 -4
  107. package/dist/docs/{patterns → product/patterns}/blockchain-values.md +20 -20
  108. package/dist/docs/{patterns → product/patterns}/dashboards.md +28 -28
  109. package/dist/docs/{patterns → product/patterns}/destructive-actions.md +16 -16
  110. package/dist/docs/{patterns → product/patterns}/empty-states.md +14 -14
  111. package/dist/docs/{patterns → product/patterns}/errors-and-validation.md +23 -23
  112. package/dist/docs/{patterns → product/patterns}/feedback-and-status.md +31 -31
  113. package/dist/docs/{patterns → product/patterns}/forms.md +24 -24
  114. package/dist/docs/{patterns → product/patterns}/loading.md +19 -19
  115. package/dist/docs/{patterns → product/patterns}/navigation.md +23 -23
  116. package/dist/docs/{patterns → product/patterns}/payments.md +20 -20
  117. package/dist/docs/{patterns → product/patterns}/responsive-layout.md +23 -23
  118. package/dist/docs/{patterns → product/patterns}/tables-and-lists.md +19 -19
  119. package/dist/docs/{products → product/products}/tempo-console.md +12 -12
  120. package/dist/docs/{products → product/products}/tempo-performance.md +11 -11
  121. package/dist/docs/{products → product/products}/tempo-wallet.md +12 -12
  122. package/dist/marketing/index.d.ts +4 -0
  123. package/dist/marketing/index.d.ts.map +1 -0
  124. package/dist/marketing/index.js +4 -0
  125. package/dist/marketing/index.js.map +1 -0
  126. package/dist/marketing/index.js.zyzz.json +1 -0
  127. package/dist/marketing/vars.d.ts +907 -0
  128. package/dist/marketing/vars.d.ts.map +1 -0
  129. package/dist/marketing/vars.js +15 -0
  130. package/dist/marketing/vars.js.map +1 -0
  131. package/dist/marketing/vars.js.zyzz.json +1 -0
  132. package/dist/marketing/zyzz.config.d.ts +4512 -0
  133. package/dist/marketing/zyzz.config.d.ts.map +1 -0
  134. package/dist/marketing/zyzz.config.js +63 -0
  135. package/dist/marketing/zyzz.config.js.map +1 -0
  136. package/dist/marketing/zyzz.config.js.zyzz.json +1 -0
  137. package/dist/oxlint/index.d.ts +12 -1
  138. package/dist/oxlint/index.d.ts.map +1 -1
  139. package/dist/oxlint/index.js +39 -1
  140. package/dist/oxlint/index.js.map +1 -1
  141. package/dist/oxlint/internal/Docs.d.ts +9 -0
  142. package/dist/oxlint/internal/Docs.d.ts.map +1 -0
  143. package/dist/oxlint/internal/Docs.js +15 -0
  144. package/dist/oxlint/internal/Docs.js.map +1 -0
  145. package/dist/oxlint/internal/Imports.d.ts +1 -1
  146. package/dist/oxlint/internal/Imports.d.ts.map +1 -1
  147. package/dist/oxlint/internal/Imports.js +2 -0
  148. package/dist/oxlint/internal/Imports.js.map +1 -1
  149. package/dist/oxlint/internal/Styles.d.ts +40 -0
  150. package/dist/oxlint/internal/Styles.d.ts.map +1 -0
  151. package/dist/oxlint/internal/Styles.js +194 -0
  152. package/dist/oxlint/internal/Styles.js.map +1 -0
  153. package/dist/oxlint/internal/Tokens.d.ts +16 -0
  154. package/dist/oxlint/internal/Tokens.d.ts.map +1 -0
  155. package/dist/oxlint/internal/Tokens.js +39 -0
  156. package/dist/oxlint/internal/Tokens.js.map +1 -0
  157. package/dist/oxlint/rules/NoCrossSurface.d.ts +2 -2
  158. package/dist/oxlint/rules/NoCrossSurface.js +3 -3
  159. package/dist/oxlint/rules/NoCrossSurface.js.map +1 -1
  160. package/dist/oxlint/rules/NoCustomValues.d.ts +11 -0
  161. package/dist/oxlint/rules/NoCustomValues.d.ts.map +1 -0
  162. package/dist/oxlint/rules/NoCustomValues.js +150 -0
  163. package/dist/oxlint/rules/NoCustomValues.js.map +1 -0
  164. package/dist/oxlint/rules/NoSingleKeyShortcuts.d.ts +11 -0
  165. package/dist/oxlint/rules/NoSingleKeyShortcuts.d.ts.map +1 -0
  166. package/dist/oxlint/rules/NoSingleKeyShortcuts.js +158 -0
  167. package/dist/oxlint/rules/NoSingleKeyShortcuts.js.map +1 -0
  168. package/dist/oxlint/rules/PreferComponent.d.ts +3 -2
  169. package/dist/oxlint/rules/PreferComponent.d.ts.map +1 -1
  170. package/dist/oxlint/rules/PreferComponent.js +11 -4
  171. package/dist/oxlint/rules/PreferComponent.js.map +1 -1
  172. package/dist/oxlint/rules/PreferLayout.d.ts +9 -0
  173. package/dist/oxlint/rules/PreferLayout.d.ts.map +1 -0
  174. package/dist/oxlint/rules/PreferLayout.js +90 -0
  175. package/dist/oxlint/rules/PreferLayout.js.map +1 -0
  176. package/dist/oxlint/rules/PreferProgress.d.ts +9 -0
  177. package/dist/oxlint/rules/PreferProgress.d.ts.map +1 -0
  178. package/dist/oxlint/rules/PreferProgress.js +43 -0
  179. package/dist/oxlint/rules/PreferProgress.js.map +1 -0
  180. package/dist/oxlint/rules/PreferSurface.d.ts +9 -0
  181. package/dist/oxlint/rules/PreferSurface.d.ts.map +1 -0
  182. package/dist/oxlint/rules/PreferSurface.js +55 -0
  183. package/dist/oxlint/rules/PreferSurface.js.map +1 -0
  184. package/dist/oxlint/rules/RequireAccessibleName.d.ts.map +1 -1
  185. package/dist/oxlint/rules/RequireAccessibleName.js +3 -1
  186. package/dist/oxlint/rules/RequireAccessibleName.js.map +1 -1
  187. package/dist/oxlint/rules/RequireScrollRegion.d.ts +11 -0
  188. package/dist/oxlint/rules/RequireScrollRegion.d.ts.map +1 -0
  189. package/dist/oxlint/rules/RequireScrollRegion.js +71 -0
  190. package/dist/oxlint/rules/RequireScrollRegion.js.map +1 -0
  191. package/dist/web/icons/index.js.zyzz.json +1 -0
  192. package/package.json +6 -1
  193. package/src/marketing/README.md +21 -0
  194. package/src/marketing/index.ts +3 -0
  195. package/src/marketing/vars.ts +751 -0
  196. package/src/marketing/zyzz.config.ts +376 -0
  197. package/src/oxlint/index.ts +40 -1
  198. package/src/oxlint/internal/Docs.ts +18 -0
  199. package/src/oxlint/internal/Imports.ts +2 -1
  200. package/src/oxlint/internal/Styles.ts +240 -0
  201. package/src/oxlint/internal/Tokens.ts +43 -0
  202. package/src/oxlint/rules/NoCrossSurface.ts +3 -3
  203. package/src/oxlint/rules/NoCustomValues.ts +170 -0
  204. package/src/oxlint/rules/NoSingleKeyShortcuts.ts +190 -0
  205. package/src/oxlint/rules/PreferComponent.ts +11 -4
  206. package/src/oxlint/rules/PreferLayout.ts +96 -0
  207. package/src/oxlint/rules/PreferProgress.ts +49 -0
  208. package/src/oxlint/rules/PreferSurface.ts +70 -0
  209. package/src/oxlint/rules/RequireAccessibleName.ts +3 -1
  210. package/src/oxlint/rules/RequireScrollRegion.ts +92 -0
  211. package/dist/docs/components.md +0 -203
  212. package/dist/docs/foundations/linter.md +0 -296
@@ -206,16 +206,16 @@ import { Field } from '@tempoxyz/ds'
206
206
 
207
207
  ### When to Use
208
208
 
209
- * Label an input control, such as [TextInput](/docs/components/text-input), [AmountInput](/docs/components/amount-input), [Textarea](/docs/components/textarea), [Select](/docs/components/select), or [Combobox](/docs/components/combobox).
209
+ * Label an input control, such as [TextInput](text-input.md), [AmountInput](amount-input.md), [Textarea](textarea.md), [Select](select.md), or [Combobox](combobox.md).
210
210
  * Attach a hint or an error to that control.
211
- * Put a [Checkbox](/docs/components/checkbox) or radio on one row with its label through `Field.Item`.
212
- * Label a [Switch](/docs/components/switch) above it, with its description below.
211
+ * Put a [Checkbox](checkbox.md) or radio on one row with its label through `Field.Item`.
212
+ * Label a [Switch](switch.md) above it, with its description below.
213
213
 
214
214
  ### When Not to Use
215
215
 
216
- * Use [Fieldset](/docs/components/fieldset) to name a group of related fields, such as a billing address.
217
- * Use [ListGroup](/docs/components/list-group) for read-only details.
218
- * Use an [Alert](/docs/components/alert) above the form to summarize a failed submission.
216
+ * Use [Fieldset](fieldset.md) to name a group of related fields, such as a billing address.
217
+ * Use [ListGroup](list-group.md) for read-only details.
218
+ * Use an [Alert](alert.md) above the form to summarize a failed submission.
219
219
 
220
220
  ### Give Every Control a Visible Label
221
221
 
@@ -392,7 +392,7 @@ namespace styles {
392
392
 
393
393
  ### Validate When the Value Is Complete
394
394
 
395
- `Field.Root` validates on submit, then on each change after a failed submit. For format checks, such as a URL, set `validationMode="onBlur"`. Pass `validate` for custom rules. If another library owns validation, set `invalid`. See [Errors and Validation](/docs/patterns/errors-and-validation).
395
+ `Field.Root` validates on submit, then on each change after a failed submit. For format checks, such as a URL, set `validationMode="onBlur"`. Pass `validate` for custom rules. If another library owns validation, set `invalid`. See [Errors and Validation](../patterns/errors-and-validation.md).
396
396
 
397
397
  **Do:** Leave a partial value unmarked until focus leaves the field.
398
398
 
@@ -527,7 +527,7 @@ namespace styles {
527
527
 
528
528
  ## Accessibility
529
529
 
530
- A field connects a control to its label, description, and error. See [Accessibility](/docs/foundations/accessibility) for the baseline.
530
+ A field connects a control to its label, description, and error. See [Accessibility](../foundations/accessibility.md) for the baseline.
531
531
 
532
532
  ### Semantics
533
533
 
@@ -545,26 +545,26 @@ A field connects a control to its label, description, and error. See [Accessibil
545
545
  * **Focus the First Error:** The error is not a live region. If a submit fails, focus the first invalid field.
546
546
  * **Confirm Success in Text (success):** The `success` check sets no ARIA state and isn't announced. Confirm a verified value in text.
547
547
  * **State Requirements:** State requirements and formats in text, such as "(required)" in the label, not only with a symbol.
548
- * **Label a Date Picker Trigger (aria-labelledby):** `Field.Label` doesn't name a [DatePicker](/docs/components/date-picker) trigger. Point `aria-labelledby` at a visible label.
548
+ * **Label a Date Picker Trigger (aria-labelledby):** `Field.Label` doesn't name a [DatePicker](date-picker.md) trigger. Point `aria-labelledby` at a visible label.
549
549
 
550
550
  ## Related
551
551
 
552
- [TextInput](/docs/components/text-input)
552
+ [TextInput](text-input.md)
553
553
 
554
554
  Use for single-line text.
555
555
 
556
- [Fieldset](/docs/components/fieldset)
556
+ [Fieldset](fieldset.md)
557
557
 
558
558
  Use for grouping fields under a legend.
559
559
 
560
- [Textarea](/docs/components/textarea)
560
+ [Textarea](textarea.md)
561
561
 
562
562
  Use for multi-line text.
563
563
 
564
- [Forms](/docs/patterns/forms)
564
+ [Forms](../patterns/forms.md)
565
565
 
566
566
  Covers laying out and submitting forms.
567
567
 
568
- [Errors and Validation](/docs/patterns/errors-and-validation)
568
+ [Errors and Validation](../patterns/errors-and-validation.md)
569
569
 
570
570
  Covers when and how to show errors.
@@ -99,9 +99,9 @@ import { Field, Fieldset } from '@tempoxyz/ds'
99
99
 
100
100
  ### When Not to Use
101
101
 
102
- * Use [Field](/docs/components/field) alone for a single control. A fieldset around one field repeats its label.
102
+ * Use [Field](field.md) alone for a single control. A fieldset around one field repeats its label.
103
103
  * Use a heading for a page section with no form controls.
104
- * Use [Stepper](/docs/components/stepper) to split a long form into steps, not many fieldsets on one screen.
104
+ * Use [Stepper](stepper.md) to split a long form into steps, not many fieldsets on one screen.
105
105
 
106
106
  ### Write the Legend as the Group's Topic
107
107
 
@@ -381,18 +381,18 @@ A fieldset renders a native `<fieldset>` named by its legend. Screen readers rea
381
381
 
382
382
  ## Related
383
383
 
384
- [Field](/docs/components/field)
384
+ [Field](field.md)
385
385
 
386
386
  Use for labelling a single control.
387
387
 
388
- [RadioGroup](/docs/components/radio-group)
388
+ [RadioGroup](radio-group.md)
389
389
 
390
390
  Use for one choice from a group.
391
391
 
392
- [CheckboxGroup](/docs/components/checkbox-group)
392
+ [CheckboxGroup](checkbox-group.md)
393
393
 
394
394
  Use for several choices from a group.
395
395
 
396
- [Forms](/docs/patterns/forms)
396
+ [Forms](../patterns/forms.md)
397
397
 
398
398
  Covers laying out groups of fields.
@@ -6,7 +6,7 @@ Lays out a header, body, and footer in a column.
6
6
 
7
7
  ## Overview
8
8
 
9
- A frame lays out a header, body, and footer in a column with no fill. Wrap it in a [Surface](/docs/components/surface) for a card, or put it in a [Dialog](/docs/components/dialog) or [Drawer](/docs/components/drawer) popup.
9
+ A frame lays out a header, body, and footer in a column with no fill. Wrap it in a [Surface](surface.md) for a card, or put it in a [Dialog](dialog.md) or [Drawer](drawer.md) popup.
10
10
 
11
11
  The actions share the width of the footer equally.
12
12
 
@@ -151,13 +151,13 @@ import { Frame } from '@tempoxyz/ds'
151
151
 
152
152
  ### When Not to Use
153
153
 
154
- * Use [Surface](/docs/components/surface) with `Surface.Header` and `Surface.Title` for a card with only a heading and content.
155
- * Use [AppShell](/docs/components/app-shell) for the frame of a whole page.
156
- * Use [Stack](/docs/components/stack) for a plain column without a header or footer.
154
+ * Use [Surface](surface.md) with `Surface.Header` and `Surface.Title` for a card with only a heading and content.
155
+ * Use [AppShell](app-shell.md) for the frame of a whole page.
156
+ * Use [Stack](stack.md) for a plain column without a header or footer.
157
157
 
158
158
  ### Put Actions in the Footer
159
159
 
160
- Put `Frame.Actions` inside `Frame.Footer`, in the [Button](/docs/components/button) order. `Frame.Body` grows to fill the frame, so the footer stays at the bottom of a tall container, such as a dialog popup. The body never scrolls, so let the container handle overflow.
160
+ Put `Frame.Actions` inside `Frame.Footer`, in the [Button](button.md) order. `Frame.Body` grows to fill the frame, so the footer stays at the bottom of a tall container, such as a dialog popup. The body never scrolls, so let the container handle overflow.
161
161
 
162
162
  **Do:** Keep the actions in `Frame.Footer`, at the bottom of the frame.
163
163
 
@@ -417,18 +417,18 @@ A frame adds headings and an optional close button. It doesn't move or trap focu
417
417
 
418
418
  ## Related
419
419
 
420
- [Surface](/docs/components/surface)
420
+ [Surface](surface.md)
421
421
 
422
422
  Use for the card around a frame.
423
423
 
424
- [Dialog](/docs/components/dialog)
424
+ [Dialog](dialog.md)
425
425
 
426
426
  Use for frames that open over the page.
427
427
 
428
- [Drawer](/docs/components/drawer)
428
+ [Drawer](drawer.md)
429
429
 
430
430
  Use for side panels.
431
431
 
432
- [Button](/docs/components/button)
432
+ [Button](button.md)
433
433
 
434
434
  Use for ordering actions.
@@ -113,9 +113,9 @@ import { Gauge } from '@tempoxyz/ds'
113
113
 
114
114
  ### When Not to Use
115
115
 
116
- * Use [Progress](/docs/components/progress) for a task that advances, such as an upload.
117
- * Use [Skeleton](/docs/components/skeleton) or [Spinner](/docs/components/spinner) while the measurement loads.
118
- * Use [Slider](/docs/components/slider) when the user sets the value.
116
+ * Use [Progress](progress.md) for a task that advances, such as an upload.
117
+ * Use [Skeleton](skeleton.md) or [Spinner](spinner.md) while the measurement loads.
118
+ * Use [Slider](slider.md) when the user sets the value.
119
119
  * Use plain text if the value has no fixed maximum, such as 4,812 TPS.
120
120
 
121
121
  ### Show the Value in Text
@@ -254,7 +254,7 @@ namespace styles {
254
254
 
255
255
  * **Most Measurements (neutral):** The default, for a measurement such as API requests against a quota.
256
256
  * **Full Is Good (positive):** A measurement where a full value is good, such as 100% uptime.
257
- * **Nearing a Limit (Alert):** There is no `warning` intent. Add a `warning` [Alert](/docs/components/alert) with the next step.
257
+ * **Nearing a Limit (Alert):** There is no `warning` intent. Add a `warning` [Alert](alert.md) with the next step.
258
258
 
259
259
  ### Match Size to Context
260
260
 
@@ -286,14 +286,14 @@ A gauge renders a `meter`. It follows the [WAI-ARIA Authoring Practices meter pa
286
286
 
287
287
  ## Related
288
288
 
289
- [Progress](/docs/components/progress)
289
+ [Progress](progress.md)
290
290
 
291
291
  Use for a task that advances.
292
292
 
293
- [Alert](/docs/components/alert)
293
+ [Alert](alert.md)
294
294
 
295
295
  Use for a warning when usage nears a limit.
296
296
 
297
- [Dashboards](/docs/patterns/dashboards)
297
+ [Dashboards](../patterns/dashboards.md)
298
298
 
299
299
  Covers laying out metric tiles.
@@ -78,8 +78,8 @@ import { GetStartedVisual } from '@tempoxyz/ds'
78
78
 
79
79
  ### When Not to Use
80
80
 
81
- * Use [Visual](/docs/components/visual) for the top of a modal.
82
- * Use [IconTile](/docs/components/icon-tile) for a step that needs only an icon.
81
+ * Use [Visual](visual.md) for the top of a modal.
82
+ * Use [IconTile](icon-tile.md) for a step that needs only an icon.
83
83
 
84
84
  ### Match the Artwork to the Step
85
85
 
@@ -108,10 +108,10 @@ The visual renders a `<div>` with no role and takes no focus. Screen readers ski
108
108
 
109
109
  ## Related
110
110
 
111
- [Visual](/docs/components/visual)
111
+ [Visual](visual.md)
112
112
 
113
113
  Use for the illustration at the top of a modal.
114
114
 
115
- [HeroVisual](/docs/components/hero-visual)
115
+ [HeroVisual](hero-visual.md)
116
116
 
117
117
  Use for the hero card beside a setup flow.
@@ -139,8 +139,8 @@ import { Grid } from '@tempoxyz/ds'
139
139
 
140
140
  ### When Not to Use
141
141
 
142
- * Use [Table](/docs/components/table) for records to compare across columns, such as transactions.
143
- * Use [Stack](/docs/components/stack) for one column, and [Inline](/docs/components/inline) for one row.
142
+ * Use [Table](table.md) for records to compare across columns, such as transactions.
143
+ * Use [Stack](stack.md) for one column, and [Inline](inline.md) for one row.
144
144
 
145
145
  ### Prefer Fit Over Fixed Columns
146
146
 
@@ -245,7 +245,7 @@ namespace styles {
245
245
 
246
246
  ### Change Columns at Breakpoints
247
247
 
248
- If a layout needs a set count per width, change `gridTemplateColumns` under a [breakpoint](/docs/foundations/layout#breakpoints) key. Write the narrowest layout as the base style.
248
+ If a layout needs a set count per width, change `gridTemplateColumns` under a [breakpoint](../foundations/layout.md#breakpoints) key. Write the narrowest layout as the base style.
249
249
 
250
250
  * **Base (0 to 767px):** One column on phones, with no media key.
251
251
  * **Tablet ('@media 768'):** More columns from 48rem.
@@ -271,18 +271,18 @@ Grid has no role, name, or keyboard behavior.
271
271
 
272
272
  ## Related
273
273
 
274
- [Surface](/docs/components/surface)
274
+ [Surface](surface.md)
275
275
 
276
276
  Use for the cards inside a grid.
277
277
 
278
- [Table](/docs/components/table)
278
+ [Table](table.md)
279
279
 
280
280
  Use for comparing records.
281
281
 
282
- [Dashboards](/docs/patterns/dashboards)
282
+ [Dashboards](../patterns/dashboards.md)
283
283
 
284
284
  Covers metric tile layouts.
285
285
 
286
- [Responsive Layout](/docs/patterns/responsive-layout)
286
+ [Responsive Layout](../patterns/responsive-layout.md)
287
287
 
288
288
  Covers adapting pages across breakpoints.
@@ -101,8 +101,8 @@ import { HeroVisual } from '@tempoxyz/ds'
101
101
 
102
102
  ### When Not to Use
103
103
 
104
- * Use [SuccessHero](/docs/components/success-hero) once the flow finishes.
105
- * Use [GetStartedVisual](/docs/components/get-started-visual) for the cards of a get started list.
104
+ * Use [SuccessHero](success-hero.md) once the flow finishes.
105
+ * Use [GetStartedVisual](get-started-visual.md) for the cards of a get started list.
106
106
 
107
107
  ### Advance the Step With the Flow
108
108
 
@@ -146,10 +146,10 @@ The card renders a `<div>` with no role. Screen readers skip the artwork and the
146
146
 
147
147
  ## Related
148
148
 
149
- [SuccessHero](/docs/components/success-hero)
149
+ [SuccessHero](success-hero.md)
150
150
 
151
151
  Use for the confirmation after the flow finishes.
152
152
 
153
- [Stepper](/docs/components/stepper)
153
+ [Stepper](stepper.md)
154
154
 
155
155
  Use for the steps beside the card.
@@ -195,9 +195,9 @@ import { Hex } from '@tempoxyz/ds'
195
195
 
196
196
  ### When Not to Use
197
197
 
198
- * Use [SecretValue](/docs/components/secret-value) for private keys and other secrets. Hex shows its value in the clear.
199
- * Use [Snippet](/docs/components/snippet) for URLs, commands, and other values that aren't hex.
200
- * Use [CopyButton](/docs/components/copy-button) alone when the value isn't displayed.
198
+ * Use [SecretValue](secret-value.md) for private keys and other secrets. Hex shows its value in the clear.
199
+ * Use [Snippet](snippet.md) for URLs, commands, and other values that aren't hex.
200
+ * Use [CopyButton](copy-button.md) alone when the value isn't displayed.
201
201
 
202
202
  ### Always Offer Copy
203
203
 
@@ -245,7 +245,7 @@ export function Demo() {
245
245
 
246
246
  ### Truncate in the Middle
247
247
 
248
- People check an address by its first and last characters. For plain strings, such as a [Toast](/docs/components/toast) message, `formatHex` keeps both ends too.
248
+ People check an address by its first and last characters. For plain strings, such as a [Toast](toast.md) message, `formatHex` keeps both ends too.
249
249
 
250
250
  **Do:** Keep both ends of the value visible.
251
251
 
@@ -466,22 +466,22 @@ Hex renders a `<span>` with the truncated value on screen and the full value for
466
466
 
467
467
  ## Related
468
468
 
469
- [CopyButton](/docs/components/copy-button)
469
+ [CopyButton](copy-button.md)
470
470
 
471
471
  Use for copying without a visible value.
472
472
 
473
- [Identicon](/docs/components/identicon)
473
+ [Identicon](identicon.md)
474
474
 
475
475
  Use for an image beside an address.
476
476
 
477
- [SecretValue](/docs/components/secret-value)
477
+ [SecretValue](secret-value.md)
478
478
 
479
479
  Use for secrets.
480
480
 
481
- [Snippet](/docs/components/snippet)
481
+ [Snippet](snippet.md)
482
482
 
483
483
  Use for commands and URLs.
484
484
 
485
- [Blockchain Values](/docs/patterns/blockchain-values)
485
+ [Blockchain Values](../patterns/blockchain-values.md)
486
486
 
487
487
  Covers addresses, hashes, and amounts.
@@ -81,10 +81,10 @@ import { IconTile } from '@tempoxyz/ds'
81
81
 
82
82
  ### When Not to Use
83
83
 
84
- * Use [Avatar](/docs/components/avatar) with an icon to lead a list row, such as a wallet or app.
85
- * Use [Button](/docs/components/button) with `shape="icon"` for an icon that does something. The chip isn't interactive.
86
- * Use [Badge](/docs/components/badge) to show a status.
87
- * Use [Visual](/docs/components/visual) for an illustrated onboarding or feature modal. Never pair the two.
84
+ * Use [Avatar](avatar.md) with an icon to lead a list row, such as a wallet or app.
85
+ * Use [Button](button.md) with `shape="icon"` for an icon that does something. The chip isn't interactive.
86
+ * Use [Badge](badge.md) to show a status.
87
+ * Use [Visual](visual.md) for an illustrated onboarding or feature modal. Never pair the two.
88
88
 
89
89
  ### Pair the Chip With a Title
90
90
 
@@ -275,18 +275,18 @@ An icon tile renders a `<span>` with no role and takes no focus. The icon inside
275
275
 
276
276
  ## Related
277
277
 
278
- [Avatar](/docs/components/avatar)
278
+ [Avatar](avatar.md)
279
279
 
280
280
  Use for people, contacts, and wallets in list rows.
281
281
 
282
- [Button](/docs/components/button)
282
+ [Button](button.md)
283
283
 
284
284
  Use for icon actions.
285
285
 
286
- [Visual](/docs/components/visual)
286
+ [Visual](visual.md)
287
287
 
288
288
  Use for illustrated onboarding and feature modals.
289
289
 
290
- [Iconography](/docs/foundations/iconography)
290
+ [Iconography](../foundations/iconography.md)
291
291
 
292
292
  Covers choosing icons.
@@ -100,9 +100,9 @@ import { Identicon } from '@tempoxyz/ds'
100
100
 
101
101
  ### When Not to Use
102
102
 
103
- * Use [Avatar](/docs/components/avatar) for people and organizations with a name.
104
- * Use [TokenLogo](/docs/components/token-logo) for a token contract, which has its own icon.
105
- * Use [Hex](/docs/components/hex) to read, compare, or copy the address.
103
+ * Use [Avatar](avatar.md) for people and organizations with a name.
104
+ * Use [TokenLogo](token-logo.md) for a token contract, which has its own icon.
105
+ * Use [Hex](hex.md) to read, compare, or copy the address.
106
106
 
107
107
  ### Always Show the Address Beside It
108
108
 
@@ -354,18 +354,18 @@ An identicon renders an `<svg>` with the `img` role. It takes no focus.
354
354
 
355
355
  ## Related
356
356
 
357
- [Avatar](/docs/components/avatar)
357
+ [Avatar](avatar.md)
358
358
 
359
359
  Use for people and organizations.
360
360
 
361
- [Hex](/docs/components/hex)
361
+ [Hex](hex.md)
362
362
 
363
363
  Use for showing and copying addresses.
364
364
 
365
- [TokenLogo](/docs/components/token-logo)
365
+ [TokenLogo](token-logo.md)
366
366
 
367
367
  Use for token icons.
368
368
 
369
- [Blockchain Values](/docs/patterns/blockchain-values)
369
+ [Blockchain Values](../patterns/blockchain-values.md)
370
370
 
371
371
  Covers displaying addresses.
@@ -127,9 +127,9 @@ import { Inline } from '@tempoxyz/ds'
127
127
 
128
128
  ### When Not to Use
129
129
 
130
- * Use [Stack](/docs/components/stack) for a vertical column.
131
- * Use [Grid](/docs/components/grid) to align items in rows and columns.
132
- * Use `Frame.Actions` of [Frame](/docs/components/frame) for the actions at the bottom of a card or dialog.
130
+ * Use [Stack](stack.md) for a vertical column.
131
+ * Use [Grid](grid.md) to align items in rows and columns.
132
+ * Use `Frame.Actions` of [Frame](frame.md) for the actions at the bottom of a card or dialog.
133
133
 
134
134
  ### Set Wrap When Content Varies
135
135
 
@@ -216,18 +216,18 @@ Inline has no role, name, or keyboard behavior.
216
216
 
217
217
  ## Related
218
218
 
219
- [Stack](/docs/components/stack)
219
+ [Stack](stack.md)
220
220
 
221
221
  Use for vertical spacing.
222
222
 
223
- [Button](/docs/components/button)
223
+ [Button](button.md)
224
224
 
225
225
  Use for ordering actions in a row.
226
226
 
227
- [Badge](/docs/components/badge)
227
+ [Badge](badge.md)
228
228
 
229
229
  Use for status labels.
230
230
 
231
- [Layout](/docs/foundations/layout)
231
+ [Layout](../foundations/layout.md)
232
232
 
233
233
  Covers the spacing scale.
@@ -100,13 +100,13 @@ import { Inset } from '@tempoxyz/ds'
100
100
 
101
101
  ### When Not to Use
102
102
 
103
- * Use [Surface](/docs/components/surface) for a card. Its `size` sets padding and corner radius.
104
- * Use [Container](/docs/components/container) for page gutters that grow with the viewport.
105
- * Use the `gap` of [Stack](/docs/components/stack), [Inline](/docs/components/inline), or [Grid](/docs/components/grid) for space between siblings.
103
+ * Use [Surface](surface.md) for a card. Its `size` sets padding and corner radius.
104
+ * Use [Container](container.md) for page gutters that grow with the viewport.
105
+ * Use the `gap` of [Stack](stack.md), [Inline](inline.md), or [Grid](grid.md) for space between siblings.
106
106
 
107
107
  ### Don't Double the Padding
108
108
 
109
- [Surface](/docs/components/surface), [Dialog](/docs/components/dialog), and `AppShell.Main` of [AppShell](/docs/components/app-shell) already pad their content.
109
+ [Surface](surface.md), [Dialog](dialog.md), and `AppShell.Main` of [AppShell](app-shell.md) already pad their content.
110
110
 
111
111
  **Do:** Place content directly in a Surface, so it lines up with the cards beside it.
112
112
 
@@ -192,7 +192,7 @@ namespace styles {
192
192
 
193
193
  ### Match Surface Padding
194
194
 
195
- Use `16` or `24` for most regions, so they line up with a `medium` or `large` [Surface](/docs/components/surface).
195
+ Use `16` or `24` for most regions, so they line up with a `medium` or `large` [Surface](surface.md).
196
196
 
197
197
  * **Medium (16):** Matches a `medium` Surface, such as a dashboard tile.
198
198
  * **Large (24):** Matches a `large` Surface, such as a page card.
@@ -212,14 +212,14 @@ Keep large inline padding off narrow viewports, so content [reflows](https://www
212
212
 
213
213
  ## Related
214
214
 
215
- [Surface](/docs/components/surface)
215
+ [Surface](surface.md)
216
216
 
217
217
  Use for padded cards.
218
218
 
219
- [Stack](/docs/components/stack)
219
+ [Stack](stack.md)
220
220
 
221
221
  Use for space between siblings.
222
222
 
223
- [Layout](/docs/foundations/layout)
223
+ [Layout](../foundations/layout.md)
224
224
 
225
225
  Covers the spacing scale.
@@ -138,14 +138,14 @@ import { Kbd } from '@tempoxyz/ds'
138
138
 
139
139
  ### When to Use
140
140
 
141
- * Show the shortcut beside its action, such as in a [Menu](/docs/components/menu) item, a [Tooltip](/docs/components/tooltip), or a search field hint.
141
+ * Show the shortcut beside its action, such as in a [Menu](menu.md) item, a [Tooltip](tooltip.md), or a search field hint.
142
142
  * Name keys in instructions, such as Press Esc to close.
143
143
 
144
144
  ### When Not to Use
145
145
 
146
- * Use [Snippet](/docs/components/snippet) for terminal commands.
147
- * Use [Badge](/docs/components/badge) for a status or attribute.
148
- * Use a visible [Button](/docs/components/button) to run an action. A shortcut only makes it faster.
146
+ * Use [Snippet](snippet.md) for terminal commands.
147
+ * Use [Badge](badge.md) for a status or attribute.
148
+ * Use a visible [Button](button.md) to run an action. A shortcut only makes it faster.
149
149
 
150
150
  ### Use Modifier Props
151
151
 
@@ -406,18 +406,18 @@ Kbd renders a native `<kbd>` element and is not interactive.
406
406
 
407
407
  ## Related
408
408
 
409
- [Menu](/docs/components/menu)
409
+ [Menu](menu.md)
410
410
 
411
411
  Use for actions with shortcuts.
412
412
 
413
- [Tooltip](/docs/components/tooltip)
413
+ [Tooltip](tooltip.md)
414
414
 
415
415
  Use for labelling icon buttons.
416
416
 
417
- [Snippet](/docs/components/snippet)
417
+ [Snippet](snippet.md)
418
418
 
419
419
  Use for terminal commands.
420
420
 
421
- [Badge](/docs/components/badge)
421
+ [Badge](badge.md)
422
422
 
423
423
  Use for statuses and attributes.