@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
@@ -185,17 +185,17 @@ import { Checkbox } from '@tempoxyz/ds'
185
185
 
186
186
  ### When Not to Use
187
187
 
188
- * Use [Switch](/docs/components/switch) for a setting that applies immediately.
189
- * Use [CheckboxGroup](/docs/components/checkbox-group) for several related options that share one value array.
190
- * If only one of several options can be chosen, use [RadioGroup](/docs/components/radio-group) or [ChoiceGroup](/docs/components/choice-group).
191
- * If each option needs an icon or a description, use `Choicebox.Checkbox` from [Choicebox](/docs/components/choicebox).
188
+ * Use [Switch](switch.md) for a setting that applies immediately.
189
+ * Use [CheckboxGroup](checkbox-group.md) for several related options that share one value array.
190
+ * If only one of several options can be chosen, use [RadioGroup](radio-group.md) or [ChoiceGroup](choice-group.md).
191
+ * If each option needs an icon or a description, use `Choicebox.Checkbox` from [Choicebox](choicebox.md).
192
192
 
193
193
  ### Choose Checkbox or Switch by When It Applies
194
194
 
195
195
  * **Checkbox (on submit):** Applies when the form is submitted.
196
196
  * **Switch (on change):** Applies immediately, such as Payment notifications.
197
197
 
198
- Don't put a [Switch](/docs/components/switch) in a form that ends with Save, or a checkbox in a settings list that saves on change.
198
+ Don't put a [Switch](switch.md) in a form that ends with Save, or a checkbox in a settings list that saves on change.
199
199
 
200
200
  ### Write the Label as the Checked Statement
201
201
 
