@infonomic/uikit 2.15.0 → 3.1.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 (74) hide show
  1. package/README.md +48 -6
  2. package/dist/components/badge/badge_module.css +49 -80
  3. package/dist/components/button/button_module.css +133 -227
  4. package/dist/components/button/control-buttons_module.css +2 -11
  5. package/dist/components/button/copy-button.d.ts.map +1 -1
  6. package/dist/components/button/copy-button.js +14 -7
  7. package/dist/components/button/copy-button.module.js +5 -5
  8. package/dist/components/button/copy-button_module.css +31 -12
  9. package/dist/components/dropdown/dropdown_module.css +8 -13
  10. package/dist/components/input/checkbox_module.css +42 -91
  11. package/dist/components/input/help-text_module.css +1 -5
  12. package/dist/components/input/input_module.css +42 -109
  13. package/dist/components/input/radio-group_module.css +14 -49
  14. package/dist/components/input/select_module.css +10 -17
  15. package/dist/components/notifications/alert_module.css +0 -4
  16. package/dist/components/pager/pagination_module.css +7 -18
  17. package/dist/components/scroll-area/scroll-area_module.css +4 -20
  18. package/dist/components/tooltip/tooltip_module.css +4 -14
  19. package/dist/icons/close-icon.js +1 -1
  20. package/dist/icons/copy-icon.d.ts.map +1 -1
  21. package/dist/icons/copy-icon.js +1 -1
  22. package/dist/react.d.ts +1 -1
  23. package/dist/react.d.ts.map +1 -1
  24. package/dist/react.js +1 -1
  25. package/dist/styles/styles.css +1 -1
  26. package/dist/widgets/datepicker/datepicker_module.css +2 -2
  27. package/dist/widgets/drawer/drawer_module.css +1 -5
  28. package/dist/widgets/modal/modal_module.css +1 -5
  29. package/dist/widgets/timeline/timeline.d.ts.map +1 -0
  30. package/dist/widgets/timeline/timeline.module.js +17 -0
  31. package/dist/{components → widgets}/timeline/timeline_module.css +10 -10
  32. package/package.json +8 -8
  33. package/src/components/badge/badge.module.css +38 -68
  34. package/src/components/button/button-intents.stories.tsx +1 -1
  35. package/src/components/button/button-overrides.stories.tsx +43 -0
  36. package/src/components/button/button-variants.stories.tsx +1 -1
  37. package/src/components/button/button.module.css +135 -230
  38. package/src/components/button/control-buttons.module.css +5 -17
  39. package/src/components/button/control-buttons.stories.tsx +1 -1
  40. package/src/components/button/copy-button.module.css +32 -14
  41. package/src/components/button/copy-button.stories.tsx +6 -6
  42. package/src/components/button/copy-button.tsx +16 -12
  43. package/src/components/calendar/calendar.stories.tsx +1 -1
  44. package/src/components/dropdown/dropdown.module.css +9 -24
  45. package/src/components/input/checkbox.module.css +43 -99
  46. package/src/components/input/help-text.module.css +1 -12
  47. package/src/components/input/input.module.css +44 -119
  48. package/src/components/input/input.stories.tsx +1 -1
  49. package/src/components/input/radio-group.module.css +16 -72
  50. package/src/components/input/radio-group.stories.tsx +1 -1
  51. package/src/components/input/select.module.css +10 -17
  52. package/src/components/input/select.stories.tsx +1 -1
  53. package/src/components/notifications/alert.module.css +0 -4
  54. package/src/components/pager/pagination.module.css +7 -23
  55. package/src/components/scroll-area/scroll-area.module.css +4 -20
  56. package/src/components/tooltip/tooltip.module.css +6 -16
  57. package/src/icons/close-icon.tsx +1 -1
  58. package/src/icons/copy-icon.tsx +1 -2
  59. package/src/icons/icons.module.css +1 -0
  60. package/src/react.ts +1 -1
  61. package/src/styles/theme/theme.css +6 -4
  62. package/src/styles/theme/tokens.css +670 -0
  63. package/src/widgets/datepicker/datepicker.module.css +2 -2
  64. package/src/widgets/drawer/drawer.module.css +1 -5
  65. package/src/widgets/drawer/drawer.stories.tsx +1 -34
  66. package/src/widgets/modal/modal.module.css +1 -5
  67. package/src/{components → widgets}/timeline/timeline.stories.tsx +2 -2
  68. package/dist/components/timeline/timeline.d.ts.map +0 -1
  69. package/dist/components/timeline/timeline.module.js +0 -17
  70. /package/dist/{components → widgets}/timeline/timeline.d.ts +0 -0
  71. /package/dist/{components → widgets}/timeline/timeline.js +0 -0
  72. /package/src/components/button/{button-icon.stories.tsx → icon-button.stories.tsx} +0 -0
  73. /package/src/{components → widgets}/timeline/timeline.module.css +0 -0
  74. /package/src/{components → widgets}/timeline/timeline.tsx +0 -0
