@vireo-ai/trellis-ui 0.1.29 → 0.1.30

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 (89) hide show
  1. package/package.json +2 -2
  2. package/packages/client/src/components/field/styles.css +71 -0
  3. package/packages/client/src/components/file-upload/styles.css +68 -0
  4. package/packages/client/src/components/tabs/styles.css +73 -0
  5. package/packages/client/src/components/toast/styles.css +123 -0
  6. package/packages/client/src/styles/components.css +14 -4
  7. package/packages/client/src/styles/generated/theme-fonts.css +1 -1
  8. package/packages/client/src/styles/generated/theme-palette.css +77 -1462
  9. package/packages/client/src/styles/generated/theme-runtime.css +1 -1390
  10. package/packages/client/src/styles/recipes/action.css +175 -0
  11. package/packages/client/src/styles/recipes/disabled.css +16 -0
  12. package/packages/client/src/styles/recipes/option.css +123 -0
  13. package/packages/client/src/styles/recipes/selection.css +78 -0
  14. package/packages/client/src/styles/theme.css +0 -718
  15. package/packages/server/trellis_ui/static/trellis_ui/assets/css/trellis.css +630 -3367
  16. package/packages/server/trellis_ui/static/trellis_ui/assets/css/trellis.min.css +1 -1
  17. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/build-metadata.json +247 -247
  18. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/capabilities/motion.js +1 -1
  19. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/capabilities/sortable.js +1 -1
  20. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{alpine-machine-D0Kqjm-1.js → alpine-machine-BS13dbK4.js} +2 -2
  21. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{alpine-machine-D0Kqjm-1.js.map → alpine-machine-BS13dbK4.js.map} +1 -1
  22. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{capability-motion-Cog7tKk0.js → capability-motion-wMoceguq.js} +2 -2
  23. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{capability-motion-Cog7tKk0.js.map → capability-motion-wMoceguq.js.map} +1 -1
  24. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{capability-sortable-k107A8WE.js → capability-sortable-BurX5yRd.js} +2 -2
  25. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/capability-sortable-BurX5yRd.js.map +1 -0
  26. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{core-vW9Cglw8.js → core-BuKz1uWk.js} +2 -2
  27. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{core-vW9Cglw8.js.map → core-BuKz1uWk.js.map} +1 -1
  28. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-JnbQA47P.js → entry.generated-9sxiaVVI.js} +2 -2
  29. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-JnbQA47P.js.map → entry.generated-9sxiaVVI.js.map} +1 -1
  30. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DVPnOfPb.js → entry.generated-BehM6Hle.js} +2 -2
  31. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DVPnOfPb.js.map → entry.generated-BehM6Hle.js.map} +1 -1
  32. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DOV8BDMY.js → entry.generated-BqOi_tIN.js} +2 -2
  33. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DOV8BDMY.js.map → entry.generated-BqOi_tIN.js.map} +1 -1
  34. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-CGgRCeB5.js → entry.generated-BuXeU4zt.js} +2 -2
  35. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-CGgRCeB5.js.map → entry.generated-BuXeU4zt.js.map} +1 -1
  36. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-Bhvs_TUM.js → entry.generated-C-MH09sf.js} +2 -2
  37. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-Bhvs_TUM.js.map → entry.generated-C-MH09sf.js.map} +1 -1
  38. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DMK37KS0.js → entry.generated-C3h9Czzn.js} +2 -2
  39. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DMK37KS0.js.map → entry.generated-C3h9Czzn.js.map} +1 -1
  40. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DFITIl56.js → entry.generated-C5Bueyfb.js} +2 -2
  41. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DFITIl56.js.map → entry.generated-C5Bueyfb.js.map} +1 -1
  42. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-Bbm6qhVl.js → entry.generated-CCka3fIO.js} +2 -2
  43. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-Bbm6qhVl.js.map → entry.generated-CCka3fIO.js.map} +1 -1
  44. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DMre0DbH.js → entry.generated-CSxEK8G9.js} +2 -2
  45. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DMre0DbH.js.map → entry.generated-CSxEK8G9.js.map} +1 -1
  46. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DiG5fS1F.js → entry.generated-CoJxfxlc.js} +2 -2
  47. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DiG5fS1F.js.map → entry.generated-CoJxfxlc.js.map} +1 -1
  48. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-dTc38DPe.js → entry.generated-D6cdmqiV.js} +2 -2
  49. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-dTc38DPe.js.map → entry.generated-D6cdmqiV.js.map} +1 -1
  50. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-Cvgc61x9.js → entry.generated-DBSwLHmm.js} +2 -2
  51. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-Cvgc61x9.js.map → entry.generated-DBSwLHmm.js.map} +1 -1
  52. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DnSxEcns.js → entry.generated-DEiL4FhC.js} +2 -2
  53. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DnSxEcns.js.map → entry.generated-DEiL4FhC.js.map} +1 -1
  54. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BgnZZd0A.js → entry.generated-DRqap77P.js} +2 -2
  55. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BgnZZd0A.js.map → entry.generated-DRqap77P.js.map} +1 -1
  56. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DT70Lo44.js → entry.generated-Dzw2Rg5F.js} +2 -2
  57. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DT70Lo44.js.map → entry.generated-Dzw2Rg5F.js.map} +1 -1
  58. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-byAFfb_v.js → entry.generated-EtCfrZfr.js} +2 -2
  59. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-byAFfb_v.js.map → entry.generated-EtCfrZfr.js.map} +1 -1
  60. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-CgO0b8V6.js → entry.generated-cMueWbY7.js} +2 -2
  61. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-CgO0b8V6.js.map → entry.generated-cMueWbY7.js.map} +1 -1
  62. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{semantic-observer-DS2ew4dT.js → semantic-observer-BUswpsNx.js} +2 -2
  63. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{semantic-observer-DS2ew4dT.js.map → semantic-observer-BUswpsNx.js.map} +1 -1
  64. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{stream-uyKKe0QF.js → stream-pMBGbBZH.js} +2 -2
  65. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{stream-uyKKe0QF.js.map → stream-pMBGbBZH.js.map} +1 -1
  66. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/accordion.js +1 -1
  67. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/checkbox.js +1 -1
  68. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/date-picker.js +1 -1
  69. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/dropdown.js +1 -1
  70. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/field.js +1 -1
  71. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/file-upload.js +1 -1
  72. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/index.js +1 -1
  73. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/input.js +1 -1
  74. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/modal.js +1 -1
  75. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/panels.js +1 -1
  76. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/radio.js +1 -1
  77. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/scroll-area.js +1 -1
  78. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/select.js +1 -1
  79. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/sidebar.js +1 -1
  80. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/slider.js +1 -1
  81. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/switch.js +1 -1
  82. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/tabs.js +1 -1
  83. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/toast.js +1 -1
  84. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/core.js +1 -1
  85. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/index.js +1 -1
  86. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/logical-entry-manifest.json +109 -109
  87. package/packages/server/trellis_ui/static/trellis_ui/assets/js/trellis.js +8 -8
  88. package/packages/server/trellis_ui/static/trellis_ui/assets/js/trellis.min.js +8 -8
  89. package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/capability-sortable-k107A8WE.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vireo-ai/trellis-ui",