@@ -247,7 +247,7 @@ export function Demo() {
247
247
 
248
248
  ### Make the Label Toggle the Box
249
249
 
250
- Pair the checkbox with `Field.Item` and `Field.Label` from [Field](/docs/components/field), or wrap both in a `<label>`. Pressing the text then toggles the box.
250
+ Pair the checkbox with `Field.Item` and `Field.Label` from [Field](field.md), or wrap both in a `<label>`. Pressing the text then toggles the box.
251
251
 
252
252
  **Do:** Put the checkbox and its `Field.Label` in one `Field.Item`.
253
253
 
@@ -299,7 +299,7 @@ namespace styles {
299
299
 
300
300
  ### Use Indeterminate for Partial Selection Only
301
301
 
302
- Inside a [CheckboxGroup](/docs/components/checkbox-group), set `parent` instead and let the group manage the state.
302
+ Inside a [CheckboxGroup](checkbox-group.md), set `parent` instead and let the group manage the state.
303
303
 
304
304
  **Do:** Set `indeterminate` on a box that controls others while only some are checked.
305
305
 
@@ -446,22 +446,22 @@ The check animates in with a slight overshoot. Under `prefers-reduced-motion: re
446
446
 
447
447
  ## Related
448
448
 
449
- [CheckboxGroup](/docs/components/checkbox-group)
449
+ [CheckboxGroup](checkbox-group.md)
450
450
 
451
451
  Use for several related checkboxes.
452
452
 
453
- [Switch](/docs/components/switch)
453
+ [Switch](switch.md)
454
454
 
455
455
  Use for settings that apply immediately.
456
456
 
457
- [Field](/docs/components/field)
457
+ [Field](field.md)
458
458
 
459
459
  Use for the label and description.
460
460
 
461
- [Choicebox](/docs/components/choicebox)
461
+ [Choicebox](choicebox.md)
462
462
 
463
463
  Use for options that need descriptions.
464
464
 
465
- [Forms](/docs/patterns/forms)
465
+ [Forms](../patterns/forms.md)
466
466
 
467
467
  Covers placing checkboxes in a form.
@@ -214,12 +214,12 @@ import { ChoiceGroup } from '@tempoxyz/ds'
214
214
 
215
215
  ### When Not to Use
216
216
 
217
- * If options need longer labels or are submitted with a form, use [RadioGroup](/docs/components/radio-group).
218
- * Use [Select](/docs/components/select) for many options, or when space is limited.
219
- * Use [Tabs](/docs/components/tabs) to switch between panels, such as Overview, Activity, and Settings.
220
- * If each option needs an icon and a description, use [Choicebox](/docs/components/choicebox).
221
- * Use [Switch](/docs/components/switch) for an on or off setting, not On and Off segments.
222
- * Use [Button](/docs/components/button) for actions such as Send, Receive, and Swap.
217
+ * If options need longer labels or are submitted with a form, use [RadioGroup](radio-group.md).
218
+ * Use [Select](select.md) for many options, or when space is limited.
219
+ * Use [Tabs](tabs.md) to switch between panels, such as Overview, Activity, and Settings.
220
+ * If each option needs an icon and a description, use [Choicebox](choicebox.md).
221
+ * Use [Switch](switch.md) for an on or off setting, not On and Off segments.
222
+ * Use [Button](button.md) for actions such as Send, Receive, and Swap.
223
223
 
224
224
  ### Keep Options Few and Short
225
225
 
@@ -321,7 +321,7 @@ export function Demo() {
321
321
 
322
322
  ### Apply the Choice Immediately
323
323
 
324
- If the choice waits for a form submit, use [RadioGroup](/docs/components/radio-group).
324
+ If the choice waits for a form submit, use [RadioGroup](radio-group.md).
325
325
 
326
326
  **Do:** Update the view when the selection changes, such as redrawing the chart for 7D.
327
327
 
@@ -381,9 +381,9 @@ namespace styles {
381
381
 
382
382
  ### Match the Height of Nearby Controls
383
383
 
384
- `small`, `medium`, and `large` tracks are 32, 48, and 56px tall. A `medium` track fills its row and gives each item an equal width, as tall as [TextInput](/docs/components/text-input).
384
+ `small`, `medium`, and `large` tracks are 32, 48, and 56px tall. A `medium` track fills its row and gives each item an equal width, as tall as [TextInput](text-input.md).
385
385
 
386
- **Do:** Use `small` in a dashboard toolbar beside a small [Select](/docs/components/select).
386
+ **Do:** Use `small` in a dashboard toolbar beside a small [Select](select.md).
387
387
 
388
388
  ```tsx
389
389
  /**
@@ -495,22 +495,22 @@ Under `prefers-reduced-motion: reduce`, the pill moves without sliding and items
495
495
 
496
496
  ## Related
497
497
 
498
- [RadioGroup](/docs/components/radio-group)
498
+ [RadioGroup](radio-group.md)
499
499
 
500
500
  Use for one choice in a form.
501
501
 
502
- [Tabs](/docs/components/tabs)
502
+ [Tabs](tabs.md)
503
503
 
504
504
  Use for switching between panels.
505
505
 
506
- [Select](/docs/components/select)
506
+ [Select](select.md)
507
507
 
508
508
  Use for longer lists.
509
509
 
510
- [Choicebox](/docs/components/choicebox)
510
+ [Choicebox](choicebox.md)
511
511
 
512
512
  Use for options with descriptions.
513
513
 
514
- [Dashboards](/docs/patterns/dashboards)
514
+ [Dashboards](../patterns/dashboards.md)
515
515
 
516
516
  Covers filters above charts.
@@ -235,10 +235,10 @@ import { Choicebox } from '@tempoxyz/ds'
235
235
 
236
236
  ### When Not to Use
237
237
 
238
- * If a label alone tells the options apart, use [RadioGroup](/docs/components/radio-group).
239
- * Use [ChoiceGroup](/docs/components/choice-group) for a short mode switch, such as a chart's time range.
240
- * Use [Select](/docs/components/select) for more options than fit on screen.
241
- * Use [Button](/docs/components/button) for a single action, and [Menu](/docs/components/menu) for actions that need no description.
238
+ * If a label alone tells the options apart, use [RadioGroup](radio-group.md).
239
+ * Use [ChoiceGroup](choice-group.md) for a short mode switch, such as a chart's time range.
240
+ * Use [Select](select.md) for more options than fit on screen.
241
+ * Use [Button](button.md) for a single action, and [Menu](menu.md) for actions that need no description.
242
242
 
243
243
  ### Pick the Group by What a Tile Does
244
244
 
@@ -620,22 +620,22 @@ Pressed tiles scale to `scale.press` (0.98), except under `prefers-reduced-motio
620
620
 
621
621
  ## Related
622
622
 
623
- [RadioGroup](/docs/components/radio-group)
623
+ [RadioGroup](radio-group.md)
624
624
 
625
625
  Use for one choice with short labels.
626
626
 
627
- [CheckboxGroup](/docs/components/checkbox-group)
627
+ [CheckboxGroup](checkbox-group.md)
628
628
 
629
629
  Use for several choices with short labels.
630
630
 
631
- [ChoiceGroup](/docs/components/choice-group)
631
+ [ChoiceGroup](choice-group.md)
632
632
 
633
633
  Use for switching a view or mode.
634
634
 
635
- [Fieldset](/docs/components/fieldset)
635
+ [Fieldset](fieldset.md)
636
636
 
637
637
  Use for naming a group with a legend.
638
638
 
639
- [Payments](/docs/patterns/payments)
639
+ [Payments](../patterns/payments.md)
640
640
 
641
641
  Covers choosing a funding or settlement method.
@@ -50,9 +50,9 @@ import { Code } from '@tempoxyz/ds'
50
50
 
51
51
  ### When Not to Use
52
52
 
53
- * Use a [Snippet](/docs/components/snippet) for a command that people copy or a block of code.
54
- * Use [Kbd](/docs/components/kbd) for keys and shortcuts.
55
- * Use a [Badge](/docs/components/badge) for a status or an attribute.
53
+ * Use a [Snippet](snippet.md) for a command that people copy or a block of code.
54
+ * Use [Kbd](kbd.md) for keys and shortcuts.
55
+ * Use a [Badge](badge.md) for a status or an attribute.
56
56
 
57
57
  ### Keep Code Short
58
58
 
@@ -91,10 +91,10 @@ Code renders a native `<code>` element, which screen readers read as part of the
91
91
 
92
92
  ## Related
93
93
 
94
- [Snippet](/docs/components/snippet)
94
+ [Snippet](snippet.md)
95
95
 
96
96
  Use for commands that people copy.
97
97
 
98
- [Kbd](/docs/components/kbd)
98
+ [Kbd](kbd.md)
99
99
 
100
100
  Use for keys and shortcuts.
@@ -317,10 +317,10 @@ import { Combobox } from '@tempoxyz/ds'
317
317
 
318
318
  ### When Not to Use
319
319
 
320
- * If people can scan the whole list without typing, use [Select](/docs/components/select).
321
- * If any typed text is a valid value, such as a recipient address, use [Autocomplete](/docs/components/autocomplete).
322
- * Use [RadioGroup](/docs/components/radio-group) or [ChoiceGroup](/docs/components/choice-group) for a few options that fit on screen.
323
- * Use [CheckboxGroup](/docs/components/checkbox-group) for several options from a short list.
320
+ * If people can scan the whole list without typing, use [Select](select.md).
321
+ * If any typed text is a valid value, such as a recipient address, use [Autocomplete](autocomplete.md).
322
+ * Use [RadioGroup](radio-group.md) or [ChoiceGroup](choice-group.md) for a few options that fit on screen.
323
+ * Use [CheckboxGroup](checkbox-group.md) for several options from a short list.
324
324
 
325
325
  ### Keep a Visible Label
326
326
 
@@ -918,22 +918,22 @@ DOM focus stays on the input while the arrow keys move the highlight. Chips take
918
918
 
919
919
  ## Related
920
920
 
921
- [Autocomplete](/docs/components/autocomplete)
921
+ [Autocomplete](autocomplete.md)
922
922
 
923
923
  Use for free text with suggestions.
924
924
 
925
- [Select](/docs/components/select)
925
+ [Select](select.md)
926
926
 
927
927
  Use for short lists.
928
928
 
929
- [Field](/docs/components/field)
929
+ [Field](field.md)
930
930
 
931
931
  Use for the label and error.
932
932
 
933
- [TokenLogo](/docs/components/token-logo)
933
+ [TokenLogo](token-logo.md)
934
934
 
935
935
  Use for token icons in items.
936
936
 
937
- [Blockchain Values](/docs/patterns/blockchain-values)
937
+ [Blockchain Values](../patterns/blockchain-values.md)
938
938
 
939
939
  Covers showing assets and addresses.
@@ -133,9 +133,9 @@ import { Container } from '@tempoxyz/ds'
133
133
 
134
134
  ### When Not to Use
135
135
 
136
- * Use [AppShell](/docs/components/app-shell) for pages with persistent navigation. `AppShell.Main` already caps and pads the content column.
137
- * Use [Inset](/docs/components/inset) to pad content inside a region, and [Surface](/docs/components/surface) for a card.
138
- * Use [Stack](/docs/components/stack) or [Grid](/docs/components/grid) to arrange the content inside the container.
136
+ * Use [AppShell](app-shell.md) for pages with persistent navigation. `AppShell.Main` already caps and pads the content column.
137
+ * Use [Inset](inset.md) to pad content inside a region, and [Surface](surface.md) for a card.
138
+ * Use [Stack](stack.md) or [Grid](grid.md) to arrange the content inside the container.
139
139
 
140
140
  ### Pick a Size by Content
141
141
 
@@ -240,18 +240,18 @@ A container has no role, name, or keyboard behavior.
240
240
 
241
241
  ## Related
242
242
 
243
- [AppShell](/docs/components/app-shell)
243
+ [AppShell](app-shell.md)
244
244
 
245
245
  Use for pages with a sidebar.
246
246
 
247
- [Stack](/docs/components/stack)
247
+ [Stack](stack.md)
248
248
 
249
249
  Use for spacing content inside the container.
250
250
 
251
- [Layout](/docs/foundations/layout)
251
+ [Layout](../foundations/layout.md)
252
252
 
253
253
  Covers widths, spacing, and breakpoints.
254
254
 
255
- [Responsive Layout](/docs/patterns/responsive-layout)
255
+ [Responsive Layout](../patterns/responsive-layout.md)
256
256
 
257
257
  Covers adapting pages across breakpoints.
@@ -50,7 +50,7 @@ namespace styles {
50
50
 
51
51
  ### Variant
52
52
 
53
- Set `variant` to any [Button](/docs/components/button) variant, such as `tertiary` (default) or `secondary`.
53
+ Set `variant` to any [Button](button.md) variant, such as `tertiary` (default) or `secondary`.
54
54
 
55
55
  ```tsx
56
56
  import { CopyButton, style } from '@tempoxyz/ds'
@@ -105,10 +105,10 @@ import { CopyButton } from '@tempoxyz/ds'
105
105
 
106
106
  ### When Not to Use
107
107
 
108
- * Use [Hex](/docs/components/hex) with `copy` for addresses and transaction hashes. It truncates the middle and adds this button.
109
- * Use [Snippet](/docs/components/snippet) for a command or code value.
110
- * Use [SecretValue](/docs/components/secret-value) for API keys and other secrets that stay hidden until revealed.
111
- * Use a [Button](/docs/components/button) for other actions, such as Share or Download.
108
+ * Use [Hex](hex.md) with `copy` for addresses and transaction hashes. It truncates the middle and adds this button.
109
+ * Use [Snippet](snippet.md) for a command or code value.
110
+ * Use [SecretValue](secret-value.md) for API keys and other secrets that stay hidden until revealed.
111
+ * Use a [Button](button.md) for other actions, such as Share or Download.
112
112
 
113
113
  ### Place It Right After the Value
114
114
 
@@ -413,7 +413,7 @@ namespace styles {
413
413
  }
414
414
  ```
415
415
 
416
- **Don't:** Add a [Toast](/docs/components/toast) or text such as Copied to clipboard.
416
+ **Don't:** Add a [Toast](toast.md) or text such as Copied to clipboard.
417
417
 
418
418
  ```tsx
419
419
  /**
@@ -496,7 +496,7 @@ Keep `small` beside body text. Use `medium` or `large` in touch layouts, or besi
496
496
 
497
497
  ### Let a Clickable Row Copy
498
498
 
499
- If a whole row copies on press, handle the copy in the row and pass `copied` to the button. The button shows the confirmation without a second copy. [Snippet](/docs/components/snippet) and [SecretValue](/docs/components/secret-value) work this way.
499
+ If a whole row copies on press, handle the copy in the row and pass `copied` to the button. The button shows the confirmation without a second copy. [Snippet](snippet.md) and [SecretValue](secret-value.md) work this way.
500
500
 
501
501
  **Do:** Pass `copied` so the button confirms the row's copy.
502
502
 
@@ -598,7 +598,7 @@ namespace styles {
598
598
 
599
599
  ## Accessibility
600
600
 
601
- A copy button renders an icon-only [Button](/docs/components/button) with a visually hidden status message. It follows the [WAI-ARIA Authoring Practices button pattern](https://www.w3.org/WAI/ARIA/apg/patterns/button/).
601
+ A copy button renders an icon-only [Button](button.md) with a visually hidden status message. It follows the [WAI-ARIA Authoring Practices button pattern](https://www.w3.org/WAI/ARIA/apg/patterns/button/).
602
602
 
603
603
  ### Semantics
604
604
 
@@ -621,22 +621,22 @@ A copy button renders an icon-only [Button](/docs/components/button) with a visu
621
621
 
622
622
  ## Related
623
623
 
624
- [Hex](/docs/components/hex)
624
+ [Hex](hex.md)
625
625
 
626
626
  Use for addresses and hashes with copying built in.
627
627
 
628
- [Snippet](/docs/components/snippet)
628
+ [Snippet](snippet.md)
629
629
 
630
630
  Use for commands and code.
631
631
 
632
- [SecretValue](/docs/components/secret-value)
632
+ [SecretValue](secret-value.md)
633
633
 
634
634
  Use for API keys and secrets.
635
635
 
636
- [Button](/docs/components/button)
636
+ [Button](button.md)
637
637
 
638
638
  Use for other icon-only actions.
639
639
 
640
- [Blockchain Values](/docs/patterns/blockchain-values)
640
+ [Blockchain Values](../patterns/blockchain-values.md)
641
641
 
642
642
  Covers showing addresses, hashes, and amounts.
@@ -129,9 +129,9 @@ import { DatePicker } from '@tempoxyz/ds'
129
129
 
130
130
  ### When Not to Use
131
131
 
132
- * Use [Calendar](/docs/components/calendar) when the grid stays visible, such as in a filter panel.
133
- * Use [TextInput](/docs/components/text-input) for memorable dates far from today, such as a date of birth.
134
- * Use [ChoiceGroup](/docs/components/choice-group) or [Select](/docs/components/select) for preset periods, such as 7D or Last 30 days.
132
+ * Use [Calendar](calendar.md) when the grid stays visible, such as in a filter panel.
133
+ * Use [TextInput](text-input.md) for memorable dates far from today, such as a date of birth.
134
+ * Use [ChoiceGroup](choice-group.md) or [Select](select.md) for preset periods, such as 7D or Last 30 days.
135
135
 
136
136
  ### Label the Trigger
137
137
 
@@ -375,7 +375,7 @@ namespace styles {
375
375
 
376
376
  ### Match the Fields Around It
377
377
 
378
- `DatePicker.Trigger` is as tall as a [TextInput](/docs/components/text-input), at 48px. Use the same variant as the fields beside it.
378
+ `DatePicker.Trigger` is as tall as a [TextInput](text-input.md), at 48px. Use the same variant as the fields beside it.
379
379
 
380
380
  **Do:** Give the trigger the variant of the inputs in the same row.
381
381
 
@@ -469,14 +469,14 @@ A date picker renders a button that opens a calendar in a popup dialog. It follo
469
469
 
470
470
  * **DatePicker.Trigger (button):** Announces that it opens a dialog, and whether the dialog is open.
471
471
  * **DatePicker.Popup (dialog):** Renders a `dialog` named "Choose date" unless you pass `aria-label`.
472
- * **DatePicker.Calendar (grid):** Uses the grid semantics described on [Calendar](/docs/components/calendar#accessibility).
472
+ * **DatePicker.Calendar (grid):** Uses the grid semantics described on [Calendar](calendar.md#accessibility).
473
473
  * **Target Size (48px):** The trigger is above the 24px WCAG 2.2 minimum.
474
474
 
475
475
  ### Keyboard
476
476
 
477
477
  * **Move Focus to the Trigger (Tab):** Moves focus to the trigger.
478
478
  * **Open the Popup (Enter or Space):** On the trigger, opens the popup and focuses a day.
479
- * **Move Through Dates (Arrow keys):** Home, End, Page Up, and Page Down also move, as on [Calendar](/docs/components/calendar#keyboard).
479
+ * **Move Through Dates (Arrow keys):** Home, End, Page Up, and Page Down also move, as on [Calendar](calendar.md#keyboard).
480
480
  * **Select a Day (Enter or Space):** On a day, selects it and closes the popup. In `range` mode, the popup closes after the end date.
481
481
  * **Move Within the Popup (Tab and Shift+Tab):** Move between the month buttons and the day grid.
482
482
  * **Close the Popup (Escape):** Closes the popup without a change, and returns focus to the trigger.
@@ -493,22 +493,22 @@ When the popup opens, focus moves to the selected day, or today. The popup doesn
493
493
 
494
494
  ## Related
495
495
 
496
- [Calendar](/docs/components/calendar)
496
+ [Calendar](calendar.md)
497
497
 
498
498
  Use for an inline month grid.
499
499
 
500
- [TextInput](/docs/components/text-input)
500
+ [TextInput](text-input.md)
501
501
 
502
502
  Use for typed and native dates.
503
503
 
504
- [Popover](/docs/components/popover)
504
+ [Popover](popover.md)
505
505
 
506
506
  Use for other anchored popups.
507
507
 
508
- [Field](/docs/components/field)
508
+ [Field](field.md)
509
509
 
510
510
  Use for labels and errors on other controls.
511
511
 
512
- [Forms](/docs/patterns/forms)
512
+ [Forms](../patterns/forms.md)
513
513
 
514
514
  Covers placing a date among other fields.
@@ -84,7 +84,7 @@ export function Demo() {
84
84
 
85
85
  ### Header Layout
86
86
 
87
- Set `layout` on `Dialog.Header` to `inline` (default), `stacked`, `centered` or `hero`. A `Dialog.Nav` holds `Dialog.Back` and a [Stepper](/docs/components/stepper) above the title.
87
+ Set `layout` on `Dialog.Header` to `inline` (default), `stacked`, `centered` or `hero`. A `Dialog.Nav` holds `Dialog.Back` and a [Stepper](stepper.md) above the title.
88
88
 
89
89
  ```tsx
90
90
  import { Button, ButtonGroup, Dialog, IconTile, Inline, Stepper } from '@tempoxyz/ds'
@@ -150,7 +150,7 @@ Each screen pairs a size and a header layout with parts from the library.
150
150
 
151
151
  ### Confirmation
152
152
 
153
- Confirms a destructive or irreversible action in an [AlertDialog](/docs/components/alert-dialog).
153
+ Confirms a destructive or irreversible action in an [AlertDialog](alert-dialog.md).
154
154
 
155
155
  ```tsx
156
156
  import { Alert, AlertDialog, Button, ButtonGroup } from '@tempoxyz/ds'
@@ -937,13 +937,13 @@ import { ButtonGroup, Dialog } from '@tempoxyz/ds'
937
937
 
938
938
  ### When Not to Use
939
939
 
940
- * Use an [AlertDialog](/docs/components/alert-dialog) to confirm a destructive or irreversible action.
941
- * Use a [Drawer](/docs/components/drawer) for long forms, filters, or record details.
942
- * Use a [Popover](/docs/components/popover) for a sentence or one setting anchored to its trigger.
940
+ * Use an [AlertDialog](alert-dialog.md) to confirm a destructive or irreversible action.
941
+ * Use a [Drawer](drawer.md) for long forms, filters, or record details.
942
+ * Use a [Popover](popover.md) for a sentence or one setting anchored to its trigger.
943
943
  * Use a page for content that still scrolls at the `large` size.
944
- * Use a [Toast](/docs/components/toast) to confirm that an action finished.
944
+ * Use a [Toast](toast.md) to confirm that an action finished.
945
945
 
946
- See [Choosing a Component](/docs/components#popups) to compare overlays.
946
+ See [Choosing a Component](../components.md#popups) to compare overlays.
947
947
 
948
948
  ### Pick the Size From the Content
949
949
 
@@ -1250,7 +1250,7 @@ A backdrop press closes the dialog. Escape and the close controls work in both c
1250
1250
 
1251
1251
  ### Title With the Task
1252
1252
 
1253
- Write a verb and an object, without end punctuation. Reuse the trigger's label, such as Rename wallet. Save questions for an [AlertDialog](/docs/components/alert-dialog).
1253
+ Write a verb and an object, without end punctuation. Reuse the trigger's label, such as Rename wallet. Save questions for an [AlertDialog](alert-dialog.md).
1254
1254
 
1255
1255
  ### Describe the Effect
1256
1256
 
@@ -1262,7 +1262,7 @@ Label the primary action with the title's verb, such as Save name. Use Cancel to
1262
1262
 
1263
1263
  ### Write One Headline
1264
1264
 
1265
- Give each dialog one `Dialog.Title`. Name the groups in the body with a [ListGroup](/docs/components/list-group) heading instead of a second headline.
1265
+ Give each dialog one `Dialog.Title`. Name the groups in the body with a [ListGroup](list-group.md) heading instead of a second headline.
1266
1266
 
1267
1267
  ## Accessibility
1268
1268
 
@@ -1275,7 +1275,7 @@ A dialog follows the [WAI-ARIA Authoring Practices modal dialog pattern](https:/
1275
1275
  * **Dialog.Title (h2):** Names the dialog.
1276
1276
  * **Dialog.Description (p):** Describes the dialog.
1277
1277
  * **Dialog.Back (button):** A "Back" icon button, first in the focus order.
1278
- * **Stepper (progressbar):** Name the flow with `aria-label` on the [Stepper](/docs/components/stepper).
1278
+ * **Stepper (progressbar):** Name the flow with `aria-label` on the [Stepper](stepper.md).
1279
1279
  * **Close Button (closeButton):** A "Close" icon button, last in the focus order.
1280
1280
  * **Page Behind (inert):** Ignores pointer input and scroll while open.
1281
1281
 
@@ -1303,30 +1303,30 @@ Under reduced motion, the dialog fades in and out without scaling or sliding.
1303
1303
 
1304
1304
  ## Related
1305
1305
 
1306
- [AlertDialog](/docs/components/alert-dialog)
1306
+ [AlertDialog](alert-dialog.md)
1307
1307
 
1308
1308
  Use for confirming destructive actions.
1309
1309
 
1310
- [ButtonGroup](/docs/components/button-group)
1310
+ [ButtonGroup](button-group.md)
1311
1311
 
1312
1312
  Use for the actions in the footer.
1313
1313
 
1314
- [Drawer](/docs/components/drawer)
1314
+ [Drawer](drawer.md)
1315
1315
 
1316
1316
  Use for long forms and details panels.
1317
1317
 
1318
- [Popover](/docs/components/popover)
1318
+ [Popover](popover.md)
1319
1319
 
1320
1320
  Use for anchored, non-blocking content.
1321
1321
 
1322
- [Stepper](/docs/components/stepper)
1322
+ [Stepper](stepper.md)
1323
1323
 
1324
1324
  Use for progress through the steps of a flow.
1325
1325
 
1326
- [Forms](/docs/patterns/forms)
1326
+ [Forms](../patterns/forms.md)
1327
1327
 
1328
1328
  Covers laying out fields and actions.
1329
1329
 
1330
- [Payments](/docs/patterns/payments)
1330
+ [Payments](../patterns/payments.md)
1331
1331
 
1332
1332
  Covers reviewing a payment before you send it.
@@ -111,10 +111,10 @@ import { Drawer } from '@tempoxyz/ds'
111
111
 
112
112
  ### When Not to Use
113
113
 
114
- * Use a [Dialog](/docs/components/dialog) for a short, focused task, such as Rename wallet.
115
- * Use an [AlertDialog](/docs/components/alert-dialog) to confirm a destructive action.
116
- * Use a [Popover](/docs/components/popover) for content anchored to its trigger on wide screens.
117
- * Use [AppShell](/docs/components/app-shell) for navigation. Below 1024px, its sidebar already opens in a drawer.
114
+ * Use a [Dialog](dialog.md) for a short, focused task, such as Rename wallet.
115
+ * Use an [AlertDialog](alert-dialog.md) to confirm a destructive action.
116
+ * Use a [Popover](popover.md) for content anchored to its trigger on wide screens.
117
+ * Use [AppShell](app-shell.md) for navigation. Below 1024px, its sidebar already opens in a drawer.
118
118
  * Use a page for content you'd link to, such as a full transaction record.
119
119
 
120
120
  ### Pick an Edge
@@ -126,7 +126,7 @@ import { Drawer } from '@tempoxyz/ds'
126
126
  * **Left Edge (left):** Rarely. Use the right edge across a product.
127
127
  * **Top (up):** Avoid. It covers the header and sits far from the thumb.
128
128
 
129
- Below 640px, change a `right` drawer to `swipeDirection="down"`, to match a [Dialog](/docs/components/dialog) at that width.
129
+ Below 640px, change a `right` drawer to `swipeDirection="down"`, to match a [Dialog](dialog.md) at that width.
130
130
 
131
131
  ### Give Drawers Content That Needs Room
132
132
 
@@ -241,7 +241,7 @@ namespace styles {
241
241
  }
242
242
  ```
243
243
 
244
- **Don't:** Put a short confirmation in a drawer. Use an [AlertDialog](/docs/components/alert-dialog).
244
+ **Don't:** Put a short confirmation in a drawer. Use an [AlertDialog](alert-dialog.md).
245
245
 
246
246
  ```tsx
247
247
  /**
@@ -945,22 +945,22 @@ A drawer is a modal dialog. It follows the [WAI-ARIA Authoring Practices modal d
945
945
 
946
946
  ## Related
947
947
 
948
- [Dialog](/docs/components/dialog)
948
+ [Dialog](dialog.md)
949
949
 
950
950
  Use for short, focused tasks.
951
951
 
952
- [Popover](/docs/components/popover)
952
+ [Popover](popover.md)
953
953
 
954
954
  Use for anchored content on wide screens.
955
955
 
956
- [AppShell](/docs/components/app-shell)
956
+ [AppShell](app-shell.md)
957
957
 
958
958
  Use for navigation that collapses into a drawer.
959
959
 
960
- [Responsive Layout](/docs/patterns/responsive-layout)
960
+ [Responsive Layout](../patterns/responsive-layout.md)
961
961
 
962
962
  Covers switching layouts at narrow widths.
963
963
 
964
- [Tables and Lists](/docs/patterns/tables-and-lists)
964
+ [Tables and Lists](../patterns/tables-and-lists.md)
965
965
 
966
966
  Covers opening record details.
@@ -41,7 +41,7 @@ export function Demo() {
41
41
 
42
42
  ### Progress
43
43
 
44
- Use a [Spinner](/docs/components/spinner) instead of the icon while the region waits on another task, such as a checkout in another window. Frame it in a `medium` [Surface](/docs/components/surface) for a panel.
44
+ Use a [Spinner](spinner.md) instead of the icon while the region waits on another task, such as a checkout in another window. Frame it in a `medium` [Surface](surface.md) for a panel.
45
45
 
46
46
  ```tsx
47
47
  /** An empty state in a medium surface that waits on a checkout in another window. @module */
@@ -87,15 +87,15 @@ import { Empty } from '@tempoxyz/ds'
87
87
 
88
88
  ### When Not to Use
89
89
 
90
- * Use [Skeleton](/docs/components/skeleton) while the request runs. Show the empty state only after it returns no records.
91
- * Use a `negative` [Alert](/docs/components/alert) with a Retry action if the data fails to load.
92
- * Use `Combobox.Empty` of [Combobox](/docs/components/combobox) or `Autocomplete.Empty` of [Autocomplete](/docs/components/autocomplete) for a popup list with no matches.
90
+ * Use [Skeleton](skeleton.md) while the request runs. Show the empty state only after it returns no records.
91
+ * Use a `negative` [Alert](alert.md) with a Retry action if the data fails to load.
92
+ * Use `Combobox.Empty` of [Combobox](combobox.md) or `Autocomplete.Empty` of [Autocomplete](autocomplete.md) for a popup list with no matches.
93
93
 
94
94
  ### Explain Why, Then Offer a Next Step
95
95
 
96
96
  * **`Empty.Title`:** States what belongs here.
97
97
  * **`Empty.Description`:** States why there is nothing.
98
- * **`Empty.Actions`:** Holds a [Button](/docs/components/button) for the next step.
98
+ * **`Empty.Actions`:** Holds a [Button](button.md) for the next step.
99
99
 
100
100
  **Do:** Say what will appear and offer the action that adds it.
101
101
 
@@ -323,18 +323,18 @@ An empty state renders plain elements with no ARIA wiring, in the order you comp
323
323
 
324
324
  ## Related
325
325
 
326
- [Skeleton](/docs/components/skeleton)
326
+ [Skeleton](skeleton.md)
327
327
 
328
328
  Use for content that is still loading.
329
329
 
330
- [Alert](/docs/components/alert)
330
+ [Alert](alert.md)
331
331
 
332
332
  Use for a failed load with a retry.
333
333
 
334
- [Button](/docs/components/button)
334
+ [Button](button.md)
335
335
 
336
336
  Use for the action that fills the state.
337
337
 
338
- [Empty States](/docs/patterns/empty-states)
338
+ [Empty States](../patterns/empty-states.md)
339
339
 
340
340
  Covers first-use, no-results, and cleared states.