@@ -91,8 +91,8 @@
91
91
 
92
92
  .filled:disabled,
93
93
  .filled[disabled] {
94
- background-color: oklch(from var(--button-variant-filled) calc(l * 1.1) calc(c * 0.85) h);
95
- color: oklch(from var(--button-variant-filled-foreground) calc(l * 0.9) calc(c * 0.85) h);
94
+ background-color: var(--button-variant-filled-disabled, oklch(from var(--button-variant-filled) calc(l * 1.1) calc(c * 0.85) h));
95
+ color: var(--button-variant-filled-foreground-disabled, oklch(from var(--button-variant-filled-foreground) calc(l * 0.9) calc(c * 0.85) h));
96
96
  }
97
97
 
98
98
  .outlined {
@@ -103,8 +103,8 @@
103
103
 
104
104
  .outlined:disabled,
105
105
  .outlined[disabled] {
106
- border-color: oklch(from var(--button-variant-outlined-border) calc(l * 1.5) calc(c * 0.8) h);
107
- color: oklch(from var(--button-variant-outlined-foreground) calc(l * 1.1) calc(c * 0.7) h);
106
+ border-color: var(--button-variant-outlined-border-disabled, oklch(from var(--button-variant-outlined-border) calc(l * 1.5) calc(c * 0.8) h));
107
+ color: var(--button-variant-outlined-foreground-disabled, oklch(from var(--button-variant-outlined-foreground) calc(l * 1.1) calc(c * 0.7) h));
108
108
  }
109
109
 
110
110
  .outlined:hover {
@@ -126,8 +126,8 @@
126
126
  .gradient:disabled,
127
127
  .gradient[disabled] {
128
128
  background: unset;
129
- background-color: oklch(from var(--button-variant-gradient-end) calc(l * 1.2) calc(c * 0.85) h);
130
- color: oklch(from var(--button-variant-gradient-foreground) calc(l * 0.9) calc(c * 0.85) h);
129
+ background-color: var(--button-variant-gradient-disabled, oklch(from var(--button-variant-gradient-end) calc(l * 1.2) calc(c * 0.85) h));
130
+ color: var(--button-variant-gradient-foreground-disabled, oklch(from var(--button-variant-gradient-foreground) calc(l * 0.9) calc(c * 0.85) h));
131
131
  }
132
132
 
133
133
  .gradient:hover {
@@ -163,220 +163,255 @@
163
163
 
164
164
  /* Intents */
165
165
  .primary {
166
- --button: var(--primary-600);
167
- --button-ring-color: var(--button);
166
+ --button-ring-color: var(--ring-primary);
168
167
  }
169
168
 
170
169
  .primary.filled {
171
- --button-variant-filled: var(--button);
172
- --button-variant-filled-foreground: white;
173
- --button-variant-filled-hover: oklch(from var(--button) calc(l * 0.9) c h);
170
+ --button-variant-filled: var(--fill-primary-strong);
171
+ --button-variant-filled-foreground: var(--text-on-primary);
172
+ --button-variant-filled-hover: var(--fill-primary-strong-hover);
173
+ --button-variant-filled-disabled: var(--fill-primary-strong-disabled);
174
+ --button-variant-filled-foreground-disabled: var(--text-on-primary-disabled);
174
175
  }
175
176
 
176
177
  .primary.outlined {
177
178
  --button-variant-outlined: transparent;
178
- --button-variant-outlined-foreground: var(--primary-700);
179
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 2.15) calc(c * 0.2) h);
180
- --button-variant-outlined-border: var(--primary-700);
179
+ --button-variant-outlined-foreground: var(--text-primary-strong);
180
+ --button-variant-outlined-hover: var(--fill-primary-weak);
181
+ --button-variant-outlined-border: var(--stroke-primary);
182
+ --button-variant-outlined-border-disabled: var(--stroke-primary-disabled);
183
+ --button-variant-outlined-foreground-disabled: var(--text-primary-disabled);
181
184
  }
182
185
 
183
186
  .primary.text {
184
187
  --button-variant-text: transparent;
185
- --button-variant-text-foreground: oklch(from var(--button) calc(l * 0.7) c h);
186
- --button-variant-text-hover: oklch(from var(--canvas-50) calc(l * 0.995) c h);
188
+ --button-variant-text-foreground: var(--text-primary-weak);
189
+ --button-variant-text-hover: var(--fill-primary-weak-hover);
187
190
  }
188
191
 
189
192
  .primary.gradient {
190
- --button-variant-gradient-start: var(--primary-500);
191
- --button-variant-gradient-end: var(--primary-700);
192
- --button-variant-gradient-foreground: white;
193
+ --button-variant-gradient-start: var(--gradient-primary-start);
194
+ --button-variant-gradient-end: var(--gradient-primary-end);
195
+ --button-variant-gradient-foreground: var(--gradient-primary-foreground);
193
196
  --button-variant-gradient-hover: var(--gray-900);
197
+ --button-variant-gradient-disabled: var(--gradient-primary-disabled);
198
+ --button-variant-gradient-foreground-disabled: var(--text-on-primary-disabled);
194
199
  }
195
200
 
196
201
  .secondary {
197
- --button: var(--secondary-500);
198
- --button-ring-color: var(--button);
202
+ --button-ring-color: var(--ring-secondary);
199
203
  }
200
204
 
201
205
  .secondary.filled {
202
- --button-variant-filled: var(--button);
203
- --button-variant-filled-foreground: black;
204
- --button-variant-filled-hover: oklch(from var(--button) calc(l * 0.95) c h);
206
+ --button-variant-filled: var(--fill-secondary-strong);
207
+ --button-variant-filled-foreground: var(--text-on-secondary);
208
+ --button-variant-filled-hover: var(--fill-secondary-strong-hover);
209
+ --button-variant-filled-disabled: var(--fill-secondary-strong-disabled);
210
+ --button-variant-filled-foreground-disabled: var(--text-on-secondary-disabled);
205
211
  }
206
212
 
207
213
  .secondary.outlined {
208
214
  --button-variant-outlined: transparent;
209
- --button-variant-outlined-foreground: var(--secondary-950);
210
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 1.6) calc(c * 0.2) h);
211
- --button-variant-outlined-border: var(--secondary-700);
215
+ --button-variant-outlined-foreground: var(--text-secondary-strong);
216
+ --button-variant-outlined-hover: var(--fill-secondary-weak);
217
+ --button-variant-outlined-border: var(--stroke-secondary);
218
+ --button-variant-outlined-border-disabled: var(--stroke-secondary-disabled);
219
+ --button-variant-outlined-foreground-disabled: var(--text-secondary-disabled);
212
220
  }