3
- "version": "0.1.29",
3
+ "version": "0.1.30",
4
4
  "type": "module",
5
5
  "description": "Django-native UI toolkit for building realtime and interactive web apps.",
6
6
  "license": "MIT",
@@ -123,7 +123,7 @@
123
123
  "build:docs": "pnpm --dir docs run build",
124
124
  "build": "pnpm run build:package && pnpm run build:docs",
125
125
  "check": "pnpm run build:package && pnpm run generate:runtime-docs && pnpm run typecheck && pnpm test",
126
- "check:packages": "pnpm run check:runtime-boundary && pnpm run verify:packed-consumer && pnpm pack --dry-run && uv build --sdist --wheel && python3 scripts/check_python_package_artifacts.py",
126
+ "check:packages": "pnpm run check:runtime-boundary && pnpm run verify:packed-consumer && uv build --sdist --wheel",
127
127
  "check:release": "pnpm run check && pnpm run check:packages",
128
128
  "release": "node scripts/release.mjs",
129
129
  "publish:npm": "pnpm run check:release && pnpm publish --access public",
@@ -20,3 +20,74 @@
20
20
  grid-column: 2;
21
21
  }
22
22
  }
23
+ @layer components {
24
+ /* Field control treatment. */
25
+ [data-ui-control][data-ui-control-recipe="field"] {
26
+ color: inherit;
27
+ background-color: transparent;
28
+ box-shadow: 0 0 0 var(--border-width-edge-control) var(--ui-surface-edge);
29
+ }
30
+
31
+ [data-ui-control][data-ui-control-recipe="field"][data-variant="filled"] {
32
+ background-color: var(--color-interaction-hover);
33
+ box-shadow: none;
34
+ }
35
+
36
+ [data-ui-control][data-ui-control-recipe="field"][data-variant="filled"]:is(:hover, :active):not(:focus-within):not([data-state="open"]):not([data-disabled]):not(:disabled):not([data-invalid]):not([aria-invalid="true"]) {
37
+ background-color: var(--color-interaction-pressed);
38
+ }
39
+
40
+ [data-ui-control][data-ui-control-recipe="field"]:is(:hover, :active):not(:focus-within):not([data-state="open"]):not([data-disabled]):not(:disabled):not([data-invalid]):not([aria-invalid="true"]) {
41
+ box-shadow: 0 0 0 var(--border-width-edge-control) var(--ui-surface-edge-hover);
42
+ }
43
+
44
+ [data-ui-control][data-ui-control-recipe="field"]:is(:focus-within, [data-state="open"]):not([data-disabled]):not(:disabled):not([data-invalid]):not([aria-invalid="true"]) {
45
+ box-shadow:
46
+ 0 0 0 var(--border-width-edge-control) var(--color-intent-accent-edge-strong),
47
+ 0 0 0 var(--color-intent-accent-focus-width) var(--color-intent-accent-focus);
48
+ }
49
+
50
+ [data-ui-control][data-ui-control-recipe="field"]:is([data-invalid], [aria-invalid="true"]) {
51
+ box-shadow: 0 0 0 var(--border-width-edge-control) var(--color-intent-danger-edge, var(--ui-surface-edge-strong));
52
+ }
53
+
54
+ [data-ui-control][data-ui-control-recipe="field"]:is([data-invalid], [aria-invalid="true"]):is(:hover, :active):not(:focus-within):not([data-state="open"]):not([data-disabled]):not(:disabled) {
55
+ box-shadow: 0 0 0 var(--border-width-edge-control) var(--color-intent-danger-edge-hover, var(--ui-surface-edge-strong));
56
+ }
57
+
58
+ [data-ui-control][data-ui-control-recipe="field"]:is([data-invalid], [aria-invalid="true"]):is(:focus-within, [data-state="open"]):not([data-disabled]):not(:disabled) {
59
+ box-shadow:
60
+ 0 0 0 var(--border-width-edge-control) var(--color-intent-danger-edge-strong, var(--ui-surface-edge-strong)),
61
+ 0 0 0 var(--color-intent-danger-focus-width, var(--color-intent-accent-focus-width)) var(--color-intent-danger-focus, var(--color-intent-accent-focus));
62
+ }
63
+
64
+ [data-ui-control][data-ui-control-recipe="field"] :is(input, textarea)::placeholder {
65
+ color: var(--ui-surface-ink-muted);
66
+ opacity: 1;
67
+ }
68
+
69
+ [data-ui-control][data-ui-control-recipe="field"]:not([data-disabled]):not(:disabled) [data-ui-control-action]:hover {
70
+ color: inherit;
71
+ background-color: var(--color-interaction-hover);
72
+ }
73
+
74
+ [data-ui-control][data-ui-control-recipe="field"]:not([data-disabled]):not(:disabled) [data-ui-control-action]:focus-visible {
75
+ box-shadow: 0 0 0 var(--color-intent-accent-focus-width) var(--color-intent-accent-focus);
76
+ }
77
+
78
+ [data-ui-control][data-ui-control-recipe="field"] :is(input, select, textarea, button):disabled {
79
+ color: inherit;
80
+ opacity: 1;
81
+ -webkit-text-fill-color: currentColor;
82
+ }
83
+
84
+ [data-ui-control][data-ui-control-recipe="field"][data-disabled] :is(input, textarea):disabled::placeholder {
85
+ color: var(--ui-surface-ink-muted);
86
+ opacity: 1;
87
+ -webkit-text-fill-color: currentColor;
88
+ }
89
+
90
+ [data-ui-select-native]:disabled + [data-ui-select-native-icon] {
91
+ opacity: var(--opacity-interaction-disabled);
92
+ }
93
+ }
@@ -0,0 +1,68 @@
1
+
2
+
3
+ @layer components {
4
+ /* Dropzone and file-item treatment. */
5
+ [data-ui-control][data-ui-control-recipe="dropzone"] {
6
+ color: inherit;
7
+ background-color: transparent;
8
+ box-shadow: 0 0 0 var(--border-width-edge-control) var(--ui-surface-edge);
9
+ }
10
+
11
+ [data-ui-control][data-ui-control-recipe="dropzone"]:is(:hover, :active):not(:focus-within):not([data-dragging]):not([data-disabled]):not([data-invalid]) {
12
+ background-color: var(--color-interaction-hover);
13
+ box-shadow: 0 0 0 var(--border-width-edge-control) var(--ui-surface-edge-hover);
14
+ }
15
+
16
+ [data-ui-control][data-ui-control-recipe="dropzone"]:is(:focus-within, [data-dragging]):not([data-disabled]):not([data-invalid]) {
17
+ background-color: var(--color-intent-accent-soft);
18
+ box-shadow:
19
+ 0 0 0 var(--border-width-edge-control) var(--color-intent-accent-edge-strong),
20
+ 0 0 0 var(--color-intent-accent-focus-width) var(--color-intent-accent-focus);
21
+ }
22
+
23
+ [data-ui-control][data-ui-control-recipe="dropzone"][data-invalid] {
24
+ box-shadow: 0 0 0 var(--border-width-edge-control) var(--color-intent-danger-edge);
25
+ }
26
+
27
+ [data-ui-control][data-ui-control-recipe="dropzone"][data-invalid]:is(:hover, :active):not(:focus-within):not([data-dragging]):not([data-disabled]) {
28
+ background-color: var(--color-interaction-hover);
29
+ box-shadow: 0 0 0 var(--border-width-edge-control) var(--color-intent-danger-edge-hover);
30
+ }
31
+
32
+ [data-ui-control][data-ui-control-recipe="dropzone"][data-invalid]:is(:focus-within, [data-dragging]):not([data-disabled]) {
33
+ background-color: var(--color-intent-accent-soft);
34
+ box-shadow:
35
+ 0 0 0 var(--border-width-edge-control) var(--color-intent-danger-edge-strong),
36
+ 0 0 0 var(--color-intent-danger-focus-width) var(--color-intent-danger-focus);
37
+ }
38
+
39
+ [data-ui-control][data-ui-control-recipe="dropzone"] [data-ui-file-upload-browse] {
40
+ color: var(--color-intent-neutral-soft-ink);
41
+ background-color: var(--color-intent-neutral-soft);
42
+ box-shadow: 0 0 0 var(--border-width-edge-control) var(--ui-surface-edge);
43
+ }
44
+
45
+ [data-ui-file-upload-item] {
46
+ color: inherit;
47
+ background-color: transparent;
48
+ box-shadow: 0 0 0 var(--border-width-edge-perimeter) var(--ui-surface-edge);
49
+ }
50
+
51
+ [data-ui-file-upload-item]:hover {
52
+ box-shadow: 0 0 0 var(--border-width-edge-perimeter) var(--ui-surface-edge-hover);
53
+ }
54
+
55
+ [data-ui-file-upload-item][data-invalid] {
56
+ background-color: var(--color-intent-danger-soft);
57
+ box-shadow: 0 0 0 var(--border-width-edge-perimeter) var(--color-intent-danger-edge);
58
+ }
59
+
60
+ [data-ui-file-upload-remove]:hover {
61
+ color: inherit;
62
+ background-color: var(--color-interaction-hover);
63
+ }
64
+
65
+ [data-ui-file-upload-remove]:focus-visible {
66
+ box-shadow: 0 0 0 var(--color-intent-accent-focus-width) var(--color-intent-accent-focus);
67
+ }
68
+ }
@@ -197,3 +197,76 @@
197
197
  }
