@tempoxyz/ds 0.2.0 → 0.2.2

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 (181) hide show
  1. package/README.md +36 -0
  2. package/dist/mobile/components/Avatar.d.ts +1 -1
  3. package/dist/mobile/components/Avatar.d.ts.map +1 -1
  4. package/dist/mobile/components/Avatar.js.map +1 -1
  5. package/dist/mobile/components/Button.d.ts +1 -1
  6. package/dist/mobile/components/Button.d.ts.map +1 -1
  7. package/dist/mobile/components/Button.js +5 -1
  8. package/dist/mobile/components/Button.js.map +1 -1
  9. package/dist/mobile/components/CodeInput.d.ts +1 -1
  10. package/dist/mobile/components/CodeInput.d.ts.map +1 -1
  11. package/dist/mobile/components/CodeInput.js.map +1 -1
  12. package/dist/mobile/components/IconButton.d.ts +1 -1
  13. package/dist/mobile/components/IconButton.d.ts.map +1 -1
  14. package/dist/mobile/components/IconButton.js +5 -1
  15. package/dist/mobile/components/IconButton.js.map +1 -1
  16. package/dist/mobile/components/Skeleton.d.ts.map +1 -1
  17. package/dist/mobile/components/Skeleton.js.map +1 -1
  18. package/dist/mobile/components/Spinner.d.ts +1 -1
  19. package/dist/mobile/components/Spinner.d.ts.map +1 -1
  20. package/dist/mobile/components/Spinner.js.map +1 -1
  21. package/dist/mobile/components/TextButton.d.ts.map +1 -1
  22. package/dist/mobile/components/TextButton.js +7 -2
  23. package/dist/mobile/components/TextButton.js.map +1 -1
  24. package/dist/mobile/components/TextInput.d.ts.map +1 -1
  25. package/dist/mobile/components/TextInput.js +1 -1
  26. package/dist/mobile/components/TextInput.js.map +1 -1
  27. package/dist/oxlint/index.d.ts +43 -0
  28. package/dist/oxlint/index.d.ts.map +1 -0
  29. package/dist/oxlint/index.js +68 -0
  30. package/dist/oxlint/index.js.map +1 -0
  31. package/dist/oxlint/internal/Imports.d.ts +22 -0
  32. package/dist/oxlint/internal/Imports.d.ts.map +1 -0
  33. package/dist/oxlint/internal/Imports.js +52 -0
  34. package/dist/oxlint/internal/Imports.js.map +1 -0
  35. package/dist/oxlint/rules/NoCrossSurface.d.ts +16 -0
  36. package/dist/oxlint/rules/NoCrossSurface.d.ts.map +1 -0
  37. package/dist/oxlint/rules/NoCrossSurface.js +55 -0
  38. package/dist/oxlint/rules/NoCrossSurface.js.map +1 -0
  39. package/dist/oxlint/rules/NoInternalImports.d.ts +8 -0
  40. package/dist/oxlint/rules/NoInternalImports.d.ts.map +1 -0
  41. package/dist/oxlint/rules/NoInternalImports.js +22 -0
  42. package/dist/oxlint/rules/NoInternalImports.js.map +1 -0
  43. package/dist/oxlint/rules/NoRawValues.d.ts +9 -0
  44. package/dist/oxlint/rules/NoRawValues.d.ts.map +1 -0
  45. package/dist/oxlint/rules/NoRawValues.js +73 -0
  46. package/dist/oxlint/rules/NoRawValues.js.map +1 -0
  47. package/dist/oxlint/rules/PreferComponent.d.ts +16 -0
  48. package/dist/oxlint/rules/PreferComponent.d.ts.map +1 -0
  49. package/dist/oxlint/rules/PreferComponent.js +92 -0
  50. package/dist/oxlint/rules/PreferComponent.js.map +1 -0
  51. package/dist/oxlint/rules/RequireAccessibleName.d.ts +9 -0
  52. package/dist/oxlint/rules/RequireAccessibleName.d.ts.map +1 -0
  53. package/dist/oxlint/rules/RequireAccessibleName.js +104 -0
  54. package/dist/oxlint/rules/RequireAccessibleName.js.map +1 -0
  55. package/dist/web/components/Amount.d.ts +10 -3
  56. package/dist/web/components/Amount.d.ts.map +1 -1
  57. package/dist/web/components/Amount.js +19 -9
  58. package/dist/web/components/Amount.js.map +1 -1
  59. package/dist/web/components/AmountInput.d.ts +15 -2
  60. package/dist/web/components/AmountInput.d.ts.map +1 -1
  61. package/dist/web/components/AmountInput.js +42 -11
  62. package/dist/web/components/AmountInput.js.map +1 -1
  63. package/dist/web/components/AmountInput.js.zyzz.json +1 -1
  64. package/dist/web/components/Autocomplete.js.zyzz.json +1 -1
  65. package/dist/web/components/Banner.js +1 -1
  66. package/dist/web/components/Calendar.d.ts.map +1 -1
  67. package/dist/web/components/Calendar.js +7 -5
  68. package/dist/web/components/Calendar.js.map +1 -1
  69. package/dist/web/components/Callout.d.ts.map +1 -1
  70. package/dist/web/components/Callout.js +4 -1
  71. package/dist/web/components/Callout.js.map +1 -1
  72. package/dist/web/components/Combobox.js.zyzz.json +1 -1
  73. package/dist/web/components/DatePicker.css +1 -1
  74. package/dist/web/components/DatePicker.d.ts +1 -1
  75. package/dist/web/components/DatePicker.js.zyzz.json +1 -1
  76. package/dist/web/components/Dialog.js +2 -2
  77. package/dist/web/components/Dialog.js.map +1 -1
  78. package/dist/web/components/Drawer.js +2 -2
  79. package/dist/web/components/Drawer.js.map +1 -1
  80. package/dist/web/components/Field.d.ts +7 -0
  81. package/dist/web/components/Field.d.ts.map +1 -1
  82. package/dist/web/components/Field.js +25 -3
  83. package/dist/web/components/Field.js.map +1 -1
  84. package/dist/web/components/Input.css +1 -1
  85. package/dist/web/components/Input.js.zyzz.json +1 -1
  86. package/dist/web/components/Kbd.d.ts +31 -9
  87. package/dist/web/components/Kbd.d.ts.map +1 -1
  88. package/dist/web/components/Kbd.js +55 -13
  89. package/dist/web/components/Kbd.js.map +1 -1
  90. package/dist/web/components/Menu.css +1 -1
  91. package/dist/web/components/Menu.js +1 -1
  92. package/dist/web/components/Menu.js.zyzz.json +1 -1
  93. package/dist/web/components/NumberField.css +1 -1
  94. package/dist/web/components/NumberField.js.zyzz.json +1 -1
  95. package/dist/web/components/Pagination.css +1 -1
  96. package/dist/web/components/Pagination.d.ts +1 -1
  97. package/dist/web/components/Pagination.js.zyzz.json +1 -1
  98. package/dist/web/components/Rows.css +1 -1
  99. package/dist/web/components/Rows.d.ts +1 -1
  100. package/dist/web/components/Rows.d.ts.map +1 -1
  101. package/dist/web/components/Rows.js +3 -3
  102. package/dist/web/components/Rows.js.map +1 -1
  103. package/dist/web/components/Rows.js.zyzz.json +1 -1
  104. package/dist/web/components/Select.css +1 -1
  105. package/dist/web/components/Select.js.zyzz.json +1 -1
  106. package/dist/web/components/Snippet.css +1 -1
  107. package/dist/web/components/Snippet.js +2 -2
  108. package/dist/web/components/Snippet.js.zyzz.json +1 -1
  109. package/dist/web/components/Table.css +1 -1
  110. package/dist/web/components/Table.d.ts +6 -3
  111. package/dist/web/components/Table.d.ts.map +1 -1
  112. package/dist/web/components/Table.js +5 -2
  113. package/dist/web/components/Table.js.map +1 -1
  114. package/dist/web/components/Table.js.zyzz.json +1 -1
  115. package/dist/web/components/Textarea.css +1 -1
  116. package/dist/web/components/Textarea.d.ts +1 -1
  117. package/dist/web/components/Textarea.js.zyzz.json +1 -1
  118. package/dist/web/components/Toast.d.ts.map +1 -1
  119. package/dist/web/components/Toast.js +5 -1
  120. package/dist/web/components/Toast.js.map +1 -1
  121. package/dist/web/components/internal/Field.css +1 -1
  122. package/dist/web/components/internal/Field.js.zyzz.json +1 -1
  123. package/dist/web/components/internal/InputGroup.d.ts.map +1 -1
  124. package/dist/web/components/internal/InputGroup.js.map +1 -1
  125. package/dist/web/components/internal/Listbox.css +1 -1
  126. package/dist/web/components/internal/Listbox.js.zyzz.json +1 -1
  127. package/dist/web/icons/BadgeX.d.ts.map +1 -1
  128. package/dist/web/icons/BadgeX.js.map +1 -1
  129. package/dist/web/icons/InfinityIcon.d.ts.map +1 -1
  130. package/dist/web/icons/InfinityIcon.js.map +1 -1
  131. package/dist/web/icons/LightMode.d.ts.map +1 -1
  132. package/dist/web/icons/LightMode.js.map +1 -1
  133. package/dist/web/icons/OctagonAlert.d.ts.map +1 -1
  134. package/dist/web/icons/OctagonAlert.js.map +1 -1
  135. package/dist/web/icons/Unlink.d.ts.map +1 -1
  136. package/dist/web/icons/Unlink.js.map +1 -1
  137. package/dist/web/index.js.zyzz.json +1 -1
  138. package/package.json +7 -1
  139. package/src/mobile/components/Avatar.tsx +2 -2
  140. package/src/mobile/components/Button.tsx +5 -2
  141. package/src/mobile/components/CodeInput.tsx +2 -2
  142. package/src/mobile/components/IconButton.tsx +5 -2
  143. package/src/mobile/components/Skeleton.tsx +1 -1
  144. package/src/mobile/components/Spinner.tsx +1 -1
  145. package/src/mobile/components/TextButton.tsx +6 -2
  146. package/src/mobile/components/TextInput.tsx +1 -1
  147. package/src/oxlint/index.ts +89 -0
  148. package/src/oxlint/internal/Imports.ts +68 -0
  149. package/src/oxlint/rules/NoCrossSurface.ts +71 -0
  150. package/src/oxlint/rules/NoInternalImports.ts +25 -0
  151. package/src/oxlint/rules/NoRawValues.ts +76 -0
  152. package/src/oxlint/rules/PreferComponent.ts +113 -0
  153. package/src/oxlint/rules/RequireAccessibleName.ts +132 -0
  154. package/src/web/components/Amount.tsx +29 -9
  155. package/src/web/components/AmountInput.tsx +48 -12
  156. package/src/web/components/Banner.tsx +1 -1
  157. package/src/web/components/Calendar.tsx +5 -6
  158. package/src/web/components/Callout.tsx +4 -1
  159. package/src/web/components/DatePicker.tsx +1 -1
  160. package/src/web/components/Dialog.tsx +2 -2
  161. package/src/web/components/Drawer.tsx +2 -2
  162. package/src/web/components/Field.tsx +37 -2
  163. package/src/web/components/Input.tsx +1 -1
  164. package/src/web/components/Kbd.tsx +76 -20
  165. package/src/web/components/Menu.tsx +2 -2
  166. package/src/web/components/NumberField.tsx +1 -1
  167. package/src/web/components/Pagination.tsx +1 -1
  168. package/src/web/components/Rows.tsx +1 -2
  169. package/src/web/components/Select.tsx +1 -1
  170. package/src/web/components/Snippet.tsx +1 -1
  171. package/src/web/components/Table.tsx +7 -3
  172. package/src/web/components/Textarea.tsx +1 -1
  173. package/src/web/components/Toast.tsx +5 -1
  174. package/src/web/components/internal/Field.ts +1 -1
  175. package/src/web/components/internal/InputGroup.ts +1 -1
  176. package/src/web/components/internal/Listbox.ts +2 -2
  177. package/src/web/icons/BadgeX.tsx +1 -1
  178. package/src/web/icons/InfinityIcon.tsx +1 -1
  179. package/src/web/icons/LightMode.tsx +1 -1
  180. package/src/web/icons/OctagonAlert.tsx +1 -1
  181. package/src/web/icons/Unlink.tsx +1 -1
