@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
@@ -8,7 +8,7 @@ Figma: [Elements/Asset Chip](https://www.figma.com/design/yE96kcymnNR88PJp6G1sPs
8
8
 
9
9
  ## Overview
10
10
 
11
- An asset chip renders a small gray label for something a row or value supports, such as the assets a network accepts. Place a [TokenLogo](/docs/components/token-logo) before the text to add a 12px token logo. Give it an `onClick` to pick one asset from a short set.
11
+ An asset chip renders a small gray label for something a row or value supports, such as the assets a network accepts. Place a [TokenLogo](token-logo.md) before the text to add a 12px token logo. Give it an `onClick` to pick one asset from a short set.
12
12
 
13
13
  ## Examples
14
14
 
@@ -43,7 +43,7 @@ namespace styles {
43
43
 
44
44
  ### Logo
45
45
 
46
- A nested [TokenLogo](/docs/components/token-logo) renders at 12px, whatever its `size`.
46
+ A nested [TokenLogo](token-logo.md) renders at 12px, whatever its `size`.
47
47
 
48
48
  ```tsx
49
49
  import { AssetChip, style, TokenLogo } from '@tempoxyz/ds'
@@ -141,9 +141,9 @@ import { AssetChip, TokenLogo } from '@tempoxyz/ds'
141
141
 
142
142
  ### When Not to Use
143
143
 
144
- * Use [Badge](/docs/components/badge) to show a status, such as Pending.
145
- * Use [Token](/docs/components/token) for a token that a person can change.
146
- * Use [Button](/docs/components/button) for an action other than picking an asset.
144
+ * Use [Badge](badge.md) to show a status, such as Pending.
145
+ * Use [Token](token.md) for a token that a person can change.
146
+ * Use [Button](button.md) for an action other than picking an asset.
147
147
 
148
148
  ### List What a Row Supports
149
149
 
@@ -194,7 +194,7 @@ namespace styles {
194
194
  }
195
195
  ```
196
196
 
197
- **Don't:** Use an asset chip to show a status. Use a [Badge](/docs/components/badge).
197
+ **Don't:** Use an asset chip to show a status. Use a [Badge](badge.md).
198
198
 
199
199
  ```tsx
200
200
  /**
@@ -273,22 +273,22 @@ A static chip takes no focus. A chip with an `onClick` is a native button:
273
273
 
274
274
  ## Related
275
275
 
276
- [TokenLogo](/docs/components/token-logo)
276
+ [TokenLogo](token-logo.md)
277
277
 
278
278
  Use for token logos.
279
279
 
280
- [Token](/docs/components/token)
280
+ [Token](token.md)
281
281
 
282
282
  Use for a token that a person can change.
283
283
 
284
- [NetworkLogo](/docs/components/network-logo)
284
+ [NetworkLogo](network-logo.md)
285
285
 
286
286
  Use for network logos.
287
287
 
288
- [Badge](/docs/components/badge)
288
+ [Badge](badge.md)
289
289
 
290
290
  Use for statuses.
291
291
 
292
- [ListGroup](/docs/components/list-group)
292
+ [ListGroup](list-group.md)
293
293
 
294
294
  Use for network and asset lists.
@@ -77,13 +77,13 @@ import { Autocomplete } from '@tempoxyz/ds'
77
77
 
78
78
  ### When Not to Use
79
79
 
80
- * If the value must be one of the items, such as the asset to send, use [Combobox](/docs/components/combobox).
81
- * Use [Select](/docs/components/select) for a short list of fixed options.
82
- * If there is nothing useful to suggest, use [TextInput](/docs/components/text-input).
80
+ * If the value must be one of the items, such as the asset to send, use [Combobox](combobox.md).
81
+ * Use [Select](select.md) for a short list of fixed options.
82
+ * If there is nothing useful to suggest, use [TextInput](text-input.md).
83
83
 
84
84
  ### Accept Any Typed Value
85
85
 
86
- Validate the text as you would a plain [TextInput](/docs/components/text-input), such as a 0x prefix on an address, and explain problems in a `Field.Error`.
86
+ Validate the text as you would a plain [TextInput](text-input.md), such as a 0x prefix on an address, and explain problems in a `Field.Error`.
87
87
 
88
88
  **Do:** Accept a new 0x address that isn't among the suggestions.
89
89
 
@@ -231,6 +231,7 @@ const recipients = [
231
231
  /** Renders the static preview, which the guideline card shows inert. */
232
232
  export function Demo() {
233
233
  return (
234
+ // oxlint-disable-next-line tds/require-scroll-region -- An inert picture of a popup, which never takes focus.
234
235
  <div {...styles.popup()}>
235
236
  {recipients.map((recipient) => (
236
237
  <div key={recipient} {...styles.item()}>
@@ -598,22 +599,22 @@ DOM focus stays on the input while the arrow keys highlight suggestions, so typi
598
599
 
599
600
  ## Related
600
601
 
601
- [Combobox](/docs/components/combobox)
602
+ [Combobox](combobox.md)
602
603
 
603
604
  Use for choosing from fixed options.
604
605
 
605
- [TextInput](/docs/components/text-input)
606
+ [TextInput](text-input.md)
606
607
 
607
608
  Use for text without suggestions.
608
609
 
609
- [Field](/docs/components/field)
610
+ [Field](field.md)
610
611
 
611
612
  Use for the label and error.
612
613
 
613
- [Select](/docs/components/select)
614
+ [Select](select.md)
614
615
 
615
616
  Use for short lists.
616
617
 
617
- [Blockchain Values](/docs/patterns/blockchain-values)
618
+ [Blockchain Values](../patterns/blockchain-values.md)
618
619
 
619
620
  Covers entering and showing addresses.
@@ -107,9 +107,9 @@ import { Avatar } from '@tempoxyz/ds'
107
107
 
108
108
  ### When Not to Use
109
109
 
110
- * Use [Identicon](/docs/components/identicon) for an account known only by its address.
111
- * Use [TokenLogo](/docs/components/token-logo) for the icon of a token or asset.
112
- * Use [IconTile](/docs/components/icon-tile) for the icon above a centered modal title.
110
+ * Use [Identicon](identicon.md) for an account known only by its address.
111
+ * Use [TokenLogo](token-logo.md) for the icon of a token or asset.
112
+ * Use [IconTile](icon-tile.md) for the icon above a centered modal title.
113
113
 
114
114
  ### Choose Avatar or Identicon
115
115
 
@@ -121,7 +121,7 @@ import { Avatar } from '@tempoxyz/ds'
121
121
 
122
122
  * **People and organizations:** Use initials.
123
123
  * **Wallets and apps:** Use an icon.
124
- * **Accounts known by address:** Use an [Identicon](/docs/components/identicon) with `size="fill"`.
124
+ * **Accounts known by address:** Use an [Identicon](identicon.md) with `size="fill"`.
125
125
 
126
126
  **Do:** Give every avatar a fallback, such as initials, an icon, or an `Identicon`.
127
127
 
@@ -304,18 +304,18 @@ An avatar takes no focus. To open a profile, wrap the avatar and name in one lin
304
304
 
305
305
  ## Related
306
306
 
307
- [Identicon](/docs/components/identicon)
307
+ [Identicon](identicon.md)
308
308
 
309
309
  Use for accounts known by address.
310
310
 
311
- [TokenLogo](/docs/components/token-logo)
311
+ [TokenLogo](token-logo.md)
312
312
 
313
313
  Use for token icons.
314
314
 
315
- [IconTile](/docs/components/icon-tile)
315
+ [IconTile](icon-tile.md)
316
316
 
317
317
  Use for the icon above a centered modal title.
318
318
 
319
- [ListGroup](/docs/components/list-group)
319
+ [ListGroup](list-group.md)
320
320
 
321
321
  Use for lists of people and accounts.
@@ -166,11 +166,11 @@ import { Badge } from '@tempoxyz/ds'
166
166
 
167
167
  ### When Not to Use
168
168
 
169
- * Use an [Alert](/docs/components/alert) or [Banner](/docs/components/banner) for a message that needs a sentence.
170
- * Use a [Button](/docs/components/button) for an action, such as Retry.
171
- * Use the `status` of a [Table](/docs/components/table) cell to color a status in a table.
172
- * Use a [ChoiceGroup](/docs/components/choice-group) to switch between two to four views.
173
- * Use [Kbd](/docs/components/kbd) for keyboard keys.
169
+ * Use an [Alert](alert.md) or [Banner](banner.md) for a message that needs a sentence.
170
+ * Use a [Button](button.md) for an action, such as Retry.
171
+ * Use the `status` of a [Table](table.md) cell to color a status in a table.
172
+ * Use a [ChoiceGroup](choice-group.md) to switch between two to four views.
173
+ * Use [Kbd](kbd.md) for keyboard keys.
174
174
 
175
175
  ### Choose a Variant by Emphasis
176
176
 
@@ -322,18 +322,18 @@ A static badge takes no focus. A badge rendered as a button or link is a native
322
322
 
323
323
  ## Related
324
324
 
325
- [Table](/docs/components/table)
325
+ [Table](table.md)
326
326
 
327
327
  Use for status columns.
328
328
 
329
- [Alert](/docs/components/alert)
329
+ [Alert](alert.md)
330
330
 
331
331
  Use for messages about a section.
332
332
 
333
- [ChoiceGroup](/docs/components/choice-group)
333
+ [ChoiceGroup](choice-group.md)
334
334
 
335
335
  Use for switching views.
336
336
 
337
- [Feedback and Status](/docs/patterns/feedback-and-status)
337
+ [Feedback and Status](../patterns/feedback-and-status.md)
338
338
 
339
339
  Covers status conventions.
@@ -77,9 +77,9 @@ import { BadgedLogo } from '@tempoxyz/ds'
77
77
 
78
78
  ### When Not to Use
79
79
 
80
- * Use [TokenLogo](/docs/components/token-logo) for a token without a badge.
81
- * Use [Avatar](/docs/components/avatar) for a person, a contact, or a wallet.
82
- * Use [IconTile](/docs/components/icon-tile) for one icon above the title of a modal.
80
+ * Use [TokenLogo](token-logo.md) for a token without a badge.
81
+ * Use [Avatar](avatar.md) for a person, a contact, or a wallet.
82
+ * Use [IconTile](icon-tile.md) for one icon above the title of a modal.
83
83
 
84
84
  ### Put the Logo First and the Badge Last
85
85
 
@@ -103,14 +103,14 @@ A badged logo renders `<span>` elements with no role and takes no focus.
103
103
 
104
104
  ## Related
105
105
 
106
- [TokenLogo](/docs/components/token-logo)
106
+ [TokenLogo](token-logo.md)
107
107
 
108
108
  Use for a token logo without a badge.
109
109
 
110
- [Avatar](/docs/components/avatar)
110
+ [Avatar](avatar.md)
111
111
 
112
112
  Use for people, contacts, and wallets.
113
113
 
114
- [IconTile](/docs/components/icon-tile)
114
+ [IconTile](icon-tile.md)
115
115
 
116
116
  Use for one icon above the title of a modal.
@@ -82,10 +82,10 @@ import { Banner } from '@tempoxyz/ds'
82
82
 
83
83
  ### When Not to Use
84
84
 
85
- * Use [Alert](/docs/components/alert) for a message about one section, form, or field.
86
- * Use [Toast](/docs/components/toast) to confirm that an action finished, such as Payment sent.
87
- * If an action needs a decision before it continues, use [AlertDialog](/docs/components/alert-dialog).
88
- * Use `Field.Error` from [Field](/docs/components/field) for a validation message on one input.
85
+ * Use [Alert](alert.md) for a message about one section, form, or field.
86
+ * Use [Toast](toast.md) to confirm that an action finished, such as Payment sent.
87
+ * If an action needs a decision before it continues, use [AlertDialog](alert-dialog.md).
88
+ * Use `Field.Error` from [Field](field.md) for a validation message on one input.
89
89
 
90
90
  ### Choose an Intent by Severity
91
91
 
@@ -362,18 +362,18 @@ Renders a plain `div` with no role and no live region. The action and dismiss co
362
362
 
363
363
  ## Related
364
364
 
365
- [Alert](/docs/components/alert)
365
+ [Alert](alert.md)
366
366
 
367
367
  Use for a message about one section.
368
368
 
369
- [Toast](/docs/components/toast)
369
+ [Toast](toast.md)
370
370
 
371
371
  Use for confirming a finished action.
372
372
 
373
- [AlertDialog](/docs/components/alert-dialog)
373
+ [AlertDialog](alert-dialog.md)
374
374
 
375
375
  Use for a decision before an action continues.
376
376
 
377
- [Feedback and Status](/docs/patterns/feedback-and-status)
377
+ [Feedback and Status](../patterns/feedback-and-status.md)
378
378
 
379
379
  Covers choosing a message component.
@@ -109,9 +109,9 @@ import { BarChart } from '@tempoxyz/ds'
109
109
 
110
110
  ### When Not to Use
111
111
 
112
- * Use [SplitBar](/docs/components/split-bar) to split one total between two parts.
113
- * Use [Table](/docs/components/table) when people need to read or compare exact values.
114
- * Use [Gauge](/docs/components/gauge) for one value against a limit.
112
+ * Use [SplitBar](split-bar.md) to split one total between two parts.
113
+ * Use [Table](table.md) when people need to read or compare exact values.
114
+ * Use [Gauge](gauge.md) for one value against a limit.
115
115
 
116
116
  ### Keep Each Series in One Color
117
117
 
@@ -191,18 +191,18 @@ A bar chart renders a `<div>` with the `figure` role. Its plot takes focus, and
191
191
  ### Your Responsibilities
192
192
 
193
193
  * **Name the Chart (aria-label):** Pass `aria-label`, or `aria-labelledby` pointing at the chart's heading.
194
- * **Offer the Values (Table):** Offer the same values in a [Table](/docs/components/table) when people need exact values.
194
+ * **Offer the Values (Table):** Offer the same values in a [Table](table.md) when people need exact values.
195
195
 
196
196
  ## Related
197
197
 
198
- [SplitBar](/docs/components/split-bar)
198
+ [SplitBar](split-bar.md)
199
199
 
200
200
  Use for one total split between two parts.
201
201
 
202
- [AgentLogo](/docs/components/agent-logo)
202
+ [AgentLogo](agent-logo.md)
203
203
 
204
204
  Use for the agent of each series.
205
205
 
206
- [Table](/docs/components/table)
206
+ [Table](table.md)
207
207
 
208
208
  Use for exact values.
@@ -68,10 +68,10 @@ import { Breadcrumbs } from '@tempoxyz/ds'
68
68
 
69
69
  ### When Not to Use
70
70
 
71
- * Use [SidebarMenu](/docs/components/sidebar-menu) to move between top-level sections.
72
- * Use [Stepper](/docs/components/stepper) to show progress through a flow, such as Send payment.
73
- * Use [Tabs](/docs/components/tabs) to switch between views of the same page.
74
- * Use `Button.Link` from [Button](/docs/components/button) with `variant="tertiary"` for a single Back link in a two-level product.
71
+ * Use [SidebarMenu](sidebar-menu.md) to move between top-level sections.
72
+ * Use [Stepper](stepper.md) to show progress through a flow, such as Send payment.
73
+ * Use [Tabs](tabs.md) to switch between views of the same page.
74
+ * Use `Button.Link` from [Button](button.md) with `variant="tertiary"` for a single Back link in a two-level product.
75
75
 
76
76
  ### Reserve Breadcrumbs for Deep Hierarchies
77
77
 
@@ -363,18 +363,18 @@ Renders a navigation landmark with an ordered list of links, following the [WAI-
363
363
 
364
364
  ## Related
365
365
 
366
- [SidebarMenu](/docs/components/sidebar-menu)
366
+ [SidebarMenu](sidebar-menu.md)
367
367
 
368
368
  Use for top-level navigation.
369
369
 
370
- [AppShell](/docs/components/app-shell)
370
+ [AppShell](app-shell.md)
371
371
 
372
372
  Use for the page frame that holds the trail.
373
373
 
374
- [Tabs](/docs/components/tabs)
374
+ [Tabs](tabs.md)
375
375
 
376
376
  Use for switching views within a page.
377
377
 
378
- [Navigation](/docs/patterns/navigation)
378
+ [Navigation](../patterns/navigation.md)
379
379
 
380
380
  Covers choosing between navigation components.
@@ -8,7 +8,7 @@ Figma: [Button Group](https://www.figma.com/design/yE96kcymnNR88PJp6G1sPs?node-i
8
8
 
9
9
  ## Overview
10
10
 
11
- A button group places [Buttons](/docs/components/button) side by side at equal widths, or stacks them at full width.
11
+ A button group places [Buttons](button.md) side by side at equal widths, or stacks them at full width.
12
12
 
13
13
  ## Examples
14
14
 
@@ -83,9 +83,9 @@ import { Button, ButtonGroup } from '@tempoxyz/ds'
83
83
 
84
84
  ### When Not to Use
85
85
 
86
- * Use a [SplitButton](/docs/components/split-button) for a main action with related alternatives.
87
- * Use an [Inline](/docs/components/inline) row for actions at their natural width, such as a toolbar.
88
- * Use a [Menu](/docs/components/menu) for more than three actions.
86
+ * Use a [SplitButton](split-button.md) for a main action with related alternatives.
87
+ * Use an [Inline](inline.md) row for actions at their natural width, such as a toolbar.
88
+ * Use a [Menu](menu.md) for more than three actions.
89
89
 
90
90
  ### Put the Primary Action Last
91
91
 
@@ -265,7 +265,7 @@ namespace styles {
265
265
 
266
266
  ## Accessibility
267
267
 
268
- `ButtonGroup` renders a `div` with `role="group"` around native buttons. See [Accessibility](/docs/foundations/accessibility) for the baseline.
268
+ `ButtonGroup` renders a `div` with `role="group"` around native buttons. See [Accessibility](../foundations/accessibility.md) for the baseline.
269
269
 
270
270
  * **Group (group):** Groups the actions. Name it with `aria-label` when the dialog title does not.
271
271
  * **Focus Order (Tab):** Follows the source order, which matches the visual order in both orientations.
@@ -273,14 +273,14 @@ namespace styles {
273
273
 
274
274
  ## Related
275
275
 
276
- [Button](/docs/components/button)
276
+ [Button](button.md)
277
277
 
278
278
  Use for each action in the group.
279
279
 
280
- [Dialog](/docs/components/dialog)
280
+ [Dialog](dialog.md)
281
281
 
282
282
  Use for the focused task that the group closes.
283
283
 
284
- [AlertDialog](/docs/components/alert-dialog)
284
+ [AlertDialog](alert-dialog.md)
285
285
 
286
286
  Use for confirming a destructive action.
@@ -270,9 +270,9 @@ import { Button } from '@tempoxyz/ds'
270
270
  ### When Not to Use
271
271
 
272
272
  * Use a text link for navigation inside sentences, lists, and tables.
273
- * Use [CopyButton](/docs/components/copy-button) to copy a value, and [SplitButton](/docs/components/split-button) for a main action with related alternatives.
274
- * Use [Tabs](/docs/components/tabs) or [ChoiceGroup](/docs/components/choice-group) to switch views, and [Switch](/docs/components/switch) to turn a setting on or off.
275
- * If a section has more than three secondary actions, put them in a [Menu](/docs/components/menu) behind an icon button.
273
+ * Use [CopyButton](copy-button.md) to copy a value, and [SplitButton](split-button.md) for a main action with related alternatives.
274
+ * Use [Tabs](tabs.md) or [ChoiceGroup](choice-group.md) to switch views, and [Switch](switch.md) to turn a setting on or off.
275
+ * If a section has more than three secondary actions, put them in a [Menu](menu.md) behind an icon button.
276
276
 
277
277
  ### Choose a Variant by Emphasis
278
278
 
@@ -280,11 +280,11 @@ import { Button } from '@tempoxyz/ds'
280
280
  * **Supporting Actions (secondary):** Supporting actions beside a primary action, or actions of equal weight.
281
281
  * **Low-Emphasis Actions (tertiary):** Dense areas, such as toolbars, table rows, and inline Cancel actions.
282
282
 
283
- A destructive action takes the variant of its place in the flow, and its label names the outcome, such as Revoke key. Confirm it with an [AlertDialog](/docs/components/alert-dialog), whose confirming button takes `danger`. See [Destructive Actions](/docs/patterns/destructive-actions) and [Payments](/docs/patterns/payments).
283
+ A destructive action takes the variant of its place in the flow, and its label names the outcome, such as Revoke key. Confirm it with an [AlertDialog](alert-dialog.md), whose confirming button takes `danger`. See [Destructive Actions](../patterns/destructive-actions.md) and [Payments](../patterns/payments.md).
284
284
 
285
285
  ### Use One Primary Action
286
286
 
287
- Give other actions `secondary` or `tertiary`, even if they matter. [Forms](/docs/patterns/forms#submitting) sets the order of the actions.
287
+ Give other actions `secondary` or `tertiary`, even if they matter. [Forms](../patterns/forms.md#submitting) sets the order of the actions.
288
288
 
289
289
  **Do:** Pair one `primary` action with `secondary` alternatives.
290
290
 
@@ -344,7 +344,7 @@ namespace styles {
344
344
  * **Default (medium):** Forms, page actions, and actions inside a dialog body, such as Copy address.
345
345
  * **Dialog Footers (large):** Every action in a dialog footer, and the final step of a focused flow, such as Confirm send.
346
346
 
347
- Lay out the actions in a dialog footer with a [ButtonGroup](/docs/components/button-group).
347
+ Lay out the actions in a dialog footer with a [ButtonGroup](button-group.md).
348
348
 
349
349
  ### Show Progress With Loading
350
350
 
@@ -364,7 +364,7 @@ export function Demo() {
364
364
  }
365
365
  ```
366
366
 
367
- **Don't:** Disable the button and place a separate [Spinner](/docs/components/spinner) beside it.
367
+ **Don't:** Disable the button and place a separate [Spinner](spinner.md) beside it.
368
368
 
369
369
  ```tsx
370
370
  /**
@@ -395,7 +395,7 @@ Keep a button enabled when you can, and show validation errors after a press. If
395
395
 
396
396
  * Explain why in nearby text.
397
397
  * Set `focusableWhenDisabled` so keyboard users can reach it.
398
- * Don't rely on a [Tooltip](/docs/components/tooltip). Many readers can't open it on a disabled button.
398
+ * Don't rely on a [Tooltip](tooltip.md). Many readers can't open it on a disabled button.
399
399
 
400
400
  **Do:** Explain in nearby text why the button is unavailable.
401
401
 
@@ -466,7 +466,7 @@ namespace styles {
466
466
 
467
467
  ### Use Icons to Reinforce the Label
468
468
 
469
- Place an icon before the label if it aids recognition, such as a plus for Add. An icon-only button (`shape="icon"`) needs a [Tooltip](/docs/components/tooltip) with its `aria-label` text. Use it only for familiar actions, such as Close or Copy.
469
+ Place an icon before the label if it aids recognition, such as a plus for Add. An icon-only button (`shape="icon"`) needs a [Tooltip](tooltip.md) with its `aria-label` text. Use it only for familiar actions, such as Close or Copy.
470
470
 
471
471
  **Do:** Add an icon only where it aids recognition.
472
472
 
@@ -600,7 +600,7 @@ Write Continue to review, not Click here. Screen readers list buttons out of con
600
600
 
601
601
  ## Accessibility
602
602
 
603
- `Button` renders a native `<button type="button">`, and `Button.Link` a native `<a>`. Both follow the [WAI-ARIA button pattern](https://www.w3.org/WAI/ARIA/apg/patterns/button/). See [Accessibility](/docs/foundations/accessibility) for the baseline.
603
+ `Button` renders a native `<button type="button">`, and `Button.Link` a native `<a>`. Both follow the [WAI-ARIA button pattern](https://www.w3.org/WAI/ARIA/apg/patterns/button/). See [Accessibility](../foundations/accessibility.md) for the baseline.
604
604
 
605
605
  ### Semantics
606
606
 
@@ -620,31 +620,31 @@ Write Continue to review, not Click here. Screen readers list buttons out of con
620
620
  ### Your Responsibilities
621
621
 
622
622
  * **Name Icon-Only Buttons (aria-label):** An icon-only button has no visible text. Name the action, such as "Copy address", not "Copy icon".
623
- * **Announce Loading Results:** Loading announces only the busy state. Announce the outcome with a [Toast](/docs/components/toast) or an [Alert](/docs/components/alert).
623
+ * **Announce Loading Results:** Loading announces only the busy state. Announce the outcome with a [Toast](toast.md) or an [Alert](alert.md).
624
624
  * **Use Links for Navigation (Button.Link):** Use it for navigation, not a button with a click handler that changes the page.
625
625
 
626
626
  ## Related
627
627
 
628
- [ButtonGroup](/docs/components/button-group)
628
+ [ButtonGroup](button-group.md)
629
629
 
630
630
  Use for the actions at the foot of a dialog.
631
631
 
632
- [SplitButton](/docs/components/split-button)
632
+ [SplitButton](split-button.md)
633
633
 
634
634
  Use for a main action with alternatives.
635
635
 
636
- [CopyButton](/docs/components/copy-button)
636
+ [CopyButton](copy-button.md)
637
637
 
638
638
  Use for copying a value.
639
639
 
640
- [AlertDialog](/docs/components/alert-dialog)
640
+ [AlertDialog](alert-dialog.md)
641
641
 
642
642
  Use for confirming an action.
643
643
 
644
- [Forms](/docs/patterns/forms)
644
+ [Forms](../patterns/forms.md)
645
645
 
646
646
  Covers placing submit and cancel actions.
647
647
 
648
- [Destructive Actions](/docs/patterns/destructive-actions)
648
+ [Destructive Actions](../patterns/destructive-actions.md)
649
649
 
650
650
  Covers deleting and revoking.
@@ -95,9 +95,9 @@ import { Calendar } from '@tempoxyz/ds'
95
95
 
96
96
  ### When Not to Use
97
97
 
98
- * If the date is one field in a form, use [DatePicker](/docs/components/date-picker). It opens the same calendar in a popup.
99
- * Use [TextInput](/docs/components/text-input) for dates far from today, such as a date of birth.
100
- * Use [ChoiceGroup](/docs/components/choice-group) for preset ranges, such as 24H, 7D, and 30D above a chart.
98
+ * If the date is one field in a form, use [DatePicker](date-picker.md). It opens the same calendar in a popup.
99
+ * Use [TextInput](text-input.md) for dates far from today, such as a date of birth.
100
+ * Use [ChoiceGroup](choice-group.md) for preset ranges, such as 24H, 7D, and 30D above a chart.
101
101
 
102
102
  ### Explain Unavailable Days
103
103
 
@@ -211,7 +211,7 @@ export function Demo() {
211
211
 
212
212
  ### Start on the Month of the Task
213
213
 
214
- `defaultMonth` falls back to the selected day's month, then the current month. Set it to the month of the task, such as the start of a statement period. To sync the page with a typed [TextInput](/docs/components/text-input), control it with `month` and `onMonthChange`.
214
+ `defaultMonth` falls back to the selected day's month, then the current month. Set it to the month of the task, such as the start of a statement period. To sync the page with a typed [TextInput](text-input.md), control it with `month` and `onMonthChange`.
215
215
 
216
216
  **Do:** Open on the month the task is about.
217
217
 
@@ -358,18 +358,18 @@ Turning the page announces the new month in a polite live region.
358
358
 
359
359
  ## Related
360
360
 
361
- [DatePicker](/docs/components/date-picker)
361
+ [DatePicker](date-picker.md)
362
362
 
363
363
  Use for a date field in a form.
364
364
 
365
- [TextInput](/docs/components/text-input)
365
+ [TextInput](text-input.md)
366
366
 
367
367
  Use for typed dates.
368
368
 
369
- [ChoiceGroup](/docs/components/choice-group)
369
+ [ChoiceGroup](choice-group.md)
370
370
 
371
371
  Use for preset ranges.
372
372
 
373
- [Field](/docs/components/field)
373
+ [Field](field.md)
374
374
 
375
375
  Use for labelling the date and its constraints.
@@ -47,9 +47,9 @@ import { Callout } from '@tempoxyz/ds'
47
47
 
48
48
  ### When Not to Use
49
49
 
50
- * Use an [Alert](/docs/components/alert) for a message about a status or an outcome.
51
- * Use a [Banner](/docs/components/banner) for a message about the whole page or product.
52
- * Use a [Snippet](/docs/components/snippet) for code that people copy.
50
+ * Use an [Alert](alert.md) for a message about a status or an outcome.
51
+ * Use a [Banner](banner.md) for a message about the whole page or product.
52
+ * Use a [Snippet](snippet.md) for code that people copy.
53
53
 
54
54
  ### Keep the Passage Optional
55
55
 
@@ -87,10 +87,10 @@ A callout renders a `<div>` with no role, so screen readers read its text in pla
87
87
 
88
88
  ## Related
89
89
 
90
- [Alert](/docs/components/alert)
90
+ [Alert](alert.md)
91
91
 
92
92
  Use for a message about a status or an outcome.
93
93
 
94
- [Banner](/docs/components/banner)
94
+ [Banner](banner.md)
95
95
 
96
96
  Use for a message about the whole page.
@@ -6,7 +6,7 @@ Shares one value array across a group of checkboxes.
6
6
 
7
7
  ## Overview
8
8
 
9
- Each [Checkbox](/docs/components/checkbox) inside it joins the array under its `value`.
9
+ Each [Checkbox](checkbox.md) inside it joins the array under its `value`.
10
10
 
11
11
  ## Examples
12
12
 
@@ -117,11 +117,11 @@ import { CheckboxGroup, Checkbox } from '@tempoxyz/ds'
117
117
 
118
118
  ### When Not to Use
119
119
 
120
- * If only one option can be chosen, use [RadioGroup](/docs/components/radio-group).
121
- * Use [Combobox](/docs/components/combobox) with `multiple` for a long list filtered by typing, such as assets.
122
- * If each option needs an icon or a description, use `Choicebox.CheckboxGroup` from [Choicebox](/docs/components/choicebox).
123
- * Use a single [Checkbox](/docs/components/checkbox) for one independent choice.
124
- * If choices apply immediately, as in a settings list, use a [Switch](/docs/components/switch) for each.
120
+ * If only one option can be chosen, use [RadioGroup](radio-group.md).
121
+ * Use [Combobox](combobox.md) with `multiple` for a long list filtered by typing, such as assets.
122
+ * If each option needs an icon or a description, use `Choicebox.CheckboxGroup` from [Choicebox](choicebox.md).
123
+ * Use a single [Checkbox](checkbox.md) for one independent choice.
124
+ * If choices apply immediately, as in a settings list, use a [Switch](switch.md) for each.
125
125
 
126
126
  ### Name the Group With Its Question
127
127
 
@@ -259,7 +259,7 @@ namespace styles {
259
259
 
260
260
  ### Keep the List Short and Ordered
261
261
 
262
- Sort long lists of names alphabetically. If the list no longer fits without scrolling, switch to a [Combobox](/docs/components/combobox) with `multiple`.
262
+ Sort long lists of names alphabetically. If the list no longer fits without scrolling, switch to a [Combobox](combobox.md) with `multiple`.
263
263
 
264
264
  **Do:** Order options predictably, such as by payment lifecycle.
265
265
 
@@ -479,7 +479,7 @@ Wraps related checkboxes in a named `group`. Each checkbox follows the [WAI-ARIA
479
479
  ### Semantics
480
480
 
481
481
  * **Group (group):** Name it with `aria-label` or a `Field.Label`, or screen readers announce an unnamed group.
482
- * **Checkboxes (checkbox):** Each keeps its own role and state, and adds its `value` to the group. See [Checkbox](/docs/components/checkbox#accessibility).
482
+ * **Checkboxes (checkbox):** Each keeps its own role and state, and adds its `value` to the group. See [Checkbox](checkbox.md#accessibility).
483
483
  * **Parent Checkbox (aria-controls):** Points at the checkboxes it controls. Reports a mixed state while only some are checked.
484
484
  * **Disabled (aria-disabled):** Disables every checkbox and removes them from the tab order.
485
485
 
@@ -500,22 +500,22 @@ Focus stays on a parent checkbox when it changes the other options.
500
500
 
501
501
  ## Related
502
502
 
503
- [Checkbox](/docs/components/checkbox)
503
+ [Checkbox](checkbox.md)
504
504
 
505
505
  Use for a single choice.
506
506
 
507
- [Choicebox](/docs/components/choicebox)
507
+ [Choicebox](choicebox.md)
508
508
 
509
509
  Use for options with descriptions.
510
510
 
511
- [Combobox](/docs/components/combobox)
511
+ [Combobox](combobox.md)
512
512
 
513
513
  Use for choosing several items from a long list.
514
514
 
515
- [Fieldset](/docs/components/fieldset)
515
+ [Fieldset](fieldset.md)
516
516
 
517
517
  Use for grouping fields under a legend.
518
518
 
519
- [Field](/docs/components/field)
519
+ [Field](field.md)
520
520
 
521
521
  Use for naming the group and showing its error.