198
198
  }
199
199
  }
200
+ @layer components {
201
+ /* Selection navigation treatment: Tabs. */
202
+ [data-ui-tabs-list] {
203
+ color: var(--ui-surface-ink);
204
+ }
205
+
206
+ [data-ui-tabs-list][data-variant="line"] {
207
+ box-shadow: inset 0 calc(var(--border-width-edge-separator) * -1) 0 var(--ui-surface-separator);
208
+ }
209
+
210
+ [data-ui-tabs-list][data-variant="line"][data-orientation="vertical"] {
211
+ box-shadow: inset var(--border-width-edge-separator) 0 0 var(--ui-surface-separator);
212
+ }
213
+
214
+ [data-ui-tabs-list][data-variant="segmented"] {
215
+ background-color: var(--color-interaction-hover);
216
+ box-shadow: inset 0 0 0 var(--border-width-edge-control) var(--ui-surface-edge);
217
+ }
218
+
219
+ [data-ui-tabs-tab] {
220
+ color: var(--ui-surface-ink-muted);
221
+ }
222
+
223
+ [data-ui-tabs-tab]:hover:not([data-disabled]) {
224
+ color: var(--ui-surface-ink);
225
+ }
226
+
227
+ [data-ui-tabs-tab][data-selected] {
228
+ color: var(--ui-surface-ink);
229
+ }
230
+
231
+ [data-ui-tabs-list]:where([data-variant="subtle"], [data-variant="pills"]) [data-ui-tabs-tab][data-selected] {
232
+ color: var(--ui-interaction-selected-ink);
233
+ }
234
+
235
+ [data-ui-tabs-tab]:focus-visible {
236
+ box-shadow: 0 0 0 var(--color-intent-accent-focus-width) var(--color-intent-accent-focus);
237
+ }
238
+
239
+ [data-ui-tabs-tab][data-disabled] {
240
+ color: var(--color-interaction-disabled-ink);
241
+ }
242
+
243
+ [data-ui-tabs-list][data-variant="subtle"] [data-ui-tabs-indicator],
244
+ [data-ui-tabs-list][data-variant="pills"] [data-ui-tabs-indicator] {
245
+ background-color: transparent;
246
+ }
247
+
248
+ [data-ui-tabs-list][data-variant="line"] [data-ui-tabs-indicator] {
249
+ background-color: var(--ui-selection-solid);
250
+ }
251
+
252
+ [data-ui-tabs-list][data-variant="segmented"] [data-ui-tabs-indicator] {
253
+ background-color: transparent;
254
+ }
255
+
256
+ [data-ui-tabs-list][data-variant="segmented"] [data-ui-tabs-indicator]::before {
257
+ position: absolute;
258
+ inset: var(--border-width-edge-control);
259
+ border-radius: inherit;
260
+ background-color: var(--ui-surface-color);
261
+ box-shadow: inset 0 0 0 var(--border-width-edge-control) var(--ui-surface-edge);
262
+ content: "";
263
+ }
264
+
265
+ [data-ui-tabs-panel] {
266
+ color: var(--ui-surface-ink);
267
+ }
268
+
269
+ [data-ui-tabs-panel]:focus-visible {
270
+ box-shadow: 0 0 0 var(--color-intent-accent-focus-width) var(--color-intent-accent-focus);
271
+ }
272
+ }
@@ -48,3 +48,126 @@
48
48
  [data-ui-toast-outlet][data-stack="collapsed"][data-stack-expanded="true"] > [data-ui-toast] {
49
49
  height: auto;
50
50
  }