@@ -216,7 +216,7 @@ namespace styles {
216
216
  '&:active:is(a)': { transform: 'scale(0.96) !custom' },
217
217
  '&:focus-visible': { outlineColor: 'blue.700', outlineOffset: '2px !custom' },
218
218
  '&:hover:is(a)': { backgroundColor: 'grayAlpha.100' },
219
- '&[data-ellipsis]': { color: 'gray.700', cursor: 'default' },
219
+ '&[data-ellipsis]': { color: 'gray.900', cursor: 'default' },
220
220
  },
221
221
  '@media (prefers-reduced-motion: reduce)': {
222
222
  transitionProperty: 'background-color, color, outline-color',
@@ -344,8 +344,7 @@ namespace styles {
344
344
  export const label = variants(
345
345
  {
346
346
  base: {
347
- // gray.800 in light mode, where gray.900 reads close to the value text, and gray.900 in dark.
348
- color: 'light-dark(#7d7d7d, #bcbbbb) !custom',
347
+ color: 'gray.900',
349
348
  flexShrink: '0 !custom',
350
349
  marginInlineEnd: 'auto !custom',
351
350
  },
@@ -321,7 +321,7 @@ namespace styles {
321
321
  textOverflow: 'ellipsis',
322
322
  whiteSpace: 'nowrap',
323
323
  selectors: {
324
- '&[data-placeholder]': { color: 'gray.700' },
324
+ '&[data-placeholder]': { color: 'gray.900' },
325
325
  '[data-variant="card"] > &': {
326
326
  typography: 'heading.24',
327
327
  },
@@ -70,7 +70,7 @@ export namespace Snippet {
70
70
 
71
71
  namespace styles {
72
72
  export const prompt = style(
73
- { color: 'gray.700', flexShrink: '0 !custom', userSelect: 'none' },
73
+ { color: 'gray.900', flexShrink: '0 !custom', userSelect: 'none' },
74
74
  { id: 'tds/web/snippet/prompt' },
75
75
  )
76
76
 
@@ -95,7 +95,10 @@ export namespace Table {
95
95
  export type Props = ComponentPropsWithRef<'thead'> & zyzz.Props.Variants<typeof styles.head>
96
96
  }
97
97
 
98
- /** A column header with `scope="col"` by default. Pass `scope="row"` for a row header. */
98
+ /**
99
+ * A column header with `scope="col"` by default. Pass `scope="row"` for a row header. Its text
100
+ * renders in the `label.14.strong` set, heavier than the `copy.14` body cells.
101
+ */
99
102
  export function HeaderCell(props: HeaderCell.Props) {
100
103
  const { className, justify, vars, ...attributes } = props
101
104
 
@@ -224,10 +227,11 @@ namespace styles {
224
227
  export const headerCell = variants(
225
228
  {
226
229
  base: {
227
- color: 'gray.700',
230
+ // Body cells share gray.900, the lightest gray step at 4.5:1, so weight separates the header.
231
+ color: 'gray.900',
228
232
  paddingBlock: '12',
229
233
  paddingInline: '16',
230
- typography: 'copy.14',
234
+ typography: 'label.14.strong',
231
235
  },
232
236
  defaultVariants: { justify: 'start' },
233
237
  variants: {
@@ -77,7 +77,7 @@ namespace styles {
77
77
  '&:focus-visible': { outlineColor: 'blue.700' },
78
78
  '&:hover:not(:disabled)': { backgroundColor: 'grayAlpha.200' },
79
79
  '&::placeholder': {
80
- color: 'grayAlpha.700',
80
+ color: 'grayAlpha.900',
81
81
  transitionDuration: '160ms !custom',
82
82
  transitionProperty: 'opacity !custom',
83
83
  transitionTimingFunction: 'snappy',
@@ -1,7 +1,11 @@
1
1
  import * as BaseUi from '@base-ui/react/toast'
2
2
  import type { ComponentPropsWithRef, ReactNode } from 'react'
3
3
  import type * as zyzz from 'zyzz'
4
- import { AlertCircle, AlertTriangle, CheckCircle, Close, InfoCircle } from '../icons/index.js'
4
+ import { AlertCircle } from '../icons/AlertCircle.js'
5
+ import { AlertTriangle } from '../icons/AlertTriangle.js'
6
+ import { CheckCircle } from '../icons/CheckCircle.js'
7
+ import { Close } from '../icons/Close.js'
8
+ import { InfoCircle } from '../icons/InfoCircle.js'
5
9
  import { style, variants } from '../zyzz.config.js'
6
10
 
7
11
  const icons = {
@@ -198,7 +198,7 @@ export namespace styles {
198
198
  padding: '0',
199
199
  // A zero width drops the input's intrinsic size from the field's min-content width.
200
200
  width: '0',
201
- selectors: { '&::placeholder': { color: 'gray.700' } },
201
+ selectors: { '&::placeholder': { color: 'gray.900' } },
202
202
  },
203
203
  { id: 'tds/web/select-field/input' },
204
204
  )
@@ -1,4 +1,4 @@
1
- import { type RefObject, createContext, useLayoutEffect, useRef } from 'react'
1
+ import { createContext, type RefObject, useLayoutEffect, useRef } from 'react'
2
2
  import { keyframes } from 'zyzz/web'
3
3
  import { variants, vars } from '../../zyzz.config.js'
4
4
 
@@ -3,7 +3,7 @@ import { style, variants } from '../../zyzz.config.js'
3
3
  export namespace styles {
4
4
  export const empty = style(
5
5
  {
6
- color: 'gray.700',
6
+ color: 'gray.900',
7
7
  paddingBlock: '12',
8
8
  paddingInline: '16',
9
9
  typography: 'copy.14',
@@ -19,7 +19,7 @@ export namespace styles {
19
19
 
20
20
  export const groupLabel = style(
21
21
  {
22
- color: 'gray.700',
22
+ color: 'gray.900',
23
23
  paddingBlock: '8',
24
24
  paddingInline: '16',
25
25
  typography: 'label.12',
@@ -1,6 +1,6 @@
1
1
  'use client'
2
2
 
3
- import { useId, type ComponentPropsWithRef } from 'react'
3
+ import { type ComponentPropsWithRef, useId } from 'react'
4
4
 
5
5
  export function BadgeX(props: BadgeX.Props) {
6
6
  const id = useId()
@@ -1,6 +1,6 @@
1
1
  'use client'
2
2
 
3
- import { useId, type ComponentPropsWithRef } from 'react'
3
+ import { type ComponentPropsWithRef, useId } from 'react'
4
4
 
5
5
  export function InfinityIcon(props: InfinityIcon.Props) {
6
6
  const id = useId()
@@ -1,6 +1,6 @@
1
1
  'use client'
2
2
 
3
- import { useId, type ComponentPropsWithRef } from 'react'
3
+ import { type ComponentPropsWithRef, useId } from 'react'
4
4
 
5
5
  export function LightMode(props: LightMode.Props) {
6
6
  const id = useId()
@@ -1,6 +1,6 @@
1
1
  'use client'
2
2
 
3
- import { useId, type ComponentPropsWithRef } from 'react'
3
+ import { type ComponentPropsWithRef, useId } from 'react'
4
4
 
5
5
  export function OctagonAlert(props: OctagonAlert.Props) {
6
6
  const id = useId()
@@ -1,6 +1,6 @@
1
1
  'use client'
2
2
 
3
- import { useId, type ComponentPropsWithRef } from 'react'
3
+ import { type ComponentPropsWithRef, useId } from 'react'
4
4
 
5
5
  export function Unlink(props: Unlink.Props) {
6
6
  const id = useId()