213
221
 
214
222
  .secondary.text {
215
223
  --button-variant-text: transparent;
216
- --button-variant-text-foreground: oklch(from var(--button) calc(l * 0.7) c h);
217
- --button-variant-text-hover: oklch(from var(--canvas-50) calc(l * 0.995) c h);
224
+ --button-variant-text-foreground: var(--text-secondary-weak);
225
+ --button-variant-text-hover: var(--fill-secondary-weak-hover);
218
226
  }
219
227
 
220
228
  .secondary.gradient {
221
- --button-variant-gradient-start: var(--secondary-500);
222
- --button-variant-gradient-end: var(--secondary-700);
223
- --button-variant-gradient-foreground: black;
229
+ --button-variant-gradient-start: var(--gradient-secondary-start);
230
+ --button-variant-gradient-end: var(--gradient-secondary-end);
231
+ --button-variant-gradient-foreground: var(--gradient-secondary-foreground);
224
232
  --button-variant-gradient-hover: var(--gray-900);
233
+ --button-variant-gradient-disabled: var(--gradient-secondary-disabled);
234
+ --button-variant-gradient-foreground-disabled: var(--text-on-secondary-disabled);
225
235
  }
226
236
 
227
237
  .noeffect {
228
- --button: var(--gray-100);
229
- --button-ring-color: var(--gray-200);
238
+ --button-ring-color: var(--ring-noeffect);
230
239
  }
231
240
 
232
241
  .noeffect.filled {
233
- --button-variant-filled: var(--button);
234
- --button-variant-filled-foreground: black;
235
- --button-variant-filled-hover: oklch(from var(--button) calc(l * 0.95) c h);
242
+ --button-variant-filled: var(--fill-noeffect-strong);
243
+ --button-variant-filled-foreground: var(--text-on-noeffect);
244
+ --button-variant-filled-hover: var(--fill-noeffect-strong-hover);
245
+ --button-variant-filled-disabled: var(--fill-noeffect-strong-disabled);
246
+ --button-variant-filled-foreground-disabled: var(--text-on-noeffect-disabled);
236
247
  }
