@tempoxyz/ds 0.2.5 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (735) hide show
  1. package/README.md +2 -0
  2. package/dist/fonts/Inter-cyrillic-ext.woff2 +0 -0
  3. package/dist/fonts/Inter-cyrillic.woff2 +0 -0
  4. package/dist/fonts/Inter-greek-ext.woff2 +0 -0
  5. package/dist/fonts/Inter-greek.woff2 +0 -0
  6. package/dist/fonts/Inter-latin-ext.woff2 +0 -0
  7. package/dist/fonts/Inter-latin.woff2 +0 -0
  8. package/dist/fonts/Inter-symbols.woff2 +0 -0
  9. package/dist/fonts/Inter-vietnamese.woff2 +0 -0
  10. package/dist/fonts/JetBrainsMono-Bold-latin.woff2 +0 -0
  11. package/dist/fonts/JetBrainsMono-Bold-other.woff2 +0 -0
  12. package/dist/fonts/JetBrainsMono-Bold.woff2 +0 -0
  13. package/dist/fonts/JetBrainsMono-Medium-latin.woff2 +0 -0
  14. package/dist/fonts/JetBrainsMono-Medium-other.woff2 +0 -0
  15. package/dist/fonts/JetBrainsMono-Medium.woff2 +0 -0
  16. package/dist/fonts/JetBrainsMono-Regular-latin.woff2 +0 -0
  17. package/dist/fonts/JetBrainsMono-Regular-other.woff2 +0 -0
  18. package/dist/fonts/JetBrainsMono-Regular.woff2 +0 -0
  19. package/dist/fonts/JetBrainsMono-SemiBold-latin.woff2 +0 -0
  20. package/dist/fonts/JetBrainsMono-SemiBold-other.woff2 +0 -0
  21. package/dist/fonts/JetBrainsMono-SemiBold.woff2 +0 -0
  22. package/dist/fonts/Pilat-Black-latin.woff2 +0 -0
  23. package/dist/fonts/Pilat-Black-other.woff2 +0 -0
  24. package/dist/fonts/Pilat-Black.woff2 +0 -0
  25. package/dist/fonts/Pilat-Bold-latin.woff2 +0 -0
  26. package/dist/fonts/Pilat-Bold-other.woff2 +0 -0
  27. package/dist/fonts/Pilat-Bold.woff2 +0 -0
  28. package/dist/fonts/Pilat-Book-latin.woff2 +0 -0
  29. package/dist/fonts/Pilat-Book-other.woff2 +0 -0
  30. package/dist/fonts/Pilat-Book.woff2 +0 -0
  31. package/dist/fonts/Pilat-Demi-latin.woff2 +0 -0
  32. package/dist/fonts/Pilat-Demi-other.woff2 +0 -0
  33. package/dist/fonts/Pilat-Demi.woff2 +0 -0
  34. package/dist/fonts/Pilat-Heavy-latin.woff2 +0 -0
  35. package/dist/fonts/Pilat-Heavy-other.woff2 +0 -0
  36. package/dist/fonts/Pilat-Heavy.woff2 +0 -0
  37. package/dist/fonts/Pilat-Light-latin.woff2 +0 -0
  38. package/dist/fonts/Pilat-Light-other.woff2 +0 -0
  39. package/dist/fonts/Pilat-Light.woff2 +0 -0
  40. package/dist/fonts/Pilat-Regular-latin.woff2 +0 -0
  41. package/dist/fonts/Pilat-Regular-other.woff2 +0 -0
  42. package/dist/fonts/Pilat-Regular.woff2 +0 -0
  43. package/dist/fonts/Pilat-Thin-latin.woff2 +0 -0
  44. package/dist/fonts/Pilat-Thin-other.woff2 +0 -0
  45. package/dist/fonts/Pilat-Thin.woff2 +0 -0
  46. package/dist/mobile/Haptics.d.ts +39 -0
  47. package/dist/mobile/Haptics.d.ts.map +1 -0
  48. package/dist/mobile/Haptics.js +51 -0
  49. package/dist/mobile/Haptics.js.map +1 -0
  50. package/dist/mobile/components/Button.d.ts.map +1 -1
  51. package/dist/mobile/components/Button.js +3 -3
  52. package/dist/mobile/components/Button.js.map +1 -1
  53. package/dist/mobile/components/IconButton.d.ts.map +1 -1
  54. package/dist/mobile/components/IconButton.js +3 -3
  55. package/dist/mobile/components/IconButton.js.map +1 -1
  56. package/dist/mobile/components/Spinner.js +1 -1
  57. package/dist/mobile/components/Spinner.js.map +1 -1
  58. package/dist/mobile/components/TextButton.d.ts.map +1 -1
  59. package/dist/mobile/components/TextButton.js +3 -3
  60. package/dist/mobile/components/TextButton.js.map +1 -1
  61. package/dist/mobile/components/TextInput.js +1 -1
  62. package/dist/mobile/components/TextInput.js.map +1 -1
  63. package/dist/mobile/components/Toast.js +1 -1
  64. package/dist/mobile/components/Toast.js.map +1 -1
  65. package/dist/mobile/components/Toggle.d.ts.map +1 -1
  66. package/dist/mobile/components/Toggle.js +2 -2
  67. package/dist/mobile/components/Toggle.js.map +1 -1
  68. package/dist/mobile/index.d.ts +2 -0
  69. package/dist/mobile/index.d.ts.map +1 -1
  70. package/dist/mobile/index.js +2 -0
  71. package/dist/mobile/index.js.map +1 -1
  72. package/dist/mobile/useColor.d.ts +23 -0
  73. package/dist/mobile/useColor.d.ts.map +1 -0
  74. package/dist/mobile/useColor.js +29 -0
  75. package/dist/mobile/useColor.js.map +1 -0
  76. package/dist/oxlint/rules/PreferComponent.js +6 -6
  77. package/dist/oxlint/rules/PreferComponent.js.map +1 -1
  78. package/dist/web/components/Accordion.css +1 -1
  79. package/dist/web/components/Accordion.d.ts +7 -7
  80. package/dist/web/components/Accordion.js +8 -8
  81. package/dist/web/components/Accordion.js.map +1 -1
  82. package/dist/web/components/Accordion.js.zyzz.json +1 -1
  83. package/dist/web/components/AgentLogo.css +1 -0
  84. package/dist/web/components/AgentLogo.d.ts +206 -0
  85. package/dist/web/components/AgentLogo.d.ts.map +1 -0
  86. package/dist/web/components/AgentLogo.js +86 -0
  87. package/dist/web/components/AgentLogo.js.map +1 -0
  88. package/dist/web/components/AgentLogo.js.zyzz.json +1 -0
  89. package/dist/web/components/Alert.css +1 -0
  90. package/dist/web/components/Alert.d.ts +156 -0
  91. package/dist/web/components/Alert.d.ts.map +1 -0
  92. package/dist/web/components/Alert.js +92 -0
  93. package/dist/web/components/Alert.js.map +1 -0
  94. package/dist/web/components/Alert.js.zyzz.json +1 -0
  95. package/dist/web/components/AlertDialog.d.ts +40 -28
  96. package/dist/web/components/AlertDialog.d.ts.map +1 -1
  97. package/dist/web/components/AlertDialog.js +31 -36
  98. package/dist/web/components/AlertDialog.js.map +1 -1
  99. package/dist/web/components/AlertDialog.js.zyzz.json +1 -1
  100. package/dist/web/components/Amount.css +1 -1
  101. package/dist/web/components/Amount.d.ts +5 -5
  102. package/dist/web/components/Amount.d.ts.map +1 -1
  103. package/dist/web/components/Amount.js +3 -3
  104. package/dist/web/components/Amount.js.map +1 -1
  105. package/dist/web/components/Amount.js.zyzz.json +1 -1
  106. package/dist/web/components/AmountInput.css +1 -1
  107. package/dist/web/components/AmountInput.d.ts +20 -39
  108. package/dist/web/components/AmountInput.d.ts.map +1 -1
  109. package/dist/web/components/AmountInput.js +32 -38
  110. package/dist/web/components/AmountInput.js.map +1 -1
  111. package/dist/web/components/AmountInput.js.zyzz.json +1 -1
  112. package/dist/web/components/AppShell.css +1 -1
  113. package/dist/web/components/AppShell.d.ts +65 -29
  114. package/dist/web/components/AppShell.d.ts.map +1 -1
  115. package/dist/web/components/AppShell.js +33 -21
  116. package/dist/web/components/AppShell.js.map +1 -1
  117. package/dist/web/components/AppShell.js.zyzz.json +1 -1
  118. package/dist/web/components/AssetChip.css +1 -0
  119. package/dist/web/components/AssetChip.d.ts +38 -0
  120. package/dist/web/components/AssetChip.d.ts.map +1 -0
  121. package/dist/web/components/AssetChip.js +47 -0
  122. package/dist/web/components/AssetChip.js.map +1 -0
  123. package/dist/web/components/AssetChip.js.zyzz.json +1 -0
  124. package/dist/web/components/Autocomplete.d.ts +2 -2
  125. package/dist/web/components/Autocomplete.js +4 -4
  126. package/dist/web/components/Autocomplete.js.map +1 -1
  127. package/dist/web/components/Autocomplete.js.zyzz.json +1 -1
  128. package/dist/web/components/Avatar.css +1 -1
  129. package/dist/web/components/Avatar.d.ts +40 -115
  130. package/dist/web/components/Avatar.d.ts.map +1 -1
  131. package/dist/web/components/Avatar.js +19 -34
  132. package/dist/web/components/Avatar.js.map +1 -1
  133. package/dist/web/components/Avatar.js.zyzz.json +1 -1
  134. package/dist/web/components/Badge.css +1 -0
  135. package/dist/web/components/Badge.d.ts +134 -0
  136. package/dist/web/components/Badge.d.ts.map +1 -0
  137. package/dist/web/components/Badge.js +38 -0
  138. package/dist/web/components/Badge.js.map +1 -0
  139. package/dist/web/components/Badge.js.zyzz.json +1 -0
  140. package/dist/web/components/Banner.css +1 -1
  141. package/dist/web/components/Banner.d.ts +12 -12
  142. package/dist/web/components/Banner.d.ts.map +1 -1
  143. package/dist/web/components/Banner.js +6 -6
  144. package/dist/web/components/Banner.js.map +1 -1
  145. package/dist/web/components/Banner.js.zyzz.json +1 -1
  146. package/dist/web/components/BarChart.css +1 -0
  147. package/dist/web/components/BarChart.d.ts +155 -0
  148. package/dist/web/components/BarChart.d.ts.map +1 -0
  149. package/dist/web/components/BarChart.js +119 -0
  150. package/dist/web/components/BarChart.js.map +1 -0
  151. package/dist/web/components/BarChart.js.zyzz.json +1 -0
  152. package/dist/web/components/Breadcrumbs.css +1 -1
  153. package/dist/web/components/Breadcrumbs.d.ts +6 -6
  154. package/dist/web/components/Breadcrumbs.js +6 -6
  155. package/dist/web/components/Breadcrumbs.js.map +1 -1
  156. package/dist/web/components/Breadcrumbs.js.zyzz.json +1 -1
  157. package/dist/web/components/Button.css +1 -1
  158. package/dist/web/components/Button.d.ts +166 -35
  159. package/dist/web/components/Button.d.ts.map +1 -1
  160. package/dist/web/components/Button.js +14 -10
  161. package/dist/web/components/Button.js.map +1 -1
  162. package/dist/web/components/Button.js.zyzz.json +1 -1
  163. package/dist/web/components/ButtonGroup.css +1 -0
  164. package/dist/web/components/ButtonGroup.d.ts +56 -0
  165. package/dist/web/components/ButtonGroup.d.ts.map +1 -0
  166. package/dist/web/components/ButtonGroup.js +33 -0
  167. package/dist/web/components/ButtonGroup.js.map +1 -0
  168. package/dist/web/components/ButtonGroup.js.zyzz.json +1 -0
  169. package/dist/web/components/Calendar.css +1 -1
  170. package/dist/web/components/Calendar.d.ts.map +1 -1
  171. package/dist/web/components/Calendar.js +8 -8
  172. package/dist/web/components/Calendar.js.map +1 -1
  173. package/dist/web/components/Calendar.js.zyzz.json +1 -1
  174. package/dist/web/components/Checkbox.css +1 -1
  175. package/dist/web/components/Checkbox.d.ts +11 -11
  176. package/dist/web/components/Checkbox.d.ts.map +1 -1
  177. package/dist/web/components/Checkbox.js +9 -6
  178. package/dist/web/components/Checkbox.js.map +1 -1
  179. package/dist/web/components/Checkbox.js.zyzz.json +1 -1
  180. package/dist/web/components/CheckboxGroup.css +1 -1
  181. package/dist/web/components/CheckboxGroup.js +1 -1
  182. package/dist/web/components/CheckboxGroup.js.zyzz.json +1 -1
  183. package/dist/web/components/ChoiceGroup.css +1 -1
  184. package/dist/web/components/ChoiceGroup.d.ts +44 -16
  185. package/dist/web/components/ChoiceGroup.d.ts.map +1 -1
  186. package/dist/web/components/ChoiceGroup.js +33 -9
  187. package/dist/web/components/ChoiceGroup.js.map +1 -1
  188. package/dist/web/components/ChoiceGroup.js.zyzz.json +1 -1
  189. package/dist/web/components/Choicebox.css +1 -1
  190. package/dist/web/components/Choicebox.d.ts +9 -9
  191. package/dist/web/components/Choicebox.d.ts.map +1 -1
  192. package/dist/web/components/Choicebox.js +11 -11
  193. package/dist/web/components/Choicebox.js.map +1 -1
  194. package/dist/web/components/Choicebox.js.zyzz.json +1 -1
  195. package/dist/web/components/Combobox.css +1 -1
  196. package/dist/web/components/Combobox.d.ts +2 -2
  197. package/dist/web/components/Combobox.d.ts.map +1 -1
  198. package/dist/web/components/Combobox.js +8 -8
  199. package/dist/web/components/Combobox.js.map +1 -1
  200. package/dist/web/components/Combobox.js.zyzz.json +1 -1
  201. package/dist/web/components/Container.css +1 -1
  202. package/dist/web/components/Container.js +1 -3
  203. package/dist/web/components/Container.js.zyzz.json +1 -1
  204. package/dist/web/components/CopyButton.css +1 -1
  205. package/dist/web/components/CopyButton.js +4 -4
  206. package/dist/web/components/CopyButton.js.map +1 -1
  207. package/dist/web/components/CopyButton.js.zyzz.json +1 -1
  208. package/dist/web/components/DatePicker.css +1 -1
  209. package/dist/web/components/DatePicker.d.ts +37 -56
  210. package/dist/web/components/DatePicker.d.ts.map +1 -1
  211. package/dist/web/components/DatePicker.js +8 -8
  212. package/dist/web/components/DatePicker.js.map +1 -1
  213. package/dist/web/components/DatePicker.js.zyzz.json +1 -1
  214. package/dist/web/components/Dialog.css +1 -1
  215. package/dist/web/components/Dialog.d.ts +189 -20
  216. package/dist/web/components/Dialog.d.ts.map +1 -1
  217. package/dist/web/components/Dialog.js +94 -27
  218. package/dist/web/components/Dialog.js.map +1 -1
  219. package/dist/web/components/Dialog.js.zyzz.json +1 -1
  220. package/dist/web/components/Drawer.css +1 -1
  221. package/dist/web/components/Drawer.d.ts +7 -2
  222. package/dist/web/components/Drawer.d.ts.map +1 -1
  223. package/dist/web/components/Drawer.js +13 -7
  224. package/dist/web/components/Drawer.js.map +1 -1
  225. package/dist/web/components/Drawer.js.zyzz.json +1 -1
  226. package/dist/web/components/Empty.css +1 -1
  227. package/dist/web/components/Empty.d.ts +2 -0
  228. package/dist/web/components/Empty.d.ts.map +1 -1
  229. package/dist/web/components/Empty.js +7 -5
  230. package/dist/web/components/Empty.js.map +1 -1
  231. package/dist/web/components/Empty.js.zyzz.json +1 -1
  232. package/dist/web/components/Field.css +1 -1
  233. package/dist/web/components/Field.d.ts +16 -21
  234. package/dist/web/components/Field.d.ts.map +1 -1
  235. package/dist/web/components/Field.js +38 -36
  236. package/dist/web/components/Field.js.map +1 -1
  237. package/dist/web/components/Field.js.zyzz.json +1 -1
  238. package/dist/web/components/Fieldset.css +1 -1
  239. package/dist/web/components/Fieldset.d.ts +9 -18
  240. package/dist/web/components/Fieldset.d.ts.map +1 -1
  241. package/dist/web/components/Fieldset.js +12 -15
  242. package/dist/web/components/Fieldset.js.map +1 -1
  243. package/dist/web/components/Fieldset.js.zyzz.json +1 -1
  244. package/dist/web/components/Frame.css +1 -1
  245. package/dist/web/components/Frame.d.ts +13 -19
  246. package/dist/web/components/Frame.d.ts.map +1 -1
  247. package/dist/web/components/Frame.js +9 -11
  248. package/dist/web/components/Frame.js.map +1 -1
  249. package/dist/web/components/Frame.js.zyzz.json +1 -1
  250. package/dist/web/components/Gauge.css +1 -1
  251. package/dist/web/components/Gauge.d.ts +2 -2
  252. package/dist/web/components/Gauge.d.ts.map +1 -1
  253. package/dist/web/components/Gauge.js +6 -6
  254. package/dist/web/components/Gauge.js.map +1 -1
  255. package/dist/web/components/Gauge.js.zyzz.json +1 -1
  256. package/dist/web/components/Grid.css +1 -1
  257. package/dist/web/components/Grid.js +1 -3
  258. package/dist/web/components/Grid.js.zyzz.json +1 -1
  259. package/dist/web/components/Hex.css +1 -1
  260. package/dist/web/components/Hex.d.ts +10 -10
  261. package/dist/web/components/Hex.js +6 -6
  262. package/dist/web/components/Hex.js.map +1 -1
  263. package/dist/web/components/Hex.js.zyzz.json +1 -1
  264. package/dist/web/components/IconTile.css +1 -0
  265. package/dist/web/components/IconTile.d.ts +62 -0
  266. package/dist/web/components/IconTile.d.ts.map +1 -0
  267. package/dist/web/components/IconTile.js +28 -0
  268. package/dist/web/components/IconTile.js.map +1 -0
  269. package/dist/web/components/IconTile.js.zyzz.json +1 -0
  270. package/dist/web/components/Identicon.css +1 -1
  271. package/dist/web/components/Identicon.d.ts +1 -0
  272. package/dist/web/components/Identicon.d.ts.map +1 -1
  273. package/dist/web/components/Identicon.js +1 -3
  274. package/dist/web/components/Identicon.js.map +1 -1
  275. package/dist/web/components/Identicon.js.zyzz.json +1 -1
  276. package/dist/web/components/Inline.css +1 -1
  277. package/dist/web/components/Inline.js +1 -3
  278. package/dist/web/components/Inline.js.zyzz.json +1 -1
  279. package/dist/web/components/Inset.css +1 -1
  280. package/dist/web/components/Inset.js +1 -3
  281. package/dist/web/components/Inset.js.zyzz.json +1 -1
  282. package/dist/web/components/Kbd.css +1 -1
  283. package/dist/web/components/Kbd.d.ts +7 -7
  284. package/dist/web/components/Kbd.js +3 -3
  285. package/dist/web/components/Kbd.js.map +1 -1
  286. package/dist/web/components/Kbd.js.zyzz.json +1 -1
  287. package/dist/web/components/ListGroup.css +1 -0
  288. package/dist/web/components/ListGroup.d.ts +483 -0
  289. package/dist/web/components/ListGroup.d.ts.map +1 -0
  290. package/dist/web/components/ListGroup.js +266 -0
  291. package/dist/web/components/ListGroup.js.map +1 -0
  292. package/dist/web/components/ListGroup.js.zyzz.json +1 -0
  293. package/dist/web/components/LoadingDots.css +1 -1
  294. package/dist/web/components/LoadingDots.d.ts.map +1 -1
  295. package/dist/web/components/LoadingDots.js +3 -3
  296. package/dist/web/components/LoadingDots.js.map +1 -1
  297. package/dist/web/components/LoadingDots.js.zyzz.json +1 -1
  298. package/dist/web/components/Menu.css +1 -1
  299. package/dist/web/components/Menu.d.ts +39 -20
  300. package/dist/web/components/Menu.d.ts.map +1 -1
  301. package/dist/web/components/Menu.js +15 -10
  302. package/dist/web/components/Menu.js.map +1 -1
  303. package/dist/web/components/Menu.js.zyzz.json +1 -1
  304. package/dist/web/components/NetworkLogo.css +1 -0
  305. package/dist/web/components/NetworkLogo.d.ts +58 -0
  306. package/dist/web/components/NetworkLogo.d.ts.map +1 -0
  307. package/dist/web/components/NetworkLogo.js +40 -0
  308. package/dist/web/components/NetworkLogo.js.map +1 -0
  309. package/dist/web/components/NetworkLogo.js.zyzz.json +1 -0
  310. package/dist/web/components/NumberField.css +1 -1
  311. package/dist/web/components/NumberField.d.ts +3 -3
  312. package/dist/web/components/NumberField.d.ts.map +1 -1
  313. package/dist/web/components/NumberField.js +8 -8
  314. package/dist/web/components/NumberField.js.map +1 -1
  315. package/dist/web/components/NumberField.js.zyzz.json +1 -1
  316. package/dist/web/components/OtpField.css +1 -1
  317. package/dist/web/components/OtpField.d.ts +8 -68
  318. package/dist/web/components/OtpField.d.ts.map +1 -1
  319. package/dist/web/components/OtpField.js +13 -10
  320. package/dist/web/components/OtpField.js.map +1 -1
  321. package/dist/web/components/OtpField.js.zyzz.json +1 -1
  322. package/dist/web/components/Pagination.css +1 -1
  323. package/dist/web/components/Pagination.d.ts +16 -14
  324. package/dist/web/components/Pagination.d.ts.map +1 -1
  325. package/dist/web/components/Pagination.js +6 -6
  326. package/dist/web/components/Pagination.js.map +1 -1
  327. package/dist/web/components/Pagination.js.zyzz.json +1 -1
  328. package/dist/web/components/Popover.css +1 -1
  329. package/dist/web/components/Popover.js +5 -5
  330. package/dist/web/components/Popover.js.map +1 -1
  331. package/dist/web/components/Popover.js.zyzz.json +1 -1
  332. package/dist/web/components/Progress.css +1 -1
  333. package/dist/web/components/Progress.d.ts +2 -2
  334. package/dist/web/components/Progress.d.ts.map +1 -1
  335. package/dist/web/components/Progress.js +6 -6
  336. package/dist/web/components/Progress.js.map +1 -1
  337. package/dist/web/components/Progress.js.zyzz.json +1 -1
  338. package/dist/web/components/Qr.css +1 -1
  339. package/dist/web/components/Qr.d.ts +1 -1
  340. package/dist/web/components/Qr.js +1 -3
  341. package/dist/web/components/Qr.js.map +1 -1
  342. package/dist/web/components/Qr.js.zyzz.json +1 -1
  343. package/dist/web/components/RadioGroup.css +1 -1
  344. package/dist/web/components/RadioGroup.d.ts.map +1 -1
  345. package/dist/web/components/RadioGroup.js +4 -4
  346. package/dist/web/components/RadioGroup.js.map +1 -1
  347. package/dist/web/components/RadioGroup.js.zyzz.json +1 -1
  348. package/dist/web/components/SecretValue.css +1 -1
  349. package/dist/web/components/SecretValue.d.ts +7 -7
  350. package/dist/web/components/SecretValue.js +4 -4
  351. package/dist/web/components/SecretValue.js.map +1 -1
  352. package/dist/web/components/SecretValue.js.zyzz.json +1 -1
  353. package/dist/web/components/Select.css +1 -1
  354. package/dist/web/components/Select.d.ts +64 -2
  355. package/dist/web/components/Select.d.ts.map +1 -1
  356. package/dist/web/components/Select.js +24 -7
  357. package/dist/web/components/Select.js.map +1 -1
  358. package/dist/web/components/Select.js.zyzz.json +1 -1
  359. package/dist/web/components/Separator.css +1 -1
  360. package/dist/web/components/Separator.d.ts +17 -3
  361. package/dist/web/components/Separator.d.ts.map +1 -1
  362. package/dist/web/components/Separator.js +40 -5
  363. package/dist/web/components/Separator.js.map +1 -1
  364. package/dist/web/components/Separator.js.zyzz.json +1 -1
  365. package/dist/web/components/SidebarMenu.css +1 -1
  366. package/dist/web/components/SidebarMenu.d.ts +186 -39
  367. package/dist/web/components/SidebarMenu.d.ts.map +1 -1
  368. package/dist/web/components/SidebarMenu.js +91 -19
  369. package/dist/web/components/SidebarMenu.js.map +1 -1
  370. package/dist/web/components/SidebarMenu.js.zyzz.json +1 -1
  371. package/dist/web/components/Skeleton.css +1 -1
  372. package/dist/web/components/Skeleton.d.ts +5 -3
  373. package/dist/web/components/Skeleton.d.ts.map +1 -1
  374. package/dist/web/components/Skeleton.js +1 -3
  375. package/dist/web/components/Skeleton.js.map +1 -1
  376. package/dist/web/components/Skeleton.js.zyzz.json +1 -1
  377. package/dist/web/components/Slider.css +1 -1
  378. package/dist/web/components/Slider.d.ts.map +1 -1
  379. package/dist/web/components/Slider.js +6 -6
  380. package/dist/web/components/Slider.js.map +1 -1
  381. package/dist/web/components/Slider.js.zyzz.json +1 -1
  382. package/dist/web/components/Snippet.css +1 -1
  383. package/dist/web/components/Snippet.d.ts +27 -65
  384. package/dist/web/components/Snippet.d.ts.map +1 -1
  385. package/dist/web/components/Snippet.js +48 -11
  386. package/dist/web/components/Snippet.js.map +1 -1
  387. package/dist/web/components/Snippet.js.zyzz.json +1 -1
  388. package/dist/web/components/Spinner.css +1 -1
  389. package/dist/web/components/Spinner.d.ts +25 -16
  390. package/dist/web/components/Spinner.d.ts.map +1 -1
  391. package/dist/web/components/Spinner.js +13 -8
  392. package/dist/web/components/Spinner.js.map +1 -1
  393. package/dist/web/components/Spinner.js.zyzz.json +1 -1
  394. package/dist/web/components/SplitBar.css +1 -0
  395. package/dist/web/components/SplitBar.d.ts +99 -0
  396. package/dist/web/components/SplitBar.d.ts.map +1 -0
  397. package/dist/web/components/SplitBar.js +49 -0
  398. package/dist/web/components/SplitBar.js.map +1 -0
  399. package/dist/web/components/SplitBar.js.zyzz.json +1 -0
  400. package/dist/web/components/SplitButton.css +1 -1
  401. package/dist/web/components/SplitButton.d.ts +4 -1
  402. package/dist/web/components/SplitButton.d.ts.map +1 -1
  403. package/dist/web/components/SplitButton.js +2 -2
  404. package/dist/web/components/SplitButton.js.map +1 -1
  405. package/dist/web/components/SplitButton.js.zyzz.json +1 -1
  406. package/dist/web/components/Stack.css +1 -1
  407. package/dist/web/components/Stack.js +1 -3
  408. package/dist/web/components/Stack.js.zyzz.json +1 -1
  409. package/dist/web/components/StatusChip.css +1 -0
  410. package/dist/web/components/StatusChip.d.ts +162 -0
  411. package/dist/web/components/StatusChip.d.ts.map +1 -0
  412. package/dist/web/components/StatusChip.js +37 -0
  413. package/dist/web/components/StatusChip.js.map +1 -0
  414. package/dist/web/components/StatusChip.js.zyzz.json +1 -0
  415. package/dist/web/components/StatusRow.css +1 -0
  416. package/dist/web/components/StatusRow.d.ts +121 -0
  417. package/dist/web/components/StatusRow.d.ts.map +1 -0
  418. package/dist/web/components/StatusRow.js +75 -0
  419. package/dist/web/components/StatusRow.js.map +1 -0
  420. package/dist/web/components/StatusRow.js.zyzz.json +1 -0
  421. package/dist/web/components/Stepper.css +1 -1
  422. package/dist/web/components/Stepper.d.ts +10 -7
  423. package/dist/web/components/Stepper.d.ts.map +1 -1
  424. package/dist/web/components/Stepper.js +7 -6
  425. package/dist/web/components/Stepper.js.map +1 -1
  426. package/dist/web/components/Stepper.js.zyzz.json +1 -1
  427. package/dist/web/components/Surface.css +1 -1
  428. package/dist/web/components/Surface.d.ts +56 -119
  429. package/dist/web/components/Surface.d.ts.map +1 -1
  430. package/dist/web/components/Surface.js +19 -14
  431. package/dist/web/components/Surface.js.map +1 -1
  432. package/dist/web/components/Surface.js.zyzz.json +1 -1
  433. package/dist/web/components/Switch.css +1 -1
  434. package/dist/web/components/Switch.d.ts +14 -18
  435. package/dist/web/components/Switch.d.ts.map +1 -1
  436. package/dist/web/components/Switch.js +14 -16
  437. package/dist/web/components/Switch.js.map +1 -1
  438. package/dist/web/components/Switch.js.zyzz.json +1 -1
  439. package/dist/web/components/Table.css +1 -1
  440. package/dist/web/components/Table.d.ts +152 -67
  441. package/dist/web/components/Table.d.ts.map +1 -1
  442. package/dist/web/components/Table.js +91 -25
  443. package/dist/web/components/Table.js.map +1 -1
  444. package/dist/web/components/Table.js.zyzz.json +1 -1
  445. package/dist/web/components/Tabs.css +1 -1
  446. package/dist/web/components/Tabs.d.ts +49 -42
  447. package/dist/web/components/Tabs.d.ts.map +1 -1
  448. package/dist/web/components/Tabs.js +44 -15
  449. package/dist/web/components/Tabs.js.map +1 -1
  450. package/dist/web/components/Tabs.js.zyzz.json +1 -1
  451. package/dist/web/components/TempoLogo.css +1 -0
  452. package/dist/web/components/TempoLogo.d.ts +47 -0
  453. package/dist/web/components/TempoLogo.d.ts.map +1 -0
  454. package/dist/web/components/TempoLogo.js +48 -0
  455. package/dist/web/components/TempoLogo.js.map +1 -0
  456. package/dist/web/components/TempoLogo.js.zyzz.json +1 -0
  457. package/dist/web/components/TextInput.css +1 -0
  458. package/dist/web/components/{Input.d.ts → TextInput.d.ts} +27 -18
  459. package/dist/web/components/TextInput.d.ts.map +1 -0
  460. package/dist/web/components/TextInput.js +138 -0
  461. package/dist/web/components/TextInput.js.map +1 -0
  462. package/dist/web/components/TextInput.js.zyzz.json +1 -0
  463. package/dist/web/components/Textarea.css +1 -1
  464. package/dist/web/components/Textarea.d.ts +29 -74
  465. package/dist/web/components/Textarea.d.ts.map +1 -1
  466. package/dist/web/components/Textarea.js +5 -14
  467. package/dist/web/components/Textarea.js.map +1 -1
  468. package/dist/web/components/Textarea.js.zyzz.json +1 -1
  469. package/dist/web/components/Toast.css +1 -1
  470. package/dist/web/components/Toast.d.ts +4 -4
  471. package/dist/web/components/Toast.d.ts.map +1 -1
  472. package/dist/web/components/Toast.js +10 -10
  473. package/dist/web/components/Toast.js.map +1 -1
  474. package/dist/web/components/Toast.js.zyzz.json +1 -1
  475. package/dist/web/components/Token.css +1 -1
  476. package/dist/web/components/Token.d.ts +32 -90
  477. package/dist/web/components/Token.d.ts.map +1 -1
  478. package/dist/web/components/Token.js +26 -90
  479. package/dist/web/components/Token.js.map +1 -1
  480. package/dist/web/components/Token.js.zyzz.json +1 -1
  481. package/dist/web/components/TokenLogo.css +1 -0
  482. package/dist/web/components/TokenLogo.d.ts +117 -0
  483. package/dist/web/components/TokenLogo.d.ts.map +1 -0
  484. package/dist/web/components/TokenLogo.js +112 -0
  485. package/dist/web/components/TokenLogo.js.map +1 -0
  486. package/dist/web/components/TokenLogo.js.zyzz.json +1 -0
  487. package/dist/web/components/Tooltip.css +1 -1
  488. package/dist/web/components/Tooltip.js +2 -2
  489. package/dist/web/components/Tooltip.js.map +1 -1
  490. package/dist/web/components/Tooltip.js.zyzz.json +1 -1
  491. package/dist/web/components/VerificationCode.css +1 -0
  492. package/dist/web/components/VerificationCode.d.ts +47 -0
  493. package/dist/web/components/VerificationCode.d.ts.map +1 -0
  494. package/dist/web/components/VerificationCode.js +55 -0
  495. package/dist/web/components/VerificationCode.js.map +1 -0
  496. package/dist/web/components/VerificationCode.js.zyzz.json +1 -0
  497. package/dist/web/components/Visual.css +1 -0
  498. package/dist/web/components/Visual.d.ts +65 -0
  499. package/dist/web/components/Visual.d.ts.map +1 -0
  500. package/dist/web/components/Visual.js +51 -0
  501. package/dist/web/components/Visual.js.map +1 -0
  502. package/dist/web/components/Visual.js.zyzz.json +1 -0
  503. package/dist/web/components/internal/Field.css +1 -1
  504. package/dist/web/components/internal/Field.d.ts +41 -87
  505. package/dist/web/components/internal/Field.d.ts.map +1 -1
  506. package/dist/web/components/internal/Field.js +9 -8
  507. package/dist/web/components/internal/Field.js.map +1 -1
  508. package/dist/web/components/internal/Field.js.zyzz.json +1 -1
  509. package/dist/web/components/internal/InputGroup.css +1 -1
  510. package/dist/web/components/internal/InputGroup.d.ts +38 -99
  511. package/dist/web/components/internal/InputGroup.d.ts.map +1 -1
  512. package/dist/web/components/internal/InputGroup.js +6 -8
  513. package/dist/web/components/internal/InputGroup.js.map +1 -1
  514. package/dist/web/components/internal/InputGroup.js.zyzz.json +1 -1
  515. package/dist/web/components/internal/Listbox.css +1 -1
  516. package/dist/web/components/internal/Listbox.d.ts +8 -8
  517. package/dist/web/components/internal/Listbox.js +13 -13
  518. package/dist/web/components/internal/Listbox.js.map +1 -1
  519. package/dist/web/components/internal/Listbox.js.zyzz.json +1 -1
  520. package/dist/web/components/internal/RowDisabled.d.ts +3 -0
  521. package/dist/web/components/internal/RowDisabled.d.ts.map +1 -0
  522. package/dist/web/components/internal/RowDisabled.js +9 -0
  523. package/dist/web/components/internal/RowDisabled.js.map +1 -0
  524. package/dist/web/components/internal/RowsSize.d.ts +2 -3
  525. package/dist/web/components/internal/RowsSize.d.ts.map +1 -1
  526. package/dist/web/components/internal/RowsSize.js +3 -3
  527. package/dist/web/components/internal/RowsSize.js.map +1 -1
  528. package/dist/web/index.d.ts +18 -6
  529. package/dist/web/index.d.ts.map +1 -1
  530. package/dist/web/index.js +18 -6
  531. package/dist/web/index.js.map +1 -1
  532. package/dist/web/index.js.zyzz.json +1 -1
  533. package/dist/web/vars.d.ts +591 -699
  534. package/dist/web/vars.d.ts.map +1 -1
  535. package/dist/web/vars.js +7 -6
  536. package/dist/web/vars.js.map +1 -1
  537. package/dist/web/vars.js.zyzz.json +1 -1
  538. package/dist/web/zyzz.config.d.ts +2935 -3480
  539. package/dist/web/zyzz.config.d.ts.map +1 -1
  540. package/dist/web/zyzz.config.js +39 -3
  541. package/dist/web/zyzz.config.js.map +1 -1
  542. package/dist/web/zyzz.config.js.zyzz.json +1 -1
  543. package/package.json +180 -4
  544. package/src/fonts/Inter-cyrillic-ext.woff2 +0 -0
  545. package/src/fonts/Inter-cyrillic.woff2 +0 -0
  546. package/src/fonts/Inter-greek-ext.woff2 +0 -0
  547. package/src/fonts/Inter-greek.woff2 +0 -0
  548. package/src/fonts/Inter-latin-ext.woff2 +0 -0
  549. package/src/fonts/Inter-latin.woff2 +0 -0
  550. package/src/fonts/Inter-symbols.woff2 +0 -0
  551. package/src/fonts/Inter-vietnamese.woff2 +0 -0
  552. package/src/fonts/JetBrainsMono-Bold-latin.woff2 +0 -0
  553. package/src/fonts/JetBrainsMono-Bold-other.woff2 +0 -0
  554. package/src/fonts/JetBrainsMono-Bold.woff2 +0 -0
  555. package/src/fonts/JetBrainsMono-Medium-latin.woff2 +0 -0
  556. package/src/fonts/JetBrainsMono-Medium-other.woff2 +0 -0
  557. package/src/fonts/JetBrainsMono-Medium.woff2 +0 -0
  558. package/src/fonts/{Geist-OFL.txt → JetBrainsMono-OFL.txt} +4 -3
  559. package/src/fonts/JetBrainsMono-Regular-latin.woff2 +0 -0
  560. package/src/fonts/JetBrainsMono-Regular-other.woff2 +0 -0
  561. package/src/fonts/JetBrainsMono-Regular.woff2 +0 -0
  562. package/src/fonts/JetBrainsMono-SemiBold-latin.woff2 +0 -0
  563. package/src/fonts/JetBrainsMono-SemiBold-other.woff2 +0 -0
  564. package/src/fonts/JetBrainsMono-SemiBold.woff2 +0 -0
  565. package/src/fonts/Pilat-Black-latin.woff2 +0 -0
  566. package/src/fonts/Pilat-Black-other.woff2 +0 -0
  567. package/src/fonts/Pilat-Black.woff2 +0 -0
  568. package/src/fonts/Pilat-Bold-latin.woff2 +0 -0
  569. package/src/fonts/Pilat-Bold-other.woff2 +0 -0
  570. package/src/fonts/Pilat-Bold.woff2 +0 -0
  571. package/src/fonts/Pilat-Book-latin.woff2 +0 -0
  572. package/src/fonts/Pilat-Book-other.woff2 +0 -0
  573. package/src/fonts/Pilat-Book.woff2 +0 -0
  574. package/src/fonts/Pilat-Demi-latin.woff2 +0 -0
  575. package/src/fonts/Pilat-Demi-other.woff2 +0 -0
  576. package/src/fonts/Pilat-Demi.woff2 +0 -0
  577. package/src/fonts/Pilat-Heavy-latin.woff2 +0 -0
  578. package/src/fonts/Pilat-Heavy-other.woff2 +0 -0
  579. package/src/fonts/Pilat-Heavy.woff2 +0 -0
  580. package/src/fonts/Pilat-Light-latin.woff2 +0 -0
  581. package/src/fonts/Pilat-Light-other.woff2 +0 -0
  582. package/src/fonts/Pilat-Light.woff2 +0 -0
  583. package/src/fonts/Pilat-Regular-latin.woff2 +0 -0
  584. package/src/fonts/Pilat-Regular-other.woff2 +0 -0
  585. package/src/fonts/Pilat-Regular.woff2 +0 -0
  586. package/src/fonts/Pilat-Thin-latin.woff2 +0 -0
  587. package/src/fonts/Pilat-Thin-other.woff2 +0 -0
  588. package/src/fonts/Pilat-Thin.woff2 +0 -0
  589. package/src/fonts/README.md +22 -1
  590. package/src/mobile/Haptics.ts +55 -0
  591. package/src/mobile/README.md +97 -1
  592. package/src/mobile/components/Button.tsx +3 -3
  593. package/src/mobile/components/IconButton.tsx +3 -3
  594. package/src/mobile/components/Spinner.tsx +1 -1
  595. package/src/mobile/components/TextButton.tsx +3 -3
  596. package/src/mobile/components/TextInput.tsx +1 -1
  597. package/src/mobile/components/Toast.tsx +1 -1
  598. package/src/mobile/components/Toggle.tsx +2 -2
  599. package/src/mobile/index.ts +2 -0
  600. package/src/mobile/useColor.ts +31 -0
  601. package/src/oxlint/rules/PreferComponent.ts +6 -6
  602. package/src/web/README.md +7 -7
  603. package/src/web/components/Accordion.tsx +8 -8
  604. package/src/web/components/AgentLogo.tsx +330 -0
  605. package/src/web/components/Alert.tsx +301 -0
  606. package/src/web/components/AlertDialog.tsx +47 -111
  607. package/src/web/components/Amount.tsx +6 -6
  608. package/src/web/components/AmountInput.tsx +59 -134
  609. package/src/web/components/AppShell.tsx +95 -36
  610. package/src/web/components/AssetChip.tsx +110 -0
  611. package/src/web/components/Autocomplete.tsx +4 -4
  612. package/src/web/components/Avatar.tsx +42 -119
  613. package/src/web/components/Badge.tsx +120 -0
  614. package/src/web/components/Banner.tsx +13 -11
  615. package/src/web/components/BarChart.tsx +427 -0
  616. package/src/web/components/Breadcrumbs.tsx +7 -7
  617. package/src/web/components/Button.tsx +156 -42
  618. package/src/web/components/ButtonGroup.tsx +59 -0
  619. package/src/web/components/Calendar.tsx +15 -13
  620. package/src/web/components/Checkbox.tsx +14 -11
  621. package/src/web/components/ChoiceGroup.tsx +107 -26
  622. package/src/web/components/Choicebox.tsx +30 -28
  623. package/src/web/components/Combobox.tsx +10 -8
  624. package/src/web/components/CopyButton.tsx +1 -1
  625. package/src/web/components/DatePicker.tsx +42 -61
  626. package/src/web/components/Dialog.tsx +267 -71
  627. package/src/web/components/Drawer.tsx +45 -18
  628. package/src/web/components/Empty.tsx +13 -8
  629. package/src/web/components/Field.tsx +78 -132
  630. package/src/web/components/Fieldset.tsx +16 -37
  631. package/src/web/components/Frame.tsx +13 -20
  632. package/src/web/components/Gauge.tsx +4 -4
  633. package/src/web/components/Hex.tsx +11 -11
  634. package/src/web/components/IconTile.tsx +57 -0
  635. package/src/web/components/Identicon.tsx +6 -1
  636. package/src/web/components/Kbd.tsx +8 -8
  637. package/src/web/components/ListGroup.tsx +776 -0
  638. package/src/web/components/LoadingDots.tsx +1 -0
  639. package/src/web/components/Menu.tsx +50 -35
  640. package/src/web/components/NetworkLogo.tsx +208 -0
  641. package/src/web/components/NumberField.tsx +18 -33
  642. package/src/web/components/OtpField.tsx +51 -102
  643. package/src/web/components/Pagination.tsx +16 -14
  644. package/src/web/components/Popover.tsx +8 -8
  645. package/src/web/components/Progress.tsx +7 -5
  646. package/src/web/components/Qr.tsx +1 -1
  647. package/src/web/components/RadioGroup.tsx +9 -7
  648. package/src/web/components/SecretValue.tsx +11 -11
  649. package/src/web/components/Select.tsx +87 -26
  650. package/src/web/components/Separator.tsx +95 -7
  651. package/src/web/components/SidebarMenu.tsx +294 -51
  652. package/src/web/components/Skeleton.tsx +5 -5
  653. package/src/web/components/Slider.tsx +12 -6
  654. package/src/web/components/Snippet.tsx +134 -75
  655. package/src/web/components/Spinner.tsx +38 -12
  656. package/src/web/components/SplitBar.tsx +158 -0
  657. package/src/web/components/SplitButton.tsx +26 -17
  658. package/src/web/components/StatusChip.tsx +138 -0
  659. package/src/web/components/StatusRow.tsx +162 -0
  660. package/src/web/components/Stepper.tsx +11 -8
  661. package/src/web/components/Surface.tsx +70 -95
  662. package/src/web/components/Switch.tsx +25 -29
  663. package/src/web/components/Table.tsx +281 -70
  664. package/src/web/components/Tabs.tsx +93 -50
  665. package/src/web/components/TempoLogo.tsx +89 -0
  666. package/src/web/components/{Input.tsx → TextInput.tsx} +87 -118
  667. package/src/web/components/Textarea.tsx +33 -78
  668. package/src/web/components/Toast.tsx +24 -22
  669. package/src/web/components/Token.tsx +106 -172
  670. package/src/web/components/TokenLogo.tsx +217 -0
  671. package/src/web/components/Tooltip.tsx +3 -3
  672. package/src/web/components/VerificationCode.tsx +97 -0
  673. package/src/web/components/Visual.tsx +166 -0
  674. package/src/web/components/internal/Field.ts +63 -72
  675. package/src/web/components/internal/InputGroup.ts +44 -101
  676. package/src/web/components/internal/Listbox.ts +20 -20
  677. package/src/web/components/internal/RowDisabled.ts +9 -0
  678. package/src/web/components/internal/RowsSize.ts +3 -5
  679. package/src/web/components/visuals/Passkey.svg +21 -0
  680. package/src/web/index.ts +18 -6
  681. package/src/web/logos/Base.svg +10 -0
  682. package/src/web/logos/Ethereum.svg +16 -0
  683. package/src/web/logos/HyperEVM.svg +27 -0
  684. package/src/web/logos/Polygon.svg +15 -0
  685. package/src/web/logos/README.md +14 -0
  686. package/src/web/logos/Solana.svg +11 -0
  687. package/src/web/logos/Tempo.svg +11 -0
  688. package/src/web/vars.ts +481 -526
  689. package/src/web/zyzz.config.ts +326 -12
  690. package/dist/fonts/GeistMono-Variable.woff2 +0 -0
  691. package/dist/mobile/internal/useColor.d.ts +0 -4
  692. package/dist/mobile/internal/useColor.d.ts.map +0 -1
  693. package/dist/mobile/internal/useColor.js +0 -12
  694. package/dist/mobile/internal/useColor.js.map +0 -1
  695. package/dist/web/components/AlertDialog.css +0 -1
  696. package/dist/web/components/Callout.css +0 -1
  697. package/dist/web/components/Callout.d.ts +0 -161
  698. package/dist/web/components/Callout.d.ts.map +0 -1
  699. package/dist/web/components/Callout.js +0 -83
  700. package/dist/web/components/Callout.js.map +0 -1
  701. package/dist/web/components/Callout.js.zyzz.json +0 -1
  702. package/dist/web/components/IconChip.css +0 -1
  703. package/dist/web/components/IconChip.d.ts +0 -53
  704. package/dist/web/components/IconChip.d.ts.map +0 -1
  705. package/dist/web/components/IconChip.js +0 -29
  706. package/dist/web/components/IconChip.js.map +0 -1
  707. package/dist/web/components/IconChip.js.zyzz.json +0 -1
  708. package/dist/web/components/Input.css +0 -1
  709. package/dist/web/components/Input.d.ts.map +0 -1
  710. package/dist/web/components/Input.js +0 -118
  711. package/dist/web/components/Input.js.map +0 -1
  712. package/dist/web/components/Input.js.zyzz.json +0 -1
  713. package/dist/web/components/Rows.css +0 -1
  714. package/dist/web/components/Rows.d.ts +0 -432
  715. package/dist/web/components/Rows.d.ts.map +0 -1
  716. package/dist/web/components/Rows.js +0 -160
  717. package/dist/web/components/Rows.js.map +0 -1
  718. package/dist/web/components/Rows.js.zyzz.json +0 -1
  719. package/dist/web/components/Tag.css +0 -1
  720. package/dist/web/components/Tag.d.ts +0 -171
  721. package/dist/web/components/Tag.d.ts.map +0 -1
  722. package/dist/web/components/Tag.js +0 -52
  723. package/dist/web/components/Tag.js.map +0 -1
  724. package/dist/web/components/Tag.js.zyzz.json +0 -1
  725. package/dist/web/components/internal/FieldVariant.d.ts +0 -4
  726. package/dist/web/components/internal/FieldVariant.d.ts.map +0 -1
  727. package/dist/web/components/internal/FieldVariant.js +0 -4
  728. package/dist/web/components/internal/FieldVariant.js.map +0 -1
  729. package/src/fonts/GeistMono-Variable.woff2 +0 -0
  730. package/src/mobile/internal/useColor.ts +0 -13
  731. package/src/web/components/Callout.tsx +0 -241
  732. package/src/web/components/IconChip.tsx +0 -54
  733. package/src/web/components/Rows.tsx +0 -529
  734. package/src/web/components/Tag.tsx +0 -149
  735. package/src/web/components/internal/FieldVariant.ts +0 -6
