@sanity/ui 3.0.0-static.6 → 3.0.0-static.8

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 (60) hide show
  1. package/dist/_chunks-cjs/_visual-editing.js +53 -53
  2. package/dist/_chunks-cjs/_visual-editing.js.map +1 -1
  3. package/dist/_chunks-es/_visual-editing.mjs +54 -54
  4. package/dist/_chunks-es/_visual-editing.mjs.map +1 -1
  5. package/dist/cli.js +1 -1
  6. package/dist/css.d.mts +207 -185
  7. package/dist/css.d.ts +207 -185
  8. package/dist/css.js +617 -547
  9. package/dist/css.js.map +1 -1
  10. package/dist/css.mjs +617 -547
  11. package/dist/css.mjs.map +1 -1
  12. package/dist/index.js +3 -13
  13. package/dist/index.js.map +1 -1
  14. package/dist/index.mjs +3 -13
  15. package/dist/index.mjs.map +1 -1
  16. package/dist/sanity-theme.css +1 -1
  17. package/dist/system.css +1334 -914
  18. package/dist/theme.d.mts +84 -76
  19. package/dist/theme.d.ts +84 -76
  20. package/dist/theme.js +148 -124
  21. package/dist/theme.js.map +1 -1
  22. package/dist/theme.mjs +148 -124
  23. package/dist/theme.mjs.map +1 -1
  24. package/package.json +1 -1
  25. package/src/css/aspects/index.ts +1 -0
  26. package/src/css/aspects/minWidth/index.ts +2 -0
  27. package/src/css/aspects/minWidth/minWidth.style.ts +13 -0
  28. package/src/css/aspects/minWidth/minWidth.ts +6 -0
  29. package/src/css/aspects/minWidth/types.ts +7 -0
  30. package/src/css/compile/compileRule.ts +1 -0
  31. package/src/css/compile/compileStyle.ts +1 -1
  32. package/src/css/compile/compileTheme_v3.ts +46 -37
  33. package/src/css/primitives/badge/badge.style.ts +1 -1
  34. package/src/css/primitives/box/box.style.ts +1 -1
  35. package/src/css/primitives/box/box.ts +2 -3
  36. package/src/css/primitives/box/types.ts +2 -0
  37. package/src/css/primitives/button/button.style.ts +20 -0
  38. package/src/css/primitives/card/card.style.ts +116 -44
  39. package/src/css/primitives/card/types.ts +0 -1
  40. package/src/css/primitives/kbd/kbd.style.ts +1 -1
  41. package/src/css/primitives/popover/popover.ts +4 -0
  42. package/src/css/primitives/switch/switch.style.ts +8 -83
  43. package/src/css/primitives/text/text.style.ts +11 -3
  44. package/src/css/system.style.ts +2 -0
  45. package/src/css/types.ts +200 -188
  46. package/src/css/varNames.ts +86 -76
  47. package/src/css/vars.ts +85 -76
  48. package/src/theme/v3/color/buildColor_v3.ts +43 -38
  49. package/src/theme/v3/color/card.ts +43 -38
  50. package/src/theme/v3/color/color.ts +42 -38
  51. package/src/theme/v3/defaults.ts +63 -47
  52. package/src/theme/v3/resolveTokens.ts +43 -38
  53. package/src/theme/versioning/themeColor_v3_v2.ts +1 -1
  54. package/src/ui/components/autocomplete/__workshop__/async.tsx +0 -1
  55. package/src/ui/components/autocomplete/autocomplete.tsx +2 -11
  56. package/src/ui/primitives/box/box.tsx +4 -3
  57. package/src/ui/primitives/card/card.tsx +2 -6
  58. package/src/ui/primitives/kbd/kbd.tsx +2 -2
  59. package/src/ui/primitives/popover/popoverCard.tsx +45 -39
  60. package/src/css/primitives/card/rules.ts +0 -473
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sanity/ui",
3
- "version": "3.0.0-static.6",
3
+ "version": "3.0.0-static.8",
4
4
  "keywords": [
5
5
  "sanity",
6
6
  "ui",
@@ -10,6 +10,7 @@ export * from './height'
10
10
  export * from './inset'
11
11
  export * from './margin'
12
12
  export * from './maxWidth'
13
+ export * from './minWidth'
13
14
  export * from './overflow'
14
15
  export * from './padding'
15
16
  export * from './pointerEvents'
@@ -0,0 +1,2 @@
1
+ export * from './minWidth'
2
+ export * from './types'
@@ -0,0 +1,13 @@
1
+ import {_responsiveRule} from '../../_responsiveRule'
2
+ import type {Style, StyleRules} from '../../types'
3
+
4
+ const util: StyleRules = {}
5
+
6
+ _responsiveRule(util, 'min-w-0', {minWidth: '0'})
7
+ _responsiveRule(util, 'min-w-auto', {minWidth: 'auto'})
8
+ _responsiveRule(util, 'min-w-full', {minWidth: '100%'})
9
+ _responsiveRule(util, 'min-w-min', {minWidth: 'min-content'})
10
+ _responsiveRule(util, 'min-w-max', {minWidth: 'max-content'})
11
+ _responsiveRule(util, 'min-w-fit', {minWidth: 'fit-content'})
12
+
13
+ export const minWidthStyle: Style = {layers: {util}}
@@ -0,0 +1,6 @@
1
+ import {_resp} from '../../_resp'
2
+ import {MinWidthStyleProps} from './types'
3
+
4
+ export function minWidth(props: MinWidthStyleProps): string {
5
+ return _resp('min-w', props.minWidth) ?? ''
6
+ }
@@ -0,0 +1,7 @@
1
+ import {ResponsiveProp} from '../../types'
2
+
3
+ export type MinWidth = 0 | 'auto' | 'full' | 'min' | 'max' | 'fit'
4
+
5
+ export interface MinWidthStyleProps {
6
+ minWidth?: ResponsiveProp<MinWidth>
7
+ }
@@ -2,6 +2,7 @@ import {PREFIX} from '../constants'
2
2
  import {type Properties} from '../types'
3
3
  import {CompileRulesContext} from './types'
4
4
 
5
+ // TODO: remove this
5
6
  export function compileRule(
6
7
  selector: string,
7
8
  props: Properties,
@@ -112,7 +112,7 @@ function compileStyleRule(_selector: string, properties: Properties): string {
112
112
  ? _nestedSelector.replace(/\./g, `.${PREFIX}`)
113
113
  : _nestedSelector
114
114
 
115
- css += `${nestedSelector.replace('&', selector)} {\n`
115
+ css += `${nestedSelector.replace(/&/g, selector)} {\n`
116
116
  css += compileProperties(nestedProperties)
117
117
  css += '}\n\n'
118
118
  }
@@ -339,53 +339,62 @@ function buildColorCardThemeProperties(
339
339
  const context: RenderColorContext = {bgVar: `${prefix}-bg-0`, hue: tokens._hue, scheme}
340
340
 
341
341
  const props: Properties = {
342
+ // backdrop
342
343
  [`${prefix}-backdrop`]: renderColor(tokens.backdrop, context),
343
344
 
345
+ // code
346
+ [`${prefix}-code-bg`]: renderColor(tokens.code.bg, context),
347
+ [`${prefix}-code-fg`]: renderColor(tokens.code.fg, context),
348
+
349
+ // code / token
350
+ [`${prefix}-code-token-atrule`]: renderColor(tokens.code.token.atrule, context),
351
+ [`${prefix}-code-token-attr-name`]: renderColor(tokens.code.token.attrName, context),
352
+ [`${prefix}-code-token-attr-value`]: renderColor(tokens.code.token.attrValue, context),
353
+ [`${prefix}-code-token-attribute`]: renderColor(tokens.code.token.attribute, context),
354
+ [`${prefix}-code-token-boolean`]: renderColor(tokens.code.token.boolean, context),
355
+ [`${prefix}-code-token-builtin`]: renderColor(tokens.code.token.builtin, context),
356
+ [`${prefix}-code-token-cdata`]: renderColor(tokens.code.token.cdata, context),
357
+ [`${prefix}-code-token-char`]: renderColor(tokens.code.token.char, context),
358
+ [`${prefix}-code-token-class-name`]: renderColor(tokens.code.token.className, context),
359
+ [`${prefix}-code-token-class`]: renderColor(tokens.code.token.class, context),
360
+ [`${prefix}-code-token-comment`]: renderColor(tokens.code.token.comment, context),
361
+ [`${prefix}-code-token-constant`]: renderColor(tokens.code.token.constant, context),
362
+ [`${prefix}-code-token-deleted`]: renderColor(tokens.code.token.deleted, context),
363
+ [`${prefix}-code-token-doctype`]: renderColor(tokens.code.token.doctype, context),
364
+ [`${prefix}-code-token-entity`]: renderColor(tokens.code.token.entity, context),
365
+ [`${prefix}-code-token-function`]: renderColor(tokens.code.token.function, context),
366
+ [`${prefix}-code-token-hexcode`]: renderColor(tokens.code.token.hexcode, context),
367
+ [`${prefix}-code-token-id`]: renderColor(tokens.code.token.id, context),
368
+ [`${prefix}-code-token-important`]: renderColor(tokens.code.token.important, context),
369
+ [`${prefix}-code-token-inserted`]: renderColor(tokens.code.token.inserted, context),
370
+ [`${prefix}-code-token-keyword`]: renderColor(tokens.code.token.keyword, context),
371
+ [`${prefix}-code-token-number`]: renderColor(tokens.code.token.number, context),
372
+ [`${prefix}-code-token-operator`]: renderColor(tokens.code.token.operator, context),
373
+ [`${prefix}-code-token-prolog`]: renderColor(tokens.code.token.prolog, context),
374
+ [`${prefix}-code-token-property`]: renderColor(tokens.code.token.property, context),
375
+ [`${prefix}-code-token-pseudo-class`]: renderColor(tokens.code.token.pseudoClass, context),
376
+ [`${prefix}-code-token-pseudo-eelement`]: renderColor(tokens.code.token.pseudoElement, context),
377
+ [`${prefix}-code-token-punctuation`]: renderColor(tokens.code.token.punctuation, context),
378
+ [`${prefix}-code-token-regex`]: renderColor(tokens.code.token.regex, context),
379
+ [`${prefix}-code-token-selector`]: renderColor(tokens.code.token.selector, context),
380
+ [`${prefix}-code-token-string`]: renderColor(tokens.code.token.string, context),
381
+ [`${prefix}-code-token-symbol`]: renderColor(tokens.code.token.symbol, context),
382
+ [`${prefix}-code-token-tag`]: renderColor(tokens.code.token.tag, context),
383
+ [`${prefix}-code-token-unit`]: renderColor(tokens.code.token.unit, context),
384
+ [`${prefix}-code-token-url`]: renderColor(tokens.code.token.url, context),
385
+ [`${prefix}-code-token-variable`]: renderColor(tokens.code.token.variable, context),
386
+
387
+ // focus ring
344
388
  [`${prefix}-focus-ring`]: renderColor(tokens.focusRing, context),
345
389
 
390
+ // link
346
391
  [`${prefix}-link-fg`]: renderColor(tokens.link.fg, context),
347
392
 
393
+ // shadow
348
394
  [`${prefix}-shadow-outline`]: renderColor(tokens.shadow.outline, context),
349
395
  [`${prefix}-shadow-umbra`]: renderColor(tokens.shadow.umbra, context),
350
396
  [`${prefix}-shadow-penumbra`]: renderColor(tokens.shadow.penumbra, context),
351
397
  [`${prefix}-shadow-ambient`]: renderColor(tokens.shadow.ambient, context),
352
-
353
- [`${prefix}-token-atrule`]: renderColor(tokens.token.atrule, context),
354
- [`${prefix}-token-attr-name`]: renderColor(tokens.token.attrName, context),
355
- [`${prefix}-token-attr-value`]: renderColor(tokens.token.attrValue, context),
356
- [`${prefix}-token-attribute`]: renderColor(tokens.token.attribute, context),
357
- [`${prefix}-token-boolean`]: renderColor(tokens.token.boolean, context),
358
- [`${prefix}-token-builtin`]: renderColor(tokens.token.builtin, context),
359
- [`${prefix}-token-cdata`]: renderColor(tokens.token.cdata, context),
360
- [`${prefix}-token-char`]: renderColor(tokens.token.char, context),
361
- [`${prefix}-token-class-name`]: renderColor(tokens.token.className, context),
362
- [`${prefix}-token-class`]: renderColor(tokens.token.class, context),
363
- [`${prefix}-token-comment`]: renderColor(tokens.token.comment, context),
364
- [`${prefix}-token-constant`]: renderColor(tokens.token.constant, context),
365
- [`${prefix}-token-deleted`]: renderColor(tokens.token.deleted, context),
366
- [`${prefix}-token-doctype`]: renderColor(tokens.token.doctype, context),
367
- [`${prefix}-token-entity`]: renderColor(tokens.token.entity, context),
368
- [`${prefix}-token-function`]: renderColor(tokens.token.function, context),
369
- [`${prefix}-token-hexcode`]: renderColor(tokens.token.hexcode, context),
370
- [`${prefix}-token-id`]: renderColor(tokens.token.id, context),
371
- [`${prefix}-token-important`]: renderColor(tokens.token.important, context),
372
- [`${prefix}-token-inserted`]: renderColor(tokens.token.inserted, context),
373
- [`${prefix}-token-keyword`]: renderColor(tokens.token.keyword, context),
374
- [`${prefix}-token-number`]: renderColor(tokens.token.number, context),
375
- [`${prefix}-token-operator`]: renderColor(tokens.token.operator, context),
376
- [`${prefix}-token-prolog`]: renderColor(tokens.token.prolog, context),
377
- [`${prefix}-token-property`]: renderColor(tokens.token.property, context),
378
- [`${prefix}-token-pseudo-class`]: renderColor(tokens.token.pseudoClass, context),
379
- [`${prefix}-token-pseudo-eelement`]: renderColor(tokens.token.pseudoElement, context),
380
- [`${prefix}-token-punctuation`]: renderColor(tokens.token.punctuation, context),
381
- [`${prefix}-token-regex`]: renderColor(tokens.token.regex, context),
382
- [`${prefix}-token-selector`]: renderColor(tokens.token.selector, context),
383
- [`${prefix}-token-string`]: renderColor(tokens.token.string, context),
384
- [`${prefix}-token-symbol`]: renderColor(tokens.token.symbol, context),
385
- [`${prefix}-token-tag`]: renderColor(tokens.token.tag, context),
386
- [`${prefix}-token-unit`]: renderColor(tokens.token.unit, context),
387
- [`${prefix}-token-url`]: renderColor(tokens.token.url, context),
388
- [`${prefix}-token-variable`]: renderColor(tokens.token.variable, context),
389
398
  }
390
399
 
391
400
  return props
@@ -15,7 +15,7 @@ const primitive: StyleRules = {
15
15
  for (const tone of THEME_COLOR_STATE_TONES) {
16
16
  primitive[`.badge-${tone}`] = {
17
17
  [varNames.color.bg]: vars.color.tinted[tone].bg[4],
18
- [varNames.color.fg]: vars.color.tinted[tone].fg[1],
18
+ [varNames.color.fg]: vars.color.tinted[tone].fg[3],
19
19
  }
20
20
  }
21
21
 
@@ -3,7 +3,7 @@ import {vars} from '../../vars'
3
3
 
4
4
  const primitive: StyleRules = {
5
5
  '.box': {
6
- 'minWidth': 0,
6
+ // todo: move to aspects
7
7
  'minHeight': 0,
8
8
 
9
9
  '@nest': {
@@ -12,6 +12,7 @@ import {
12
12
  inset,
13
13
  margin,
14
14
  maxWidth,
15
+ minWidth,
15
16
  overflow,
16
17
  padding,
17
18
  pointerEvents,
@@ -23,9 +24,6 @@ import {BoxStyleProps} from './types'
23
24
 
24
25
  /** @public */
25
26
  export function box(props: BoxStyleProps): string | undefined {
26
- // props.align
27
- // props.autoCols
28
-
29
27
  return _comp(
30
28
  'box',
31
29
  props.muted && 'muted', // todo: consider this naming
@@ -42,6 +40,7 @@ export function box(props: BoxStyleProps): string | undefined {
42
40
  inset(props),
43
41
  margin(props),
44
42
  maxWidth(props),
43
+ minWidth(props),
45
44
  props.outline && `outline-${props.outline}`,
46
45
  overflow(props),
47
46
  padding(props),
@@ -10,6 +10,7 @@ import {
10
10
  InsetStyleProps,
11
11
  MarginStyleProps,
12
12
  MaxWidthStyleProps,
13
+ MinWidthStyleProps,
13
14
  OverflowStyleProps,
14
15
  PaddingStyleProps,
15
16
  PointerEventsStyleProps,
@@ -37,6 +38,7 @@ export interface BoxStyleProps
37
38
  InsetStyleProps,
38
39
  MarginStyleProps,
39
40
  MaxWidthStyleProps,
41
+ MinWidthStyleProps,
40
42
  OverflowStyleProps,
41
43
  PaddingStyleProps,
42
44
  PointerEventsStyleProps,
@@ -66,6 +66,7 @@ for (const tone of THEME_COLOR_STATE_TONES) {
66
66
  [varNames.color.bg]: solid.bg[0],
67
67
  [varNames.color.border]: solid.border[1],
68
68
  [varNames.color.fg]: solid.fg[0],
69
+ [varNames.color.muted.bg]: solid.bg[1],
69
70
  [varNames.color.muted.fg]: solid.fg[4],
70
71
  '--button-box-shadow': 'none',
71
72
 
@@ -74,6 +75,7 @@ for (const tone of THEME_COLOR_STATE_TONES) {
74
75
  [varNames.color.bg]: solid.bg[1],
75
76
  [varNames.color.border]: solid.border[2],
76
77
  [varNames.color.fg]: solid.fg[0],
78
+ [varNames.color.muted.bg]: solid.bg[2],
77
79
  [varNames.color.muted.fg]: solid.fg[4],
78
80
  },
79
81
 
@@ -81,6 +83,7 @@ for (const tone of THEME_COLOR_STATE_TONES) {
81
83
  [varNames.color.bg]: solid.bg[2],
82
84
  [varNames.color.border]: solid.border[3],
83
85
  [varNames.color.fg]: solid.fg[0],
86
+ [varNames.color.muted.bg]: solid.bg[3],
84
87
  [varNames.color.muted.fg]: solid.fg[4],
85
88
  },
86
89
 
@@ -88,6 +91,7 @@ for (const tone of THEME_COLOR_STATE_TONES) {
88
91
  [varNames.color.bg]: solid.bg[2],
89
92
  [varNames.color.border]: solid.border[3],
90
93
  [varNames.color.fg]: solid.fg[0],
94
+ [varNames.color.muted.bg]: solid.bg[3],
91
95
  [varNames.color.muted.fg]: solid.fg[4],
92
96
  },
93
97
 
@@ -95,6 +99,7 @@ for (const tone of THEME_COLOR_STATE_TONES) {
95
99
  [varNames.color.bg]: vars.color.default.tinted.bg[1],
96
100
  [varNames.color.border]: vars.color.default.tinted.border[0],
97
101
  [varNames.color.fg]: vars.color.default.tinted.fg[2],
102
+ [varNames.color.muted.bg]: vars.color.default.tinted.bg[2],
98
103
  [varNames.color.muted.fg]: vars.color.default.tinted.fg[1],
99
104
  },
100
105
  },
@@ -105,6 +110,8 @@ for (const tone of THEME_COLOR_STATE_TONES) {
105
110
  [varNames.color.bg]: tinted.bg[1],
106
111
  [varNames.color.border]: tinted.border[0],
107
112
  [varNames.color.fg]: tinted.fg[2],
113
+ [varNames.color.muted.bg]: tinted.bg[2],
114
+ [varNames.color.muted.fg]: tinted.fg[4],
108
115
  '--button-box-shadow': `inset 0 0 0 var(--button-border-width) var(--color-border)`,
109
116
 
110
117
  '@nest': {
@@ -112,6 +119,8 @@ for (const tone of THEME_COLOR_STATE_TONES) {
112
119
  [varNames.color.bg]: tinted.bg[2],
113
120
  [varNames.color.border]: tinted.border[1],
114
121
  [varNames.color.fg]: tinted.fg[1],
122
+ [varNames.color.muted.bg]: tinted.bg[3],
123
+ [varNames.color.muted.fg]: tinted.fg[3],
115
124
  // '--button-box-shadow': `inset 0 0 0 var(--button-border-width) var(--color-border)`,
116
125
  },
117
126
 
@@ -119,6 +128,8 @@ for (const tone of THEME_COLOR_STATE_TONES) {
119
128
  [varNames.color.bg]: tinted.bg[3],
120
129
  [varNames.color.border]: tinted.border[2],
121
130
  [varNames.color.fg]: tinted.fg[1],
131
+ [varNames.color.muted.bg]: tinted.bg[4],
132
+ [varNames.color.muted.fg]: tinted.fg[3],
122
133
  '--button-box-shadow': `inset 0 0 0 var(--button-border-width) var(--color-border)`,
123
134
  },
124
135
 
@@ -126,6 +137,8 @@ for (const tone of THEME_COLOR_STATE_TONES) {
126
137
  [varNames.color.bg]: tinted.bg[3],
127
138
  [varNames.color.border]: tinted.border[2],
128
139
  [varNames.color.fg]: tinted.fg[1],
140
+ [varNames.color.muted.bg]: tinted.bg[4],
141
+ [varNames.color.muted.fg]: tinted.fg[3],
129
142
  '--button-box-shadow': `inset 0 0 0 var(--button-border-width) var(--color-border)`,
130
143
  },
131
144
 
@@ -133,6 +146,8 @@ for (const tone of THEME_COLOR_STATE_TONES) {
133
146
  [varNames.color.bg]: vars.color.default.tinted.bg[1],
134
147
  [varNames.color.border]: vars.color.default.tinted.border[0],
135
148
  [varNames.color.fg]: vars.color.default.tinted.fg[2],
149
+ [varNames.color.muted.bg]: vars.color.default.tinted.bg[2],
150
+ [varNames.color.muted.fg]: vars.color.default.tinted.fg[1],
136
151
  },
137
152
  },
138
153
  }
@@ -143,6 +158,7 @@ for (const tone of THEME_COLOR_STATE_TONES) {
143
158
  [varNames.color.bg]: tinted.bg[0],
144
159
  [varNames.color.border]: tinted.border[1],
145
160
  [varNames.color.fg]: tinted.fg[2],
161
+ [varNames.color.muted.bg]: tinted.bg[1],
146
162
  [varNames.color.muted.fg]: tinted.fg[4],
147
163
  '--button-box-shadow': 'none',
148
164
 
@@ -151,6 +167,7 @@ for (const tone of THEME_COLOR_STATE_TONES) {
151
167
  [varNames.color.bg]: tinted.bg[1],
152
168
  [varNames.color.border]: tinted.border[2],
153
169
  [varNames.color.fg]: tinted.fg[1],
170
+ [varNames.color.muted.bg]: tinted.bg[2],
154
171
  [varNames.color.muted.fg]: tinted.fg[3],
155
172
  },
156
173
 
@@ -158,6 +175,7 @@ for (const tone of THEME_COLOR_STATE_TONES) {
158
175
  [varNames.color.bg]: tinted.bg[2],
159
176
  [varNames.color.border]: tinted.border[3],
160
177
  [varNames.color.fg]: tinted.fg[1],
178
+ [varNames.color.muted.bg]: tinted.bg[3],
161
179
  [varNames.color.muted.fg]: tinted.fg[3],
162
180
  },
163
181
 
@@ -165,6 +183,7 @@ for (const tone of THEME_COLOR_STATE_TONES) {
165
183
  [varNames.color.bg]: tinted.bg[2],
166
184
  [varNames.color.border]: tinted.border[3],
167
185
  [varNames.color.fg]: tinted.fg[1],
186
+ [varNames.color.muted.bg]: tinted.bg[3],
168
187
  [varNames.color.muted.fg]: tinted.fg[3],
169
188
  },
170
189
 
@@ -172,6 +191,7 @@ for (const tone of THEME_COLOR_STATE_TONES) {
172
191
  [varNames.color.bg]: vars.color.default.tinted.bg[0],
173
192
  [varNames.color.border]: vars.color.default.tinted.border[0],
174
193
  [varNames.color.fg]: vars.color.default.tinted.fg[2],
194
+ [varNames.color.muted.bg]: vars.color.default.tinted.bg[1],
175
195
  [varNames.color.muted.fg]: vars.color.default.tinted.fg[1],
176
196
  },
177
197
  },
@@ -17,12 +17,14 @@ const primitive: StyleRules = {
17
17
 
18
18
  [varNames.color.bg]: vars.color.tinted.default.bg[0],
19
19
  [varNames.color.border]: vars.color.tinted.default.border[1],
20
+ [varNames.color.code.bg]: vars.color.code.bg,
21
+ [varNames.color.code.fg]: vars.color.code.fg,
20
22
  [varNames.color.fg]: vars.color.tinted.default.fg[0],
21
23
  [varNames.color.muted.bg]: vars.color.tinted.default.bg[1],
22
24
  [varNames.color.muted.fg]: vars.color.tinted.default.fg[4],
23
25
 
24
26
  '@nest': {
25
- '&:is(button)': {
27
+ 'button&': {
26
28
  WebkitFontSmoothing: 'inherit',
27
29
  appearance: 'none',
28
30
  outline: 'none',
@@ -33,15 +35,82 @@ const primitive: StyleRules = {
33
35
  width: ['-moz-available', '-webkit-fill-available', 'fill-available'],
34
36
  },
35
37
 
36
- '&:is(a)': {
38
+ 'a&': {
39
+ // border: 'none',
37
40
  outline: 'none',
38
41
  textDecoration: 'none',
39
42
  },
40
43
 
41
- '&:is(pre)': {
44
+ 'pre&': {
42
45
  font: 'inherit',
43
46
  whiteSpace: 'inherit',
44
47
  },
48
+
49
+ 'a&:not([data-disabled]):hover, button&:not([data-disabled]):hover': {
50
+ [varNames.color.bg]: vars.color.tinted.default.bg[1],
51
+ [varNames.color.border]: vars.color.tinted.default.border[3],
52
+ [varNames.color.fg]: vars.color.tinted.default.fg[1],
53
+ [varNames.color.muted.bg]: vars.color.tinted.default.bg[2],
54
+ [varNames.color.muted.fg]: vars.color.tinted.default.fg[4],
55
+ },
56
+
57
+ 'a&:not([data-disabled]):active, button&:not([data-disabled]):active': {
58
+ [varNames.color.bg]: vars.color.tinted.default.bg[2],
59
+ [varNames.color.border]: vars.color.tinted.default.border[4],
60
+ [varNames.color.fg]: vars.color.tinted.default.fg[0],
61
+ [varNames.color.muted.bg]: vars.color.tinted.default.bg[3],
62
+ [varNames.color.muted.fg]: vars.color.tinted.default.fg[4],
63
+ },
64
+
65
+ // toggle button
66
+ 'a&:not([data-disabled])[aria-pressed="true"], button&:not([data-disabled])[aria-pressed="true"]':
67
+ {
68
+ [varNames.color.bg]: vars.color.tinted.default.bg[2],
69
+ [varNames.color.border]: vars.color.tinted.default.border[4],
70
+ [varNames.color.fg]: vars.color.tinted.default.fg[0],
71
+ [varNames.color.muted.bg]: vars.color.tinted.default.bg[3],
72
+ [varNames.color.muted.fg]: vars.color.tinted.default.fg[4],
73
+ },
74
+
75
+ 'a&:not([data-disabled])[data-pressed], button&:not([data-disabled])[data-pressed]': {
76
+ [varNames.color.bg]: vars.color.tinted.default.bg[2],
77
+ [varNames.color.border]: vars.color.tinted.default.border[4],
78
+ [varNames.color.fg]: vars.color.tinted.default.fg[0],
79
+ [varNames.color.muted.bg]: vars.color.tinted.default.bg[3],
80
+ [varNames.color.muted.fg]: vars.color.tinted.default.fg[4],
81
+ },
82
+
83
+ 'a&:not([data-disabled])[data-selected], button&:not([data-disabled])[data-selected]': {
84
+ [varNames.color.bg]: vars.color.solid.primary.bg[0],
85
+ [varNames.color.border]: vars.color.solid.primary.border[1],
86
+ [varNames.color.fg]: vars.color.solid.primary.fg[0],
87
+ [varNames.color.muted.bg]: vars.color.solid.primary.bg[1],
88
+ [varNames.color.muted.fg]: vars.color.solid.primary.fg[3],
89
+ },
90
+
91
+ // '&:not([data-disabled]):focus': {
92
+ // '--color-bg': vars.color.solid.bg[0],
93
+ // '--color-border': vars.color.solid.border[1],
94
+ // '--color-fg': vars.color.solid.fg[1],
95
+ // '--color-muted-bg': vars.color.solid.bg[1],
96
+ // '--color-muted-fg': vars.color.solid.fg[3],
97
+ // },
98
+
99
+ 'a&[data-disabled]), button&[data-disabled]': {
100
+ [varNames.color.bg]: vars.color.tinted.default.bg[2],
101
+ [varNames.color.border]: vars.color.tinted.default.border[4],
102
+ [varNames.color.fg]: vars.color.tinted.default.fg[0],
103
+ [varNames.color.muted.bg]: vars.color.tinted.default.bg[3],
104
+ [varNames.color.muted.fg]: vars.color.tinted.default.fg[4],
105
+ },
106
+
107
+ // '&[data-disabled]': {
108
+ // '--color-bg': vars.color.tinted.bg[0],
109
+ // '--color-border': vars.color.tinted.border[1],
110
+ // '--color-fg': vars.color.tinted.border[4],
111
+ // '--color-muted-bg': vars.color.tinted.bg[1],
112
+ // '--color-muted-fg': vars.color.tinted.border[4],
113
+ // },
45
114
  },
46
115
  },
47
116
  }
@@ -78,10 +147,12 @@ for (const tone of THEME_COLOR_CARD_TONES) {
78
147
  '--card-bg-color': vars.color.bg,
79
148
  '--card-bg2-color': vars.color.muted.bg,
80
149
  '--card-border-color': vars.color.border,
81
- '--card-code-bg-color': vars.color.muted.bg,
82
- '--card-code-fg-color': vars.color.tinted.default.fg[4],
150
+ '--card-code-bg-color': vars.color.code.bg,
151
+ '--card-code-fg-color': vars.color.code.fg,
83
152
  '--card-fg-color': vars.color.fg,
84
153
  '--card-focus-ring-color': vars.color.focusRing,
154
+ '--card-hairline-soft-color': vars.color.tinted.default.border[1],
155
+ '--card-hairline-hard-color': vars.color.tinted.default.border[2],
85
156
  '--card-icon-color': vars.color.fg,
86
157
  '--card-kbd-bg-color': vars.color.muted.bg,
87
158
  '--card-kbd-border-color': vars.color.tinted.default.border[1],
@@ -96,8 +167,6 @@ for (const tone of THEME_COLOR_CARD_TONES) {
96
167
  '--card-shadow-ambient-color': vars.color.shadow.ambient,
97
168
  // '--card-skeleton-from-color': 'var(--color-skeleton-from)',
98
169
  // '--card-skeleton-to-color': 'var(--color-skeleton-to)',
99
- '--card-hairline-soft-color': vars.color.tinted.default.border[1],
100
- '--card-hairline-hard-color': vars.color.tinted.default.border[2],
101
170
  })
102
171
 
103
172
  primitive[`.card.${toneMap[tone]}`] = toneProps
@@ -122,6 +191,46 @@ function _assignToneProps(
122
191
  Object.assign(toneProps, {
123
192
  [_varNames.backdrop]: _vars.backdrop,
124
193
 
194
+ [_varNames.code.fg]: _vars.code.fg,
195
+ [_varNames.code.bg]: _vars.code.bg,
196
+
197
+ [_varNames.code.token.atrule]: _vars.code.token.atrule,
198
+ [_varNames.code.token.attrName]: _vars.code.token.attrName,
199
+ [_varNames.code.token.attrValue]: _vars.code.token.attrValue,
200
+ [_varNames.code.token.attribute]: _vars.code.token.attribute,
201
+ [_varNames.code.token.boolean]: _vars.code.token.boolean,
202
+ [_varNames.code.token.builtin]: _vars.code.token.builtin,
203
+ [_varNames.code.token.cdata]: _vars.code.token.cdata,
204
+ [_varNames.code.token.char]: _vars.code.token.char,
205
+ [_varNames.code.token.class]: _vars.code.token.class,
206
+ [_varNames.code.token.className]: _vars.code.token.className,
207
+ [_varNames.code.token.comment]: _vars.code.token.comment,
208
+ [_varNames.code.token.constant]: _vars.code.token.constant,
209
+ [_varNames.code.token.deleted]: _vars.code.token.deleted,
210
+ [_varNames.code.token.doctype]: _vars.code.token.doctype,
211
+ [_varNames.code.token.entity]: _vars.code.token.entity,
212
+ [_varNames.code.token.function]: _vars.code.token.function,
213
+ [_varNames.code.token.hexcode]: _vars.code.token.hexcode,
214
+ [_varNames.code.token.id]: _vars.code.token.id,
215
+ [_varNames.code.token.important]: _vars.code.token.important,
216
+ [_varNames.code.token.inserted]: _vars.code.token.inserted,
217
+ [_varNames.code.token.keyword]: _vars.code.token.keyword,
218
+ [_varNames.code.token.number]: _vars.code.token.number,
219
+ [_varNames.code.token.operator]: _vars.code.token.operator,
220
+ [_varNames.code.token.prolog]: _vars.code.token.prolog,
221
+ [_varNames.code.token.property]: _vars.code.token.property,
222
+ [_varNames.code.token.pseudoClass]: _vars.code.token.pseudoClass,
223
+ [_varNames.code.token.pseudoElement]: _vars.code.token.pseudoElement,
224
+ [_varNames.code.token.punctuation]: _vars.code.token.punctuation,
225
+ [_varNames.code.token.regex]: _vars.code.token.regex,
226
+ [_varNames.code.token.selector]: _vars.code.token.selector,
227
+ [_varNames.code.token.string]: _vars.code.token.string,
228
+ [_varNames.code.token.symbol]: _vars.code.token.symbol,
229
+ [_varNames.code.token.tag]: _vars.code.token.tag,
230
+ [_varNames.code.token.unit]: _vars.code.token.unit,
231
+ [_varNames.code.token.url]: _vars.code.token.url,
232
+ [_varNames.code.token.variable]: _vars.code.token.variable,
233
+
125
234
  [_varNames.focusRing]: _vars.focusRing,
126
235
 
127
236
  [_varNames.link.fg]: _vars.link.fg,
@@ -130,43 +239,6 @@ function _assignToneProps(
130
239
  [_varNames.shadow.umbra]: _vars.shadow.umbra,
131
240
  [_varNames.shadow.penumbra]: _vars.shadow.penumbra,
132
241
  [_varNames.shadow.ambient]: _vars.shadow.ambient,
133
-
134
- [_varNames.token.atrule]: _vars.token.atrule,
135
- [_varNames.token.attrName]: _vars.token.attrName,
136
- [_varNames.token.attrValue]: _vars.token.attrValue,
137
- [_varNames.token.attribute]: _vars.token.attribute,
138
- [_varNames.token.boolean]: _vars.token.boolean,
139
- [_varNames.token.builtin]: _vars.token.builtin,
140
- [_varNames.token.cdata]: _vars.token.cdata,
141
- [_varNames.token.char]: _vars.token.char,
142
- [_varNames.token.class]: _vars.token.class,
143
- [_varNames.token.className]: _vars.token.className,
144
- [_varNames.token.comment]: _vars.token.comment,
145
- [_varNames.token.constant]: _vars.token.constant,
146
- [_varNames.token.deleted]: _vars.token.deleted,
147
- [_varNames.token.doctype]: _vars.token.doctype,
148
- [_varNames.token.entity]: _vars.token.entity,
149
- [_varNames.token.function]: _vars.token.function,
150
- [_varNames.token.hexcode]: _vars.token.hexcode,
151
- [_varNames.token.id]: _vars.token.id,
152
- [_varNames.token.important]: _vars.token.important,
153
- [_varNames.token.inserted]: _vars.token.inserted,
154
- [_varNames.token.keyword]: _vars.token.keyword,
155
- [_varNames.token.number]: _vars.token.number,
156
- [_varNames.token.operator]: _vars.token.operator,
157
- [_varNames.token.prolog]: _vars.token.prolog,
158
- [_varNames.token.property]: _vars.token.property,
159
- [_varNames.token.pseudoClass]: _vars.token.pseudoClass,
160
- [_varNames.token.pseudoElement]: _vars.token.pseudoElement,
161
- [_varNames.token.punctuation]: _vars.token.punctuation,
162
- [_varNames.token.regex]: _vars.token.regex,
163
- [_varNames.token.selector]: _vars.token.selector,
164
- [_varNames.token.string]: _vars.token.string,
165
- [_varNames.token.symbol]: _vars.token.symbol,
166
- [_varNames.token.tag]: _vars.token.tag,
167
- [_varNames.token.unit]: _vars.token.unit,
168
- [_varNames.token.url]: _vars.token.url,
169
- [_varNames.token.variable]: _vars.token.variable,
170
242
  })
171
243
 
172
244
  for (const variant of ['solid', 'tinted'] as const) {
@@ -5,7 +5,6 @@ import {BoxStyleProps} from '../box'
5
5
 
6
6
  export interface CardStyleProps extends BoxStyleProps, ShadowStyleProps {
7
7
  checkered?: boolean
8
- selectable?: boolean
9
8
  scheme?: ThemeColorSchemeKey
10
9
  tone?: ThemeColorCardToneKey | 'inherit'
11
10
  }
@@ -6,7 +6,7 @@ const primitive: StyleRules = {
6
6
  // '--color-border': 'var(--color-tinted-default-border-2)',
7
7
  // '--color-fg': 'var(--color-tinted-default-fg-3)',
8
8
 
9
- 'boxShadow': 'inset 0 0 0 0.5px var(--color-border)',
9
+ 'boxShadow': 'inset 0 0 0 0.5px var(--color-tinted-default-border-3)',
10
10
  'background': 'var(--color-muted-bg)',
11
11
  'font': 'inherit',
12
12
  'verticalAlign': 'top',
@@ -3,3 +3,7 @@ import {_comp} from '../../_comp'
3
3
  export function popover(): string | undefined {
4
4
  return _comp('popover')
5
5
  }
6
+
7
+ export function popoverCard(): string | undefined {
8
+ return _comp('popover-card')
9
+ }