237
248
 
238
249
  .noeffect.outlined {
239
250
  --button-variant-outlined: transparent;
240
- --button-variant-outlined-foreground: var(--gray-800);
241
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 2.9) calc(c * 0.2) h);
242
- --button-variant-outlined-border: var(--gray-500);
251
+ --button-variant-outlined-foreground: var(--text-noeffect-strong);
252
+ --button-variant-outlined-hover: var(--fill-noeffect-weak);
253
+ --button-variant-outlined-border: var(--stroke-noeffect);
254
+ --button-variant-outlined-border-disabled: var(--stroke-noeffect-disabled);
255
+ --button-variant-outlined-foreground-disabled: var(--text-noeffect-disabled);
243
256
  }
244
257
 
245
258
  .noeffect.text {
246
259
  --button-variant-text: transparent;
247
- --button-variant-text-foreground: oklch(from var(--button) calc(l * 0.5) c h);
248
- --button-variant-text-hover: oklch(from var(--canvas-50) calc(l * 0.995) c h);
260
+ --button-variant-text-foreground: var(--text-noeffect-weak);
261
+ --button-variant-text-hover: var(--fill-noeffect-weak-hover);
249
262
  }
250
263
 
251
264
  .noeffect.gradient {
252
- --button-variant-gradient-start: var(--gray-100);
253
- --button-variant-gradient-end: var(--gray-200);
254
- --button-variant-gradient-foreground: black;
255
- --button-variant-gradient-hover: var(--gray-400);
265
+ --button-variant-gradient-start: var(--gradient-noeffect-start);
266
+ --button-variant-gradient-end: var(--gradient-noeffect-end);
267
+ --button-variant-gradient-foreground: var(--gradient-noeffect-foreground);
268
+ --button-variant-gradient-hover: var(--gradient-noeffect-hover);
269
+ --button-variant-gradient-disabled: var(--gradient-noeffect-disabled);
270
+ --button-variant-gradient-foreground-disabled: var(--text-on-noeffect-disabled);
256
271
  }
257
272
 
258
273
  .success {
259
- --button: var(--green-400);
260
- --button-ring-color: var(--button);
274
+ --button-ring-color: var(--ring-success);
261
275
  }
262
276
 
263
277
  .success.filled {
264
- --button-variant-filled: var(--button);
265
- --button-variant-filled-foreground: white;
266
- --button-variant-filled-hover: oklch(from var(--button) calc(l * 0.9) c h);
278
+ --button-variant-filled: var(--fill-success-strong);
279
+ --button-variant-filled-foreground: var(--text-on-success);
280
+ --button-variant-filled-hover: var(--fill-success-strong-hover);
281
+ --button-variant-filled-disabled: var(--fill-success-strong-disabled);
282
+ --button-variant-filled-foreground-disabled: var(--text-on-success-disabled);
267
283
  }
268
284
 
269
285
  .success.outlined {
270
286
  --button-variant-outlined: transparent;
271
- --button-variant-outlined-foreground: var(--green-600);
272
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 1.6) calc(c * 0.2) h);
273
- --button-variant-outlined-border: var(--green-600);
287
+ --button-variant-outlined-foreground: var(--text-success-strong);
288
+ --button-variant-outlined-hover: var(--fill-success-weak);
289
+ --button-variant-outlined-border: var(--stroke-success);
290
+ --button-variant-outlined-border-disabled: var(--stroke-success-disabled);
291
+ --button-variant-outlined-foreground-disabled: var(--text-success-disabled);
274
292
  }
275
293
 
276
294
  .success.text {
277
295
  --button-variant-text: transparent;
278
- --button-variant-text-foreground: oklch(from var(--button) calc(l * 0.7) c h);
279
- --button-variant-text-hover: oklch(from var(--canvas-50) calc(l * 0.995) c h);
296
+ --button-variant-text-foreground: var(--text-success-weak);
297
+ --button-variant-text-hover: var(--fill-success-weak-hover);
280
298
  }
281
299
 