package/src/web/vars.ts CHANGED
@@ -1,12 +1,13 @@
1
1
  import { Vars } from 'zyzz'
2
2
 
3
3
  /**
4
- * The Web variable set: a copy of Zyzz's default variables and typography sets, with Inter as the
5
- * sans face, re-hued color ramps, the `ease.*` motion curves, and the TDS shadows. Sans tracking
6
- * follows Inter's dynamic metrics, `-0.0223 + 0.185 * e^(-0.1745 * size)` em, rounded to 0.01px.
7
- * Size scales use px keys without a unit, such as spacing `'16'` for `1rem` and perspective
8
- * `'500'` for `500px`. Shadow keys name their largest blur radius. Type weight, tracking, and
9
- * leading come only from the `typography` sets. Extend it to add app tokens while keeping the
4
+ * The Web variable set. The first argument holds the TDS 1.0 Core primitives: the `Tempo` neutral
5
+ * and accent colors, and the `Values` numbers as the `spacing` scale. The second derives the
6
+ * TPDS 1.0 Platform tokens from those primitives, such as `content.primary`, `container.regular`,
7
+ * `radius.xs`, and `borderWidth.thin`, and sets the `typography` sets from the Platform text styles
8
+ * at their Mobile sizes. `shadow` follows the Platform effect styles. Categories without a Figma
9
+ * source, such as `ease` and `zIndex`, keep the library's values. Size scales use px keys without
10
+ * a unit, such as spacing `'16'` for `1rem`. Extend it to add app tokens while keeping the
10
11
  * library's values.
11
12
  *
12
13
  * @example
@@ -29,10 +30,6 @@ export const variables = Vars.define(
29
30
  '40': '40px',
30
31
  '64': '64px',
31
32
  },
32
- borderWidth: {
33
- '1': '1px',
34
- '2': '2px',
35
- },
36
33
  breakpoint: {
37
34
  '640': '40rem',
38
35
  '768': '48rem',
@@ -40,139 +37,125 @@ export const variables = Vars.define(
40
37
  '1280': '80rem',
41
38
  '1536': '96rem',
42
39
  },
43
- // Color ramps keep Zyzz's lightness steps, re-hued to the earlier Tempo accents. Step 700 is the
44
- // accent itself, and dark-mode text (900) is its dark variant. Light grays stay Zyzz's. Dark
45
- // grays, surfaces, and text use the warm neutral scale of pro.aave.com.
40
+ // TDS 1.0 Core `Tempo` colors. Each accent `background` pairs Core's light-mode and dark-mode
41
+ // steps, and its `foreground` pairs Core's text step with the dark-mode step, so accent text
42
+ // keeps 4.5:1 on the page in both schemes. Solid neutral steps name a percentage of black, and `shade` and `tint` steps are black
43
+ // and white at that opacity. Core no longer publishes `shade`, `tint`, or the accent alphas, but
44
+ // Platform tokens still alias them, so they keep the values Platform resolves.
46
45
  color: {
47
- amber: {
48
- '100': { dark: '#2d1504', light: '#fff5ef' },
49
- '200': { dark: '#351904', light: '#fff1ea' },
50
- '300': { dark: '#4f2807', light: '#ffede2' },
51
- '400': { dark: '#5b300c', light: '#ffd8c1' },
52
- '500': { dark: '#703d15', light: '#ffc4a2' },
53
- '600': { dark: '#f79141', light: '#ffa772' },
54
- '700': '#e06f12',
55
- '800': '#ff9654',
56
- '900': { dark: '#fa8e36', light: '#a55008' },
57
- '1000': { dark: '#fff1e8', light: '#4d2101' },
58
- },
59
- // Lifts surfaces off the near-black page in dark mode, so cards and popups stay distinct.
60
- // `raised` fills popups and dialogs above surfaces. `indicator` fills the selected segment of a
61
- // segmented control. `chip` matches grayAlpha 100, so it stays dim on gray fills. The status
62
- // fills tint callouts with step 300 in light mode and step 100 in dark mode.
63
- background: {
64
- chip: { dark: '#ffffff12', light: '#0000000d' },
65
- indicator: { dark: 'rgb(255 255 255 / 0.16)', light: '#fff' },
66
- info: { dark: '#161b29', light: '#e6eefe' },
67
- negative: { dark: '#2a1410', light: '#ffe6e0' },
68
- positive: { dark: '#052315', light: '#d3f8df' },
69
- primary: { dark: '#100f0f', light: '#f5f5f5' },
70
- raised: { dark: '#1f1e1e', light: '#fff' },
71
- surface: { dark: '#1a1919', light: '#fff' },
72
- warning: { dark: '#2d1504', light: '#ffede2' },
73
- },
74
- black: '#000',
75
- blue: {
76
- '100': { dark: '#161b29', light: '#f2f6fe' },
77
- '200': { dark: '#1a2236', light: '#eff4ff' },
78
- '300': { dark: '#222e4c', light: '#e6eefe' },
79
- '400': { dark: '#29365b', light: '#d6e3fe' },
80
- '500': { dark: '#304170', light: '#afc8fd' },
81
- '600': { dark: '#6b8be2', light: '#80a5fb' },
82
- '700': '#4471ed',
83
- '800': '#395fc8',
84
- '900': { dark: '#7498fb', light: '#3d64cd' },
85
- '1000': { dark: '#f1f4fd', light: '#13234a' },
86
- },
87
- foreground: { dark: '#fff', light: '#171717' },
88
- // Dark gray.100 sits one step above background.surface, so surface hovers stay visible.
89
- gray: {
90
- '100': { dark: '#1f1e1e', light: '#f2f2f2' },
91
- '200': { dark: '#252424', light: '#ebebeb' },
92
- '300': { dark: '#2a2828', light: '#e6e6e6' },
93
- '400': { dark: '#2e2d2d', light: '#ebebeb' },
94
- '500': { dark: '#484747', light: '#c9c9c9' },
95
- '600': { dark: '#868585', light: '#a8a8a8' },
96
- '700': { dark: '#8f8e8e', light: '#8f8f8f' },
97
- '800': { dark: '#7d7c7c', light: '#7d7d7d' },
98
- '900': { dark: '#bcbbbb', light: '#4d4d4d' },
99
- '1000': { dark: '#fff', light: '#171717' },
100
- },
101
- // Secondary fills composite to #2a2929 on a surface and #212020 on the page in dark mode, close
102
- // to the #2a2828 and #1f1e1e fills of pro.aave.com.
103
- grayAlpha: {
104
- '100': { dark: '#ffffff12', light: '#0000000d' },
105
- '200': { dark: '#ffffff1a', light: '#00000014' },
106
- '300': { dark: '#ffffff21', light: '#0000001a' },
107
- '400': { dark: '#ffffff24', light: '#00000014' },
108
- '500': { dark: '#ffffff3d', light: '#00000036' },
109
- '600': { dark: '#ffffff82', light: '#00000057' },
110
- '700': { dark: '#ffffff8a', light: '#00000070' },
111
- '800': { dark: '#ffffff78', light: '#00000082' },
112
- '900': { dark: '#ffffff9c', light: '#000000b3' },
113
- '1000': { dark: '#ffffffeb', light: '#000000e8' },
114
- },
115
- green: {
116
- '100': { dark: '#052315', light: '#ecfcf1' },
117
- '200': { dark: '#032f1c', light: '#e8fbed' },
118
- '300': { dark: '#013721', light: '#d3f8df' },
119
- '400': { dark: '#01452b', light: '#bbf3ce' },
120
- '500': { dark: '#046340', light: '#82eaaa' },
121
- '600': { dark: '#00925f', light: '#32df88' },
122
- '700': '#13a963',
123
- '800': '#0a9154',
124
- '900': { dark: '#59e5a4', light: '#037c46' },
125
- '1000': { dark: '#e2fcec', light: '#153220' },
126
- },
127
- pink: {
128
- '100': { dark: '#28151c', light: '#ffecef' },
129
- '200': { dark: '#3a1724', light: '#ffecef' },
130
- '300': { dark: '#4f1d30', light: '#fee3e7' },
131
- '400': { dark: '#551c32', light: '#fbd7dd' },
132
- '500': { dark: '#6b1f3f', light: '#f8b8c4' },
133
- '600': { dark: '#af1f63', light: '#f1869e' },
134
- '700': '#cc055b',
135
- '800': '#e12269',
136
- '900': { dark: '#e54088', light: '#c0255b' },
137
- '1000': { dark: '#ffecf1', light: '#45091d' },
138
- },
139
- purple: {
140
- '100': { dark: '#231528', light: '#faf0ff' },
141
- '200': { dark: '#2f1937', light: '#faf0ff' },
142
- '300': { dark: '#452052', light: '#f6e7fd' },
143
- '400': { dark: '#532564', light: '#f1dafa' },
144
- '500': { dark: '#68297d', light: '#deacf1' },
145
- '600': { dark: '#9c47ba', light: '#cd80eb' },
146
- '700': '#ba59dd',
147
- '800': '#872ea5',
148
- '900': { dark: '#cf79ef', light: '#8a03ae' },
149
- '1000': { dark: '#f8edfc', light: '#340043' },
150
- },
151
- red: {
152
- '100': { dark: '#2a1410', light: '#fff0ed' },
153
- '200': { dark: '#3c1711', light: '#feece8' },
154
- '300': { dark: '#561c13', light: '#ffe6e0' },
155
- '400': { dark: '#672016', light: '#ffd8d0' },
156
- '500': { dark: '#832416', light: '#feb8aa' },
157
- '600': { dark: '#e44c36', light: '#ff6f56' },
158
- '700': '#eb3417',
159
- '800': { dark: '#d8351f', light: '#e02401' },
160
- '900': { dark: '#f55c45', light: '#cf2203' },
161
- '1000': { dark: '#feede9', light: '#3c120b' },
46
+ accent: {
47
+ // `regular` is the light accent at 8% (100) and the dark accent at 16% (200). `strong`
48
+ // doubles both.
49
+ alpha: {
50
+ regular: {
51
+ green: { '100': 'rgb(19 169 99 / 0.08)', '200': 'rgb(89 229 164 / 0.16)' },
52
+ orange: { '100': 'rgb(224 111 18 / 0.08)', '200': 'rgb(250 142 54 / 0.16)' },
53
+ red: { '100': 'rgb(235 52 23 / 0.08)', '200': 'rgb(245 92 69 / 0.16)' },
54
+ },
55
+ strong: {
56
+ green: { '100': 'rgb(19 169 99 / 0.16)', '200': 'rgb(89 229 164 / 0.32)' },
57
+ orange: { '100': 'rgb(224 111 18 / 0.16)', '200': 'rgb(250 142 54 / 0.32)' },
58
+ red: { '100': 'rgb(235 52 23 / 0.16)', '200': 'rgb(245 92 69 / 0.32)' },
59
+ },
60
+ },
61
+ blue: {
62
+ background: { dark: '#7498fb', light: '#4471ed' },
63
+ foreground: { dark: '#7498fb', light: '#3059d3' },
64
+ },
65
+ cyan: {
66
+ background: { dark: '#48cce6', light: '#00aacb' },
67
+ foreground: { dark: '#48cce6', light: '#056e85' },
68
+ },
69
+ green: {
70
+ background: { dark: '#59e5a4', light: '#13a963' },
71
+ foreground: { dark: '#59e5a4', light: '#007441' },
72
+ },
73
+ magenta: {
74
+ background: { dark: '#e54088', light: '#cc055b' },
75
+ foreground: { dark: '#e54088', light: '#ba0352' },
76
+ },
77
+ olive: {
78
+ background: { dark: '#c4dc65', light: '#95b226' },
79
+ foreground: { dark: '#c4dc65', light: '#596d01' },
80
+ },
81
+ orange: {
82
+ background: { dark: '#fa8e36', light: '#e06f12' },
83
+ foreground: { dark: '#fa8e36', light: '#a14d04' },
84
+ },
85
+ purple: {
86
+ background: { dark: '#cf79ef', light: '#ba59dd' },
87
+ foreground: { dark: '#cf79ef', light: '#9835ba' },
88
+ },
89
+ red: {
90
+ background: { dark: '#f55c45', light: '#eb3417' },
91
+ foreground: { dark: '#f55c45', light: '#bf1d00' },
92
+ },
93
+ violet: {
94
+ background: { dark: '#9877f1', light: '#7e59e4' },
95
+ foreground: { dark: '#9877f1', light: '#6f47d1' },
96
+ },
162
97
  },
163
- teal: {
164
- '100': { dark: '#021f25', light: '#eefbff' },
165
- '200': { dark: '#02272e', light: '#e5f9ff' },
166
- '300': { dark: '#023842', light: '#d4f5ff' },
167
- '400': { dark: '#023b45', light: '#c1f0ff' },
168
- '500': { dark: '#055b69', light: '#87e4ff' },
169
- '600': { dark: '#0092a8', light: '#23d8ff' },
170
- '700': '#00aacb',
171
- '800': '#0387a1',
172
- '900': { dark: '#48cce6', light: '#04758d' },
173
- '1000': { dark: '#def9ff', light: '#023a46' },
98
+ neutral: {
99
+ '000': '#fff',
100
+ '003': '#f7f7f7',
101
+ '004': '#f5f5f5',
102
+ '006': '#f0f0f0',
103
+ '008': '#ebebeb',
104
+ '012': '#e0e0e0',
105
+ '016': '#d6d6d6',
106
+ '020': '#ccc',
107
+ '024': '#c2c2c2',
108
+ '028': '#b8b8b8',
109
+ '032': '#adadad',
110
+ '036': '#a3a3a3',
111
+ '040': '#999',
112
+ '044': '#8f8f8f',
113
+ '048': '#858585',
114
+ '052': '#7a7a7a',
115
+ '056': '#707070',
116
+ '060': '#666',
117
+ '064': '#5c5c5c',
118
+ '068': '#525252',
119
+ '072': '#474747',
120
+ '076': '#3d3d3d',
121
+ '080': '#333',
122
+ '084': '#292929',
123
+ '088': '#1f1f1f',
124
+ '092': '#141414',
125
+ '096': '#0a0a0a',
126
+ '100': '#000',
127
+ shade: {
128
+ '000': '#00000000',
129
+ '003': '#00000008',
130
+ '004': '#0000000a',
131
+ '006': '#0000000f',
132
+ '008': '#00000014',
133
+ '012': '#0000001f',
134
+ '016': '#00000029',
135
+ '020': '#00000033',
136
+ '032': '#00000052',
137
+ '040': '#00000066',
138
+ '056': '#0000008f',
139
+ '060': '#00000099',
140
+ '080': '#000000cc',
141
+ },
142
+ tint: {
143
+ '000': '#ffffff00',
144
+ '004': '#ffffff0a',
145
+ '006': '#ffffff0f',
146
+ '008': '#ffffff14',
147
+ '012': '#ffffff1f',
148
+ '016': '#ffffff29',
149
+ '020': '#ffffff33',
150
+ '024': '#ffffff3d',
151
+ '040': '#ffffff66',
152
+ '048': '#ffffff7a',
153
+ '052': '#ffffff85',
154
+ '056': '#ffffff8f',
155
+ '064': '#ffffffa3',
156
+ '080': '#ffffffcc',
157
+ },
174
158
  },
175
- white: '#fff',
176
159
  },
177
160
  container: {
178
161
  '256': '16rem',
@@ -207,10 +190,16 @@ export const variables = Vars.define(
207
190
  snappy: 'cubic-bezier(0.23, 1, 0.32, 1)',
208
191
  spring: 'cubic-bezier(0.32, 0.72, 0, 1)',
209
192
  },
193
+ // The Platform text styles set copy in Inter, titles and values in Pilat, the second display
194
+ // size in HB Set, and code in JetBrains Mono. The Web contracts ship Inter, Pilat, and JetBrains
195
+ // Mono, so only HB Set falls back, to Pilat.
210
196
  fontFamily: {
211
- mono: '"Geist Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',
212
- sans: 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
213
- serif: 'ui-serif, Georgia, Cambria, "Times New Roman", Times, serif',
197
+ body: 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
198
+ display:
199
+ '"HB Set v0.96", Pilat, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif',
200
+ heading:
201
+ 'Pilat, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif',
202
+ mono: '"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',
214
203
  },
215
204
  fontSize: {
216
205
  '12': '0.75rem',
@@ -253,93 +242,66 @@ export const variables = Vars.define(
253
242
  '800': '800px',
254
243
  '1200': '1200px',
255
244
  },
256
- // Corners top out at 16px. `full` rounds pills and circles.
257
- radius: {
258
- '0': '0rem',
259
- '2': '0.125rem',
260
- '4': '0.25rem',
261
- '6': '0.375rem',
262
- '8': '0.5rem',
263
- '10': '0.625rem',
264
- '12': '0.75rem',
265
- '16': '1rem',
266
- full: '9999px',
267
- },
268
- // Shadow keys name the largest blur radius in px. `inner`, `modal`, `popover`, `raised`, and
269
- // `thumb` keep their role names.
270
245
  // `enter` is the start scale of a popup transition, and `press` shrinks a pressed control.
271
246
  scale: {
272
247
  enter: 0.96,
273
248
  press: 0.98,
274
249
  },
250
+ // The Platform `Shadow` effect styles.
275
251
  shadow: {
276
- '0': '0 1px rgb(0 0 0 / 0.05)',
277
- '2': '0 1px 2px 0 rgb(0 0 0 / 0.05)',
278
- '3': '0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)',
279
- '6': '0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)',
280
- '15': '0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)',
281
- '25': '0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)',
282
- '50': '0 25px 50px -12px rgb(0 0 0 / 0.25)',
283
- inner: 'inset 0 2px 4px 0 rgb(0 0 0 / 0.05)',
284
- modal: '0 32px 64px -16px rgb(0 0 0 / 0.28)',
285
- popover:
286
- '0 0 0 1px light-dark(rgb(0 0 0 / 0.06), rgb(255 255 255 / 0.08)), 0 8px 24px -4px rgb(0 0 0 / 0.12), 0 24px 48px -12px rgb(0 0 0 / 0.16)',
287
- raised: '0 1px 2px rgb(0 0 0 / 0.06), 0 1px 1px rgb(0 0 0 / 0.04)',
288
- thumb:
289
- '0 0 0 1px rgb(0 0 0 / 0.04), 0 2px 8px rgb(0 0 0 / 0.16), 0 1px 2px rgb(0 0 0 / 0.12)',
252
+ large: '0 24px 64px #00000014, 0 8px 48px #00000014, 0 2px 8px #0000000a',
253
+ regular: '0 8px 48px #0000000a, 0 4px 16px #0000000a, 0 2px 8px #0000000a',
254
+ small: '0 4px 12px #0000000a, 0 2px 8px #0000000a, 0 0 2px #0000000a',
290
255
  },
291
- // Keys are px at the default 16px root. Values stay in rem, so the scale follows the root size.
292
- // Negative keys pull an element into its container's padding.
256
+ // TDS 1.0 Core `Values`, keyed by px at the default 16px root. Values stay in rem, so the scale
257
+ // follows the root size, except the sub-2px hairlines. Negative keys pull an element into its
258
+ // container's padding.
293
259
  spacing: {
294
260
  '-24': '-1.5rem',
295
261
  '-20': '-1.25rem',
296
262
  '-16': '-1rem',
297
- '-14': '-0.875rem',
298
263
  '-12': '-0.75rem',
299
264
  '-10': '-0.625rem',
300
265
  '-8': '-0.5rem',
301
266
  '-6': '-0.375rem',
302
267
  '-4': '-0.25rem',
303
268
  '0': '0rem',
269
+ '0-5': '0.5px',
304
270
  '1': '1px',
271
+ '1-5': '1.5px',
305
272
  '2': '0.125rem',
273
+ '3': '0.1875rem',
306
274
  '4': '0.25rem',
307
275
  '6': '0.375rem',
308
276
  '8': '0.5rem',
309
277
  '10': '0.625rem',
310
278
  '12': '0.75rem',
311
- '14': '0.875rem',
312
279
  '16': '1rem',
313
- '18': '1.125rem',
314
280
  '20': '1.25rem',
315
- '22': '1.375rem',
316
281
  '24': '1.5rem',
317
282
  '28': '1.75rem',
318
- '30': '1.875rem',
319
283
  '32': '2rem',
320
284
  '36': '2.25rem',
321
- '38': '2.375rem',
322
285
  '40': '2.5rem',
323
286
  '44': '2.75rem',
324
287
  '48': '3rem',
288
+ '52': '3.25rem',
325
289
  '56': '3.5rem',
290
+ '60': '3.75rem',
326
291
  '64': '4rem',
327
- '68': '4.25rem',
292
+ '72': '4.5rem',
328
293
  '80': '5rem',
329
- '96': '6rem',
330
- '112': '7rem',
331
- '128': '8rem',
332
- '144': '9rem',
294
+ '100': '6.25rem',
295
+ '120': '7.5rem',
296
+ '140': '8.75rem',
333
297
  '160': '10rem',
334
- '176': '11rem',
335
- '192': '12rem',
336
- '208': '13rem',
337
- '224': '14rem',
298
+ '180': '11.25rem',
299
+ '200': '12.5rem',
338
300
  '240': '15rem',
339
- '256': '16rem',
340
- '288': '18rem',
301
+ '280': '17.5rem',
341
302
  '320': '20rem',
342
- '384': '24rem',
303
+ '360': '22.5rem',
304
+ '999': '62.4375rem',
343
305
  },
344
306
  textShadow: {
345
307
  '0': '0px 1px 0px rgb(0 0 0 / 0.15)',
@@ -363,375 +325,368 @@ export const variables = Vars.define(
363
325
  '280': '280ms',
364
326
  '320': '320ms',
365
327
  },
366
- typography: {
367
- button: {
368
- '12': {
369
- fontFamily:
370
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
371
- fontSize: '12px',
372
- fontWeight: 500,
373
- letterSpacing: '.01px',
374
- lineHeight: '16px',
328
+ // Layers from the app shell overlay up to toasts.
329
+ zIndex: {
330
+ modal: 60,
331
+ overlay: 40,
332
+ popover: 50,
333
+ toast: 1000,
334
+ },
335
+ },
336
+ // TPDS 1.0 Platform `Base`, `Attributes`, and text styles, the `Inverse` colors and the action
337
+ // colors of `Working / Platform / Semantic` that the Platform Button paints. Base tokens that
338
+ // alias other Base tokens, such as `component.button.secondary.fill`, point at the same
339
+ // primitives instead.
340
+ (vars) => ({
341
+ borderWidth: {
342
+ none: vars.spacing['0'],
343
+ regular: vars.spacing['1'],
344
+ thick: vars.spacing['2'],
345
+ thin: vars.spacing['0-5'],
346
+ },
347
+ color: {
348
+ action: {
349
+ focusRing: { dark: vars.color.neutral.tint['056'], light: vars.color.neutral.shade['056'] },
350
+ primary: {
351
+ fill: {
352
+ hover: { dark: vars.color.neutral.tint['080'], light: vars.color.neutral.shade['080'] },
353
+ pressed: {
354
+ dark: vars.color.neutral.tint['064'],
355
+ light: vars.color.neutral.shade['060'],
356
+ },
357
+ },
375
358
  },
376
- '14': {
377
- fontFamily:
378
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
379
- fontSize: '14px',
380
- fontWeight: 500,
381
- letterSpacing: '-.09px',
382
- lineHeight: '20px',
359
+ secondary: {
360
+ fill: {
361
+ hover: { dark: vars.color.neutral.tint['006'], light: vars.color.neutral.shade['006'] },
362
+ pressed: {
363
+ dark: vars.color.neutral.tint['024'],
364
+ light: vars.color.neutral.shade['016'],
365
+ },
366
+ },
383
367
  },
384
- '16': {
385
- fontFamily:
386
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
387
- fontSize: '16px',
388
- fontWeight: 500,
389
- letterSpacing: '-.18px',
390
- lineHeight: '20px',
368
+ tertiary: {
369
+ fill: {
370
+ hover: { dark: vars.color.neutral.tint['004'], light: vars.color.neutral.shade['004'] },
371
+ pressed: {
372
+ dark: vars.color.neutral.tint['006'],
373
+ light: vars.color.neutral.shade['006'],
374
+ },
375
+ },
391
376
  },
392
377
  },
393
- copy: {
394
- '13': {
395
- fontFamily:
396
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
397
- fontSize: '13px',
398
- fontWeight: 450,
399
- letterSpacing: '-.04px',
400
- lineHeight: '18px',
401
- mono: {
402
- fontFamily:
403
- '"Geist Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',
404
- fontSize: '13px',
405
- fontWeight: 400,
406
- letterSpacing: '0px',
407
- lineHeight: '18px',
408
- },
378
+ background: {
379
+ elevated: { dark: vars.color.neutral['092'], light: vars.color.neutral['000'] },
380
+ primary: { dark: vars.color.neutral['100'], light: vars.color.neutral['004'] },
381
+ secondary: { dark: vars.color.neutral['092'], light: vars.color.neutral['000'] },
382
+ // The layouts fill the sidebar and the page header a step lighter than the page. Their
383
+ // color has no dark value, so dark mode keeps the page background.
384
+ sidebar: { dark: vars.color.neutral['100'], light: '#fafafa' },
385
+ },
386
+ border: {
387
+ focus: { dark: vars.color.neutral.tint['052'], light: vars.color.neutral.shade['040'] },
388
+ negative: {
389
+ dark: vars.color.accent.alpha.strong.red['200'],
390
+ light: vars.color.accent.alpha.strong.red['100'],
409
391
  },
410
- '14': {
411
- fontFamily:
412
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
413
- fontSize: '14px',
414
- fontWeight: 450,
415
- letterSpacing: '-.09px',
416
- lineHeight: '20px',
417
- strong: {
418
- fontFamily:
419
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
420
- fontSize: '14px',
421
- fontWeight: 550,
422
- letterSpacing: '-.09px',
423
- lineHeight: '20px',
424
- },
392
+ positive: {
393
+ dark: vars.color.accent.alpha.strong.green['200'],
394
+ light: vars.color.accent.alpha.strong.green['100'],
425
395
  },
426
- '15': {
427
- fontFamily:
428
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
429
- fontSize: '15px',
430
- fontWeight: 450,
431
- letterSpacing: '-.13px',
432
- lineHeight: '24px',
433
- strong: {
434
- fontFamily:
435
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
436
- fontSize: '15px',
437
- fontWeight: 550,
438
- letterSpacing: '-.13px',
439
- lineHeight: '24px',
440
- },
396
+ warning: {
397
+ dark: vars.color.accent.alpha.strong.orange['200'],
398
+ light: vars.color.accent.alpha.strong.orange['100'],
441
399
  },
442
- '16': {
443
- fontFamily:
444
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
445
- fontSize: '16px',
446
- fontWeight: 450,
447
- letterSpacing: '-.18px',
448
- lineHeight: '24px',
449
- strong: {
450
- fontFamily:
451
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
452
- fontSize: '16px',
453
- fontWeight: 550,
454
- letterSpacing: '-.18px',
455
- lineHeight: '24px',
400
+ },
401
+ component: {
402
+ button: {
403
+ primary: {
404
+ border: {
405
+ dark: vars.color.neutral.tint['000'],
406
+ light: vars.color.neutral.shade['000'],
407
+ },
408
+ fill: { dark: vars.color.neutral['000'], light: vars.color.neutral['100'] },
456
409
  },
457
- },
458
- '18': {
459
- fontFamily:
460
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
461
- fontSize: '18px',
462
- fontWeight: 450,
463
- letterSpacing: '-.26px',
464
- lineHeight: '28px',
465
- strong: {
466
- fontFamily:
467
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
468
- fontSize: '18px',
469
- fontWeight: 550,
470
- letterSpacing: '-.26px',
471
- lineHeight: '28px',
410
+ secondary: {
411
+ border: {
412
+ dark: vars.color.neutral.tint['016'],
413
+ light: vars.color.neutral.shade['008'],
414
+ },
415
+ fill: { dark: vars.color.neutral.tint['012'], light: vars.color.neutral.shade['004'] },
472
416
  },
473
- },
474
- '20': {
475
- fontFamily:
476
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
477
- fontSize: '20px',
478
- fontWeight: 450,
479
- letterSpacing: '-.33px',
480
- lineHeight: '28px',
481
- strong: {
482
- fontFamily:
483
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
484
- fontSize: '20px',
485
- fontWeight: 550,
486
- letterSpacing: '-.33px',
487
- lineHeight: '28px',
417
+ tertiary: {
418
+ border: {
419
+ dark: vars.color.neutral.tint['000'],
420
+ light: vars.color.neutral.shade['000'],
421
+ },
422
+ fill: { dark: vars.color.neutral.tint['000'], light: vars.color.neutral.shade['000'] },
488
423
  },
489
424
  },
490
- '24': {
491
- fontFamily:
492
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
493
- fontSize: '24px',
494
- fontWeight: 450,
495
- letterSpacing: '-.47px',
496
- lineHeight: '36px',
497
- strong: {
498
- fontFamily:
499
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
500
- fontSize: '24px',
501
- fontWeight: 550,
502
- letterSpacing: '-.47px',
503
- lineHeight: '36px',
425
+ input: {
426
+ overlay: {
427
+ border: {
428
+ dark: vars.color.neutral.tint['000'],
429
+ light: vars.color.neutral.shade['000'],
430
+ },
431
+ fill: { dark: vars.color.neutral.tint['024'], light: vars.color.neutral.shade['020'] },
432
+ },
433
+ primary: {
434
+ border: {
435
+ dark: vars.color.neutral.tint['000'],
436
+ light: vars.color.neutral.shade['000'],
437
+ },
438
+ fill: { dark: vars.color.neutral.tint['012'], light: vars.color.neutral.shade['004'] },
439
+ },
440
+ secondary: {
441
+ border: {
442
+ dark: vars.color.neutral.tint['024'],
443
+ light: vars.color.neutral.shade['016'],
444
+ },
445
+ fill: { dark: vars.color.neutral.tint['000'], light: vars.color.neutral.shade['000'] },
504
446
  },
505
447
  },
448
+ pullTab: { dark: vars.color.neutral.tint['024'], light: vars.color.neutral.shade['012'] },
506
449
  },
507
- heading: {
508
- '14': {
509
- fontFamily:
510
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
450
+ container: {
451
+ negative: {
452
+ dark: vars.color.accent.alpha.regular.red['200'],
453
+ light: vars.color.accent.alpha.regular.red['100'],
454
+ },
455
+ positive: {
456
+ dark: vars.color.accent.alpha.regular.green['200'],
457
+ light: vars.color.accent.alpha.regular.green['100'],
458
+ },
459
+ regular: { dark: vars.color.neutral.tint['012'], light: vars.color.neutral.shade['004'] },
460
+ strong: { dark: vars.color.neutral.tint['016'], light: vars.color.neutral.shade['008'] },
461
+ subtle: { dark: vars.color.neutral.tint['008'], light: vars.color.neutral.shade['003'] },
462
+ warning: {
463
+ dark: vars.color.accent.alpha.regular.orange['200'],
464
+ light: vars.color.accent.alpha.regular.orange['100'],
465
+ },
466
+ },
467
+ content: {
468
+ negative: vars.color.accent.red.background,
469
+ positive: vars.color.accent.green.background,
470
+ primary: { dark: vars.color.neutral['000'], light: vars.color.neutral['100'] },
471
+ secondary: { dark: vars.color.neutral.tint['056'], light: vars.color.neutral.shade['056'] },
472
+ subtle: { dark: vars.color.neutral.tint['020'], light: vars.color.neutral.shade['020'] },
473
+ tertiary: { dark: vars.color.neutral.tint['040'], light: vars.color.neutral.shade['040'] },
474
+ warning: vars.color.accent.orange.background,
475
+ },
476
+ inverse: {
477
+ background: {
478
+ primary: { dark: vars.color.neutral['004'], light: vars.color.neutral['100'] },
479
+ secondary: { dark: vars.color.neutral['092'], light: vars.color.neutral['092'] },
480
+ },
481
+ container: {
482
+ regular: { dark: vars.color.neutral.shade['004'], light: vars.color.neutral.tint['012'] },
483
+ },
484
+ content: {
485
+ primary: { dark: vars.color.neutral['100'], light: vars.color.neutral['000'] },
486
+ },
487
+ },
488
+ line: {
489
+ primary: { dark: vars.color.neutral.tint['024'], light: vars.color.neutral.shade['016'] },
490
+ // Dark mode draws the secondary line at 8% white, dimmer than Figma's 16%, so the borders
491
+ // and dividers recede on the dark fills.
492
+ secondary: { dark: vars.color.neutral.tint['008'], light: vars.color.neutral.shade['008'] },
493
+ },
494
+ material: {
495
+ regular: { dark: vars.color.neutral.tint['048'], light: vars.color.neutral.shade['040'] },
496
+ thick: { dark: vars.color.neutral.tint['064'], light: vars.color.neutral.shade['060'] },
497
+ thin: { dark: vars.color.neutral.tint['024'], light: vars.color.neutral.shade['020'] },
498
+ ultrathick: {
499
+ dark: vars.color.neutral.tint['080'],
500
+ light: vars.color.neutral.shade['080'],
501
+ },
502
+ ultrathin: { dark: vars.color.neutral.tint['016'], light: vars.color.neutral.shade['008'] },
503
+ },
504
+ scrim: {
505
+ regular: vars.color.neutral.shade['016'],
506
+ strong: vars.color.neutral.shade['032'],
507
+ },
508
+ shadow: {
509
+ primary: { dark: vars.color.neutral.shade['032'], light: vars.color.neutral.shade['008'] },
510
+ secondary: {
511
+ dark: vars.color.neutral.shade['016'],
512
+ light: vars.color.neutral.shade['004'],
513
+ },
514
+ },
515
+ },
516
+ // The Platform corner radii at their Figma values: 4, 8, 12, 16, 24, 32, 40, and 64px. The
517
+ // designs smooth each corner fully, which stretches its curve past the radius. A squircle at 1.84
518
+ // times the radius traces that curve, so the global `corner-shape` rule raises
519
+ // `--tds-corner-scale` where browsers draw squircles, and other browsers keep the round radius.
520
+ // `full` stays round, so circles and pills keep their shape.
521
+ radius: {
522
+ '2xl': 'calc(4rem * var(--tds-corner-scale, 1))',
523
+ '2xs': 'calc(0.5rem * var(--tds-corner-scale, 1))',
524
+ '3xs': 'calc(0.25rem * var(--tds-corner-scale, 1))',
525
+ full: vars.spacing['999'],
526
+ lg: 'calc(2rem * var(--tds-corner-scale, 1))',
527
+ md: 'calc(1.5rem * var(--tds-corner-scale, 1))',
528
+ none: vars.spacing['0'],
529
+ sm: 'calc(1rem * var(--tds-corner-scale, 1))',
530
+ xl: 'calc(2.5rem * var(--tds-corner-scale, 1))',
531
+ xs: 'calc(0.75rem * var(--tds-corner-scale, 1))',
532
+ },
533
+ // Section and page steps use the Mobile mode of the responsive Platform attributes.
534
+ spacing: {
535
+ none: vars.spacing['0'],
536
+ page: { gutter: vars.spacing['12'], margin: vars.spacing['24'] },
537
+ section: {
538
+ lg: vars.spacing['120'],
539
+ md: vars.spacing['80'],
540
+ none: vars.spacing['0'],
541
+ sm: vars.spacing['40'],
542
+ xl: vars.spacing['180'],
543
+ xs: vars.spacing['24'],
544
+ },
545
+ },
546
+ // Figma's percentage tracking is converted to px. The `utility` styles are uppercase in Figma,
547
+ // which a component applies with `textTransform`.
548
+ typography: {
549
+ body: {
550
+ b1: {
551
+ fontFamily: vars.fontFamily.body,
552
+ fontSize: '16px',
553
+ fontWeight: 400,
554
+ letterSpacing: '.12px',
555
+ lineHeight: '22px',
556
+ },
557
+ b1Strong: {
558
+ fontFamily: vars.fontFamily.body,
559
+ fontSize: '16px',
560
+ fontWeight: 500,
561
+ letterSpacing: '.12px',
562
+ lineHeight: '22px',
563
+ },
564
+ b2: {
565
+ fontFamily: vars.fontFamily.body,
511
566
  fontSize: '14px',
512
- fontWeight: 600,
513
- letterSpacing: '-.09px',
567
+ fontWeight: 400,
568
+ letterSpacing: '.14px',
514
569
  lineHeight: '20px',
515
570
  },
516
- '16': {
517
- fontFamily:
518
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
519
- fontSize: '16px',
520
- fontWeight: 600,
521
- letterSpacing: '-.18px',
522
- lineHeight: '24px',
523
- subtle: {
524
- fontFamily:
525
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
526
- fontSize: '16px',
527
- fontWeight: 500,
528
- letterSpacing: '-.18px',
529
- lineHeight: '24px',
530
- },
571
+ b2Strong: {
572
+ fontFamily: vars.fontFamily.body,
573
+ fontSize: '14px',
574
+ fontWeight: 500,
575
+ letterSpacing: '.14px',
576
+ lineHeight: '20px',
531
577
  },
532
- '20': {
533
- fontFamily:
534
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
535
- fontSize: '20px',
536
- fontWeight: 600,
537
- letterSpacing: '-.33px',
538
- lineHeight: '26px',
539
- subtle: {
540
- fontFamily:
541
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
542
- fontSize: '20px',
543
- fontWeight: 500,
544
- letterSpacing: '-.33px',
545
- lineHeight: '26px',
546
- },
578
+ b3: {
579
+ fontFamily: vars.fontFamily.body,
580
+ fontSize: '12px',
581
+ fontWeight: 400,
582
+ letterSpacing: '.15px',
583
+ lineHeight: '16px',
547
584
  },
548
- '24': {
549
- fontFamily:
550
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
551
- fontSize: '24px',
552
- fontWeight: 600,
553
- letterSpacing: '-.47px',
554
- lineHeight: '32px',
555
- subtle: {
556
- fontFamily:
557
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
558
- fontSize: '24px',
559
- fontWeight: 500,
560
- letterSpacing: '-.47px',
561
- lineHeight: '32px',
562
- },
585
+ b3Strong: {
586
+ fontFamily: vars.fontFamily.body,
587
+ fontSize: '12px',
588
+ fontWeight: 500,
589
+ letterSpacing: '.15px',
590
+ lineHeight: '16px',
563
591
  },
564
- '32': {
565
- fontFamily:
566
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
592
+ },
593
+ // Pilat Light and HB Set Light are weight 300.
594
+ display: {
595
+ d1: {
596
+ fontFamily: vars.fontFamily.heading,
597
+ fontSize: '44px',
598
+ fontWeight: 300,
599
+ letterSpacing: '-1.76px',
600
+ lineHeight: '41.8px',
601
+ },
602
+ d2: {
603
+ fontFamily: vars.fontFamily.display,
604
+ fontSize: '36px',
605
+ fontWeight: 300,
606
+ letterSpacing: '-1.44px',
607
+ lineHeight: '34.2px',
608
+ },
609
+ },
610
+ // Pilat Book is weight 500.
611
+ heading: {
612
+ h1: {
613
+ fontFamily: vars.fontFamily.heading,
567
614
  fontSize: '32px',
568
- fontWeight: 600,
569
- letterSpacing: '-.69px',
570
- lineHeight: '40px',
571
- subtle: {
572
- fontFamily:
573
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
574
- fontSize: '32px',
575
- fontWeight: 500,
576
- letterSpacing: '-.69px',
577
- lineHeight: '40px',
578
- },
615
+ fontWeight: 500,
616
+ letterSpacing: '-.48px',
617
+ lineHeight: '36.8px',
579
618
  },
580
- '40': {
581
- fontFamily:
582
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
583
- fontSize: '40px',
584
- fontWeight: 600,
585
- letterSpacing: '-.89px',
586
- lineHeight: '48px',
587
- },
588
- '48': {
589
- fontFamily:
590
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
591
- fontSize: '48px',
592
- fontWeight: 600,
593
- letterSpacing: '-1.07px',
594
- lineHeight: '56px',
595
- },
596
- '56': {
597
- fontFamily:
598
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
599
- fontSize: '56px',
600
- fontWeight: 600,
601
- letterSpacing: '-1.25px',
602
- lineHeight: '56px',
603
- },
604
- '64': {
605
- fontFamily:
606
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
607
- fontSize: '64px',
608
- fontWeight: 600,
609
- letterSpacing: '-1.43px',
610
- lineHeight: '64px',
611
- },
612
- '72': {
613
- fontFamily:
614
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
615
- fontSize: '72px',
616
- fontWeight: 600,
617
- letterSpacing: '-1.61px',
618
- lineHeight: '72px',
619
+ h2: {
620
+ fontFamily: vars.fontFamily.heading,
621
+ fontSize: '24px',
622
+ fontWeight: 500,
623
+ letterSpacing: '-.36px',
624
+ lineHeight: '27.6px',
625
+ },
626
+ h3: {
627
+ fontFamily: vars.fontFamily.heading,
628
+ fontSize: '20px',
629
+ fontWeight: 500,
630
+ letterSpacing: '-.3px',
631
+ lineHeight: '23px',
632
+ },
633
+ h4: {
634
+ fontFamily: vars.fontFamily.heading,
635
+ fontSize: '18px',
636
+ fontWeight: 500,
637
+ letterSpacing: '-.27px',
638
+ lineHeight: '20.7px',
619
639
  },
620
640
  },
621
- label: {
622
- '12': {
623
- fontFamily:
624
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
641
+ mono: {
642
+ m1: {
643
+ fontFamily: vars.fontFamily.mono,
625
644
  fontSize: '12px',
626
- fontWeight: 450,
627
- letterSpacing: '.01px',
645
+ fontWeight: 400,
646
+ letterSpacing: '0px',
628
647
  lineHeight: '16px',
629
- mono: {
630
- fontFamily:
631
- '"Geist Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',
632
- fontSize: '12px',
633
- fontWeight: 400,
634
- letterSpacing: '0px',
635
- lineHeight: '16px',
636
- },
637
- strong: {
638
- fontFamily:
639
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
640
- fontSize: '12px',
641
- fontWeight: 500,
642
- letterSpacing: '.01px',
643
- lineHeight: '16px',
644
- },
645
648
  },
646
- '13': {
647
- fontFamily:
648
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
649
- fontSize: '13px',
650
- fontWeight: 450,
651
- letterSpacing: '-.04px',
649
+ },
650
+ utility: {
651
+ m1: {
652
+ fontFamily: vars.fontFamily.mono,
653
+ fontSize: '12px',
654
+ fontWeight: 400,
655
+ letterSpacing: '.72px',
652
656
  lineHeight: '16px',
653
- mono: {
654
- fontFamily:
655
- '"Geist Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',
656
- fontSize: '13px',
657
- fontWeight: 400,
658
- letterSpacing: '0px',
659
- lineHeight: '20px',
660
- },
661
- strong: {
662
- fontFamily:
663
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
664
- fontSize: '13px',
665
- fontWeight: 500,
666
- letterSpacing: '-.04px',
667
- lineHeight: '16px',
668
- },
669
657
  },
670
- '14': {
671
- fontFamily:
672
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
673
- fontSize: '14px',
674
- fontWeight: 450,
675
- letterSpacing: '-.09px',
676
- lineHeight: '20px',
677
- mono: {
678
- fontFamily:
679
- '"Geist Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',
680
- fontSize: '14px',
681
- fontWeight: 400,
682
- letterSpacing: '0px',
683
- lineHeight: '20px',
684
- },
685
- strong: {
686
- fontFamily:
687
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
688
- fontSize: '14px',
689
- fontWeight: 500,
690
- letterSpacing: '-.09px',
691
- lineHeight: '20px',
692
- },
658
+ m2: {
659
+ fontFamily: vars.fontFamily.mono,
660
+ fontSize: '10px',
661
+ fontWeight: 400,
662
+ letterSpacing: '.6px',
663
+ lineHeight: '12px',
693
664
  },
694
- '16': {
695
- fontFamily:
696
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
697
- fontSize: '16px',
698
- fontWeight: 450,
699
- letterSpacing: '-.18px',
700
- lineHeight: '20px',
701
- strong: {
702
- fontFamily:
703
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
704
- fontSize: '16px',
705
- fontWeight: 500,
706
- letterSpacing: '-.18px',
707
- lineHeight: '20px',
708
- },
665
+ },
666
+ value: {
667
+ v1: {
668
+ fontFamily: vars.fontFamily.heading,
669
+ fontSize: '80px',
670
+ fontWeight: 400,
671
+ letterSpacing: '-2.4px',
672
+ lineHeight: 'normal',
709
673
  },
710
- '18': {
711
- fontFamily:
712
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
713
- fontSize: '18px',
714
- fontWeight: 450,
715
- letterSpacing: '-.26px',
716
- lineHeight: '20px',
674
+ v2: {
675
+ fontFamily: vars.fontFamily.heading,
676
+ fontSize: '52px',
677
+ fontWeight: 400,
678
+ letterSpacing: '-1.56px',
679
+ lineHeight: 'normal',
717
680
  },
718
- '20': {
719
- fontFamily:
720
- 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',
721
- fontSize: '20px',
722
- fontWeight: 450,
723
- letterSpacing: '-.33px',
724
- lineHeight: '32px',
681
+ v3: {
682
+ fontFamily: vars.fontFamily.heading,
683
+ fontSize: '40px',
684
+ fontWeight: 400,
685
+ letterSpacing: '-1.2px',
686
+ lineHeight: 'normal',
725
687
  },
726
688
  },
727
689
  },
728
- // Layers from the app shell overlay up to toasts.
729
- zIndex: {
730
- modal: 60,
731
- overlay: 40,
732
- popover: 50,
733
- toast: 1000,
734
- },
735
- },
690
+ }),
736
691
  { id: 'tds/web/variables' },
737
692
  )