51
+ @layer components {
52
+ /* Feedback surface treatment: Toast. */
53
+ [data-ui-toast-recipe] {
54
+ --ui-toast-text: var(--ui-surface-ink);
55
+ --ui-toast-soft: var(--color-intent-neutral-soft);
56
+ --ui-toast-soft-ink: var(--color-intent-neutral-soft-ink);
57
+ --ui-toast-soft-ink-muted: var(--color-intent-neutral-soft-ink-muted);
58
+ --ui-toast-solid: var(--color-intent-neutral-solid);
59
+ --ui-toast-solid-ink: var(--color-intent-neutral-solid-ink);
60
+ --ui-toast-edge: var(--ui-surface-edge);
61
+ --ui-toast-edge-strong: var(--ui-surface-edge-strong);
62
+ --ui-toast-focus: var(--color-intent-neutral-focus);
63
+ --ui-toast-focus-width: var(--color-intent-neutral-focus-width);
64
+ --ui-toast-ink: var(--ui-surface-ink);
65
+ --ui-toast-ink-muted: var(--ui-surface-ink-muted);
66
+ color: var(--ui-toast-ink);
67
+ background-color: var(--ui-surface-color);
68
+ }
69
+
70
+ [data-ui-toast-recipe][data-color="accent"] {
71
+ --ui-toast-text: var(--color-intent-accent-text);
72
+ --ui-toast-soft: var(--color-intent-accent-soft);
73
+ --ui-toast-soft-ink: var(--color-intent-accent-soft-ink);
74
+ --ui-toast-soft-ink-muted: var(--color-intent-accent-soft-ink-muted);
75
+ --ui-toast-solid: var(--color-intent-accent-solid);
76
+ --ui-toast-solid-ink: var(--color-intent-accent-solid-ink);
77
+ --ui-toast-edge: var(--color-intent-accent-edge);
78
+ --ui-toast-edge-strong: var(--color-intent-accent-edge-strong);
79
+ --ui-toast-focus: var(--color-intent-accent-focus);
80
+ --ui-toast-focus-width: var(--color-intent-accent-focus-width);
81
+ }
82
+
83
+ [data-ui-toast-recipe][data-color="success"] {
84
+ --ui-toast-text: var(--color-intent-success-text);
85
+ --ui-toast-soft: var(--color-intent-success-soft);
86
+ --ui-toast-soft-ink: var(--color-intent-success-soft-ink);
87
+ --ui-toast-soft-ink-muted: var(--color-intent-success-soft-ink-muted);
88
+ --ui-toast-solid: var(--color-intent-success-solid);
89
+ --ui-toast-solid-ink: var(--color-intent-success-solid-ink);
90
+ --ui-toast-edge: var(--color-intent-success-edge);
91
+ --ui-toast-edge-strong: var(--color-intent-success-edge-strong);
92
+ --ui-toast-focus: var(--color-intent-success-focus);
93
+ --ui-toast-focus-width: var(--color-intent-success-focus-width);
94
+ }
95
+
96
+ [data-ui-toast-recipe][data-color="warning"] {
97
+ --ui-toast-text: var(--color-intent-warning-text);
98
+ --ui-toast-soft: var(--color-intent-warning-soft);
99
+ --ui-toast-soft-ink: var(--color-intent-warning-soft-ink);
100
+ --ui-toast-soft-ink-muted: var(--color-intent-warning-soft-ink-muted);
101
+ --ui-toast-solid: var(--color-intent-warning-solid);
102
+ --ui-toast-solid-ink: var(--color-intent-warning-solid-ink);
103
+ --ui-toast-edge: var(--color-intent-warning-edge);
104
+ --ui-toast-edge-strong: var(--color-intent-warning-edge-strong);
105
+ --ui-toast-focus: var(--color-intent-warning-focus);
106
+ --ui-toast-focus-width: var(--color-intent-warning-focus-width);
107
+ }
108
+
109
+ [data-ui-toast-recipe][data-color="danger"] {
110
+ --ui-toast-text: var(--color-intent-danger-text);
111
+ --ui-toast-soft: var(--color-intent-danger-soft);
112
+ --ui-toast-soft-ink: var(--color-intent-danger-soft-ink);
113
+ --ui-toast-soft-ink-muted: var(--color-intent-danger-soft-ink-muted);
114
+ --ui-toast-solid: var(--color-intent-danger-solid);
115
+ --ui-toast-solid-ink: var(--color-intent-danger-solid-ink);
116
+ --ui-toast-edge: var(--color-intent-danger-edge);
117
+ --ui-toast-edge-strong: var(--color-intent-danger-edge-strong);
118
+ --ui-toast-focus: var(--color-intent-danger-focus);
119
+ --ui-toast-focus-width: var(--color-intent-danger-focus-width);
120
+ }
121
+
122
+ [data-ui-toast-recipe][data-variant="soft"] {
123
+ --ui-toast-ink: var(--ui-toast-soft-ink);
124
+ --ui-toast-ink-muted: var(--ui-toast-soft-ink-muted);
125
+ color: var(--ui-toast-ink);
126
+ background-color: var(--ui-toast-soft);
127
+ }
128
+
129
+ [data-ui-toast-recipe][data-variant="surface"] {
130
+ --ui-state-shadow-layers: 0 0 0 var(--border-width-edge-perimeter) var(--ui-toast-edge);
131
+ }
132
+
133
+ [data-ui-toast-recipe][data-variant="outline"] {
134
+ --ui-toast-ink: var(--ui-toast-text);
135
+ --ui-toast-ink-muted: var(--ui-toast-text);
136
+ --ui-state-shadow-layers: 0 0 0 var(--border-width-edge-perimeter) var(--ui-toast-edge-strong);
137
+ color: var(--ui-toast-ink);
138
+ background-color: transparent;
139
+ }
140
+
141
+ [data-ui-toast-recipe][data-variant="solid"] {
142
+ --ui-toast-ink: var(--ui-toast-solid-ink);
143
+ --ui-toast-ink-muted: var(--ui-toast-solid-ink);
144
+ color: var(--ui-toast-ink);
145
+ background-color: var(--ui-toast-solid);
146
+ }
147
+
148
+ [data-ui-toast-marker] {
149
+ background-color: var(--ui-toast-solid);
150
+ }
151
+
152
+ [data-ui-toast-title] {
153
+ color: var(--ui-toast-ink);
154
+ }
155
+
156
+ [data-ui-toast-description] {
157
+ color: var(--ui-toast-ink-muted);
158
+ }
159
+
160
+ [data-ui-toast-close] {
161
+ color: var(--ui-toast-ink-muted);
162
+ }
163
+
164
+ [data-ui-toast-close]:hover {
165
+ color: var(--ui-toast-ink);
166
+ background-color: color-mix(in srgb, currentColor 10%, transparent);
167
+ }
168
+
169
+ [data-ui-toast-close]:focus-visible {
170
+ color: var(--ui-toast-ink);
171
+ box-shadow: 0 0 0 var(--ui-toast-focus-width) var(--ui-toast-focus);
172
+ }
173
+ }
@@ -10,16 +10,26 @@
10
10
  @import "../components/app/styles.css";