282
300
  .success.gradient {
283
- --button-variant-gradient-start: var(--green-500);
284
- --button-variant-gradient-end: var(--green-700);
285
- --button-variant-gradient-foreground: white;
301
+ --button-variant-gradient-start: var(--gradient-success-start);
302
+ --button-variant-gradient-end: var(--gradient-success-end);
303
+ --button-variant-gradient-foreground: var(--gradient-success-foreground);
286
304
  --button-variant-gradient-hover: var(--gray-900);
305
+ --button-variant-gradient-disabled: var(--gradient-success-disabled);
306
+ --button-variant-gradient-foreground-disabled: var(--text-on-success-disabled);
287
307
  }
288
308
 
289
309
  .info {
290
- --button: var(--blue-400);
291
- --button-ring-color: var(--button);
310
+ --button-ring-color: var(--ring-info);
292
311
  }
293
312
 
294
313
  .info.filled {
295
- --button-variant-filled: var(--button);
296
- --button-variant-filled-foreground: white;
297
- --button-variant-filled-hover: oklch(from var(--button) calc(l * 0.9) c h);
314
+ --button-variant-filled: var(--fill-info-strong);
315
+ --button-variant-filled-foreground: var(--text-on-info);
316
+ --button-variant-filled-hover: var(--fill-info-strong-hover);
317
+ --button-variant-filled-disabled: var(--fill-info-strong-disabled);
318
+ --button-variant-filled-foreground-disabled: var(--text-on-info-disabled);
298
319
  }
299
320
 
300
321
  .info.outlined {
301
322
  --button-variant-outlined: transparent;
302
- --button-variant-outlined-foreground: var(--blue-300);
303
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 1.9) calc(c * 0.2) h);
304
- --button-variant-outlined-border: var(--blue-500);
323
+ --button-variant-outlined-foreground: var(--text-info-strong);
324
+ --button-variant-outlined-hover: var(--fill-info-weak);
325
+ --button-variant-outlined-border: var(--stroke-info);
326
+ --button-variant-outlined-border-disabled: var(--stroke-info-disabled);
327
+ --button-variant-outlined-foreground-disabled: var(--text-info-disabled);
305
328
  }
306
329
 
307
330
  .info.text {
308
331
  --button-variant-text: transparent;
309
- --button-variant-text-foreground: oklch(from var(--button) calc(l * 0.7) c h);
310
- --button-variant-text-hover: oklch(from var(--canvas-50) calc(l * 0.995) c h);
332
+ --button-variant-text-foreground: var(--text-info-weak);
333
+ --button-variant-text-hover: var(--fill-info-weak-hover);
311
334
  }
312
335
 
313
336
  .info.gradient {
314
- --button-variant-gradient-start: var(--blue-500);
315
- --button-variant-gradient-end: var(--blue-700);
316
- --button-variant-gradient-foreground: white;
337
+ --button-variant-gradient-start: var(--gradient-info-start);
338
+ --button-variant-gradient-end: var(--gradient-info-end);
339
+ --button-variant-gradient-foreground: var(--gradient-info-foreground);
317
340
  --button-variant-gradient-hover: var(--gray-900);
341
+ --button-variant-gradient-disabled: var(--gradient-info-disabled);
342
+ --button-variant-gradient-foreground-disabled: var(--text-on-info-disabled);
318
343
  }
319
344
 
320
345
  .warning {
321
- --button: var(--yellow-300);
322
- --button-ring-color: var(--button);
346
+ --button-ring-color: var(--ring-warning);
323
347
  }
324
348
 
325
349
  .warning.filled {
326
- --button-variant-filled: var(--button);
327
- --button-variant-filled-foreground: black;
328
- --button-variant-filled-hover: oklch(from var(--button) calc(l * 0.95) c h);
350
+ --button-variant-filled: var(--fill-warning-strong);
351
+ --button-variant-filled-foreground: var(--text-on-warning);
352
+ --button-variant-filled-hover: var(--fill-warning-strong-hover);
353
+ --button-variant-filled-disabled: var(--fill-warning-strong-disabled);
354
+ --button-variant-filled-foreground-disabled: var(--text-on-warning-disabled);
329
355
  }
330
356
 
331
357
  .warning.outlined {
332
358
  --button-variant-outlined: transparent;
333
- --button-variant-outlined-foreground: var(--yellow-700);
334
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 1.9) calc(c * 0.2) h);
335
- --button-variant-outlined-border: var(--yellow-500);
359
+ --button-variant-outlined-foreground: var(--text-warning-strong);
360
+ --button-variant-outlined-hover: var(--fill-warning-weak);
361
+ --button-variant-outlined-border: var(--stroke-warning);
362
+ --button-variant-outlined-border-disabled: var(--stroke-warning-disabled);
363
+ --button-variant-outlined-foreground-disabled: var(--text-warning-disabled);
336
364
  }
337
365
 
338
366
  .warning.text {
339
367
  --button-variant-text: transparent;
340
- --button-variant-text-foreground: oklch(from var(--button) calc(l * 0.6) c h);
341
- --button-variant-text-hover: oklch(from var(--canvas-50) calc(l * 0.995) c h);
368
+ --button-variant-text-foreground: var(--text-warning-weak);
369
+ --button-variant-text-hover: var(--fill-warning-weak-hover);
342
370
  }
343
371
 
344
372
  .warning.gradient {
345
- --button-variant-gradient-start: var(--yellow-300);
346
- --button-variant-gradient-end: var(--yellow-400);
347
- --button-variant-gradient-foreground: black;
373
+ --button-variant-gradient-start: var(--gradient-warning-start);
374
+ --button-variant-gradient-end: var(--gradient-warning-end);
375
+ --button-variant-gradient-foreground: var(--gradient-warning-foreground);
348
376
  --button-variant-gradient-hover: var(--gray-900);
377
+ --button-variant-gradient-disabled: var(--gradient-warning-disabled);
378
+ --button-variant-gradient-foreground-disabled: var(--text-on-warning-disabled);
349
379
  }
350
380
 
351
381
  .danger {
352
- --button: var(--red-400);
353
- --button-ring-color: var(--button);
382
+ --button-ring-color: var(--ring-danger);
354
383
  }
355
384
 
356
385
  .danger.filled {
357
- --button-variant-filled: var(--button);
358
- --button-variant-filled-foreground: white;
359
- --button-variant-filled-hover: oklch(from var(--button) calc(l * 0.9) c h);
386
+ --button-variant-filled: var(--fill-danger-strong);
387
+ --button-variant-filled-foreground: var(--text-on-danger);
388
+ --button-variant-filled-hover: var(--fill-danger-strong-hover);
389
+ --button-variant-filled-disabled: var(--fill-danger-strong-disabled);
390
+ --button-variant-filled-foreground-disabled: var(--text-on-danger-disabled);
360
391
  }
361
392
 
362
393
  .danger.outlined {
363
394
  --button-variant-outlined: transparent;
364
- --button-variant-outlined-foreground: var(--red-500);
365
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 1.8) calc(c * 0.3) h);
366
- --button-variant-outlined-border: var(--red-500);
395
+ --button-variant-outlined-foreground: var(--text-danger-strong);
396
+ --button-variant-outlined-hover: var(--fill-danger-weak);
397
+ --button-variant-outlined-border: var(--stroke-danger);
398
+ --button-variant-outlined-border-disabled: var(--stroke-danger-disabled);
399
+ --button-variant-outlined-foreground-disabled: var(--text-danger-disabled);
367
400
  }
368
401
 
369
402
  .danger.text {
370
403
  --button-variant-text: transparent;
371
- --button-variant-text-foreground: oklch(from var(--button) calc(l * 0.7) c h);
372
- --button-variant-text-hover: oklch(from var(--canvas-50) calc(l * 0.995) c h);
404
+ --button-variant-text-foreground: var(--text-danger-weak);
405
+ --button-variant-text-hover: var(--fill-danger-weak-hover);
373
406
  }
374
407
 
375
408
  .danger.gradient {
376
- --button-variant-gradient-start: var(--red-500);
377
- --button-variant-gradient-end: var(--red-700);
378
- --button-variant-gradient-foreground: white;
409
+ --button-variant-gradient-start: var(--gradient-danger-start);
410
+ --button-variant-gradient-end: var(--gradient-danger-end);
411
+ --button-variant-gradient-foreground: var(--gradient-danger-foreground);
379
412
  --button-variant-gradient-hover: var(--gray-900);
413
+ --button-variant-gradient-disabled: var(--gradient-danger-disabled);
414
+ --button-variant-gradient-foreground-disabled: var(--text-on-danger-disabled);
380
415
  }
381
416
 
382
417
  /* Full width */
@@ -397,137 +432,7 @@
397
432
  --ring-offset-color: var(--background);
398
433
  }
399
434
 