11
11
  @import "../components/scroll-area/styles.css";
12
12
  @import "../components/select/styles.css";
13
- @import "../components/field/styles.css";
14
13
  @import "../components/radio/styles.css";
15
14
  @import "../components/checkbox/styles.css";
16
15
  @import "../components/date-picker/styles.css";
17
- @import "../components/file-upload/styles.css";
18
16
  @import "../components/button/styles.css";
19
17
  @import "../components/accordion/styles.css";
20
- @import "../components/toast/styles.css";
21
18
  @import "../components/input/styles.css";
22
19
  @import "../components/sidebar/styles.css";
23
20
  @import "../components/panels/styles.css";
24
- @import "../components/tabs/styles.css";
25
21
  @import "../directives/sortable.css";
22
+
23
+ /*
24
+ Treatment recipes are ordered from shared state and action foundations through
25
+ component-specific surfaces and controls. Keep this order stable: every file
26
+ participates in the same components layer in the compiled stylesheet.
27
+ */
28
+ @import "./recipes/disabled.css";
29
+ @import "./recipes/action.css";
30
+ @import "../components/toast/styles.css";
31
+ @import "../components/tabs/styles.css";
32
+ @import "./recipes/option.css";
33
+ @import "../components/field/styles.css";
34
+ @import "../components/file-upload/styles.css";
35
+ @import "./recipes/selection.css";
@@ -1,5 +1,5 @@
1
1
  /* Generated by packages/theme-engine/scripts/generate-default-css.mjs. */
2
- /* Theme fa53e5e7500664ca; CSS 9bd56c40eb5861dd. */
2
+ /* Theme df3d56b092a0a62a; CSS 9bd56c40eb5861dd. */
3
3
  @import url("https://fonts.bunny.net/css?family=inter:400,500,600,700&display=swap");
4
4
 
5
5
  @import url("https://fonts.bunny.net/css?family=fira-code:400,500,600,700&display=swap");