400
- .primary:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
401
- --button: var(--primary-600);
402
- --button-ring-color: var(--button);
403
- }
404
-
405
- .primary.filled:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
406
- --button-variant-filled: var(--button);
407
- --button-variant-filled-foreground: white;
408
- --button-variant-filled-hover: oklch(from var(--button) calc(l * 0.9) c h);
409
- }
410
-
411
- .primary.outlined:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
412
- --button-variant-outlined-foreground: var(--primary-100);
413
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 0.45) calc(c * 0.1) h);
414
- --button-variant-outlined-border: var(--primary-500);
415
- }
416
-
417
- .primary.text:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
418
- --button-variant-text: transparent;
419
- --button-variant-text-foreground: var(--button);
420
- --button-variant-text-hover: var(--canvas-800);
421
- }
422
-
423
- .secondary.outlined:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
424
- --button-variant-outlined-foreground: var(--secondary-500);
425
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 0.3) calc(c * 0.1) h);
426
- --button-variant-outlined-border: var(--secondary-500);
427
- }
428
-
429
- .secondary.text:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
430
- --button-variant-text-foreground: var(--button);
431
- --button-variant-text-hover: var(--canvas-800);
432
- }
433
-
434
- .noeffect:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
435
- --button: var(--gray-900);
436
- --button-ring-color: var(--gray-900);
437
- }
438
-
439
- .noeffect.filled:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
440
- --button-variant-filled: var(--button);
441
- --button-variant-filled-foreground: white;
442
- --button-variant-filled-hover: oklch(from var(--button) calc(l * 0.95) c h);
443
- }
444
-
445
- .noeffect.outlined:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
446
- --button-variant-outlined: transparent;
447
- --button-variant-outlined-foreground: var(--gray-300);
448
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 0.75) calc(c * 0.2) h);
449
- --button-variant-outlined-border: var(--gray-500);
450
- }
451
-
452
- .noeffect.text:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
453
- --button-variant-text: transparent;
454
- --button-variant-text-foreground: var(--gray-300);
455
- --button-variant-text-hover: var(--canvas-800);
456
- }
457
-
458
- .noeffect.gradient:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
459
- --button-variant-gradient-start: var(--gray-950);
460
- --button-variant-gradient-end: var(--gray-900);
461
- --button-variant-gradient-foreground: white;
462
- --button-variant-gradient-hover: var(--gray-900);
463
- }
464
-
465
- .success.outlined:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
466
- --button-variant-outlined-foreground: var(--green-500);
467
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 0.35) calc(c * 0.1) h);
468
- --button-variant-outlined-border: var(--green-500);
469
- }
470
-
471
- .success.text:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
472
- --button-variant-text-foreground: var(--button);
473
- --button-variant-text-hover: var(--canvas-800);
474
- }
475
-
476
- .info.outlined:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
477
- --button-variant-outlined-foreground: var(--blue-300);
478
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 0.43) calc(c * 0.1) h);
479
- --button-variant-outlined-border: var(--blue-500);
480
- }
481
-
482
- .info.text:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
483
- --button-variant-text-foreground: var(--button);
484
- --button-variant-text-hover: var(--canvas-800);
485
- }
486
-
487
- .warning.outlined:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
488
- --button-variant-outlined-foreground: var(--yellow-500);
489
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 0.31) calc(c * 0.1) h);
490
- --button-variant-outlined-border: var(--yellow-500);
491
- }
492
-
493
- .warning.text:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
494
- --button-variant-text-foreground: var(--button);
495
- --button-variant-text-hover: var(--canvas-800);
496
- }
497
-
498
- .danger.outlined:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
499
- --button-variant-outlined-foreground: var(--red-500);
500
- --button-variant-outlined-hover: oklch(from var(--button) calc(l * 0.4) calc(c * 0.1) h);
501
- --button-variant-outlined-border: var(--red-500);
502
- }
503
-
504
- .danger.text:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
505
- --button-variant-text-foreground: var(--button);
506
- --button-variant-text-hover: var(--canvas-800);
507
- }
508
-
509
- .filled:disabled:not(:where([class~="not-dark"], [class~="not-dark"] *)),
510
- .filled[disabled]:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
511
- background-color: oklch(from var(--button-variant-filled) calc(l * 0.85) calc(c * 0.85) h);
512
- color: oklch(from var(--button-variant-filled-foreground) calc(l * 0.85) calc(c * 0.85) h);
513
- }
514
-
515
- .outlined:disabled:not(:where([class~="not-dark"], [class~="not-dark"] *)),
516
- .outlined[disabled]:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
517
- border-color: oklch(from var(--button-variant-outlined-border) calc(l * 0.8) calc(c * 0.8) h);
518
- color: oklch(from var(--button-variant-outlined-foreground) calc(l * 0.8) calc(c * 0.8) h);
519
- }
520
-
521
- .gradient:disabled:not(:where([class~="not-dark"], [class~="not-dark"] *)),
522
- .gradient[disabled]:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
523
- background: unset;
524
- background-color: oklch(from var(--button-variant-gradient-end) calc(l * 0.85) calc(c * 0.85) h);
525
- color: oklch(from var(--button-variant-gradient-foreground) calc(l * 0.85) calc(c * 0.85) h);
526
- }
527
-
528
- .text:disabled:not(:where([class~="not-dark"], [class~="not-dark"] *)),
529
- .text[disabled]:not(:where([class~="not-dark"], [class~="not-dark"] *)) {
530
- color: oklch(from var(--button-variant-text-foreground) calc(l * 0.85) calc(c * 0.85) h);
531
- }
435
+ /* ALL INTENTS - Now handled by semantic tokens in theme layer */
436
+ /* No overrides needed! Tokens automatically switch in .dark and respect .not-dark */
532
437
  }
533
438
  }
@@ -15,7 +15,7 @@
15
15
  margin: 0;
16
16
  outline: none;
17
17
  color: white;
18
- background-color: var(--primary-500);
18
+ background-color: var(--fill-primary-strong);
19
19
  transition-property: all, color;
20
20
  transition-duration: 0.3s, 1ms;
21
21
  transition-timing-function: cubic-bezier(0.25, 0.8, 0.5, 1), ease;
@@ -50,7 +50,7 @@
50
50
  .directional-button:hover,
51
51
  .directional-button:focus {
52
52
  color: white;
53
- background-color: var(--primary-600);
53
+ background-color: var(--fill-primary-strong-hover);
54
54
  transform: translateY(-5px);
55
55
  }
56
56
 
@@ -126,19 +126,7 @@
126
126
  transform: translateX(5px);
127
127
  }
128
128
 
129
- :global(.dark) .play-button,
130
- :global(.dark) .stop-button,
131
- :global(.dark) .directional-button {
132
- background-color: var(--primary-500);
133
- }
134
-
135
- :global(.dark) .play-button:hover,
136
- :global(.dark) .stop-button:hover,
137
- :global(.dark) .play-button:focus,
138
- :global(.dark) .stop-button:focus,
139
- :global(.dark) .directional-button:hover,
140
- :global(.dark) .directional-button:focus {
141
- color: white;
142
- background-color: var(--primary-600);
143
- }
129
+ /* No dark theme overrides needed!
130
+ * Tokens automatically switch in .dark and respect .not-dark
131
+ */
144
132
  }
@@ -44,7 +44,7 @@ const ControlsDemo = (): React.JSX.Element => {
44
44
  )
45
45
  }
46
46
 
47
- export const Controls: Story = {
47
+ export const ControlButtons: Story = {
48
48
  render: () => <ControlsDemo />,
49
49
  }
50
50
 
@@ -5,27 +5,45 @@
5
5
  display: inline-block;
6
6
  }
7
7
 
8
- .copy-button {
8
+ .copy-button svg {
9
+ width: 90%;
10
+ height: 90%;
11
+ display: block;
12
+ }
13
+
14
+ /* Sizes */
15
+ .xs {
16
+ width: 26px;
17
+ height: 26px;
18
+ min-height: 26px;
19
+ padding: 0.25rem;
20
+ }
21
+
22
+ .sm {
9
23
  width: 32px;
10
24
  height: 32px;
11
- min-width: 32px;
25
+ min-height: 32px;
26
+ padding: 0.35rem;
12
27
  }
13
28
 
14
- .copy-button-foreground {
15
- fill: var(--gray-700);
29
+ .md {
30
+ width: 38px;
31
+ height: 38px;
32
+ min-height: 38px;
33
+ padding: 0.45rem;
16
34
  }
17
35
 
18
- .copy-button-foreground-reversed {
19
- fill: var(--gray-200);
36
+ .lg {
37
+ width: 46px;
38
+ height: 46px;
39
+ min-height: 46px;
40
+ padding: 0.55rem;
20
41
  }
21
42
 
22
- .dark {
23
- .copy-button-foreground {
24
- fill: var(--gray-200);
25
- }
26
-
27
- .copy-button-foreground-reversed {
28
- fill: var(--gray-700);
29
- }
43
+ .xl {
44
+ width: 54px;
45
+ height: 54px;
46
+ min-height: 54px;
47
+ padding: 0.65rem;
30
48
  }
31
49
  }