@ecopages/radiant-themes 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/README.md +27 -15
  2. package/dist/compiled/themes/cloudflare/compact.css +40 -12
  3. package/dist/compiled/themes/cloudflare.css +40 -12
  4. package/dist/compiled/themes/github/compact.css +264 -67
  5. package/dist/compiled/themes/github.css +264 -67
  6. package/dist/compiled/themes/high-contrast/compact.css +88 -5
  7. package/dist/compiled/themes/high-contrast.css +88 -5
  8. package/dist/compiled/themes/macos/compact.css +674 -294
  9. package/dist/compiled/themes/macos-classic/compact.css +197 -25
  10. package/dist/compiled/themes/macos-classic.css +197 -25
  11. package/dist/compiled/themes/macos.css +674 -294
  12. package/dist/compiled/themes/material/compact.css +447 -132
  13. package/dist/compiled/themes/material.css +447 -132
  14. package/dist/compiled/themes/vercel/compact.css +104 -62
  15. package/dist/compiled/themes/vercel.css +104 -62
  16. package/dist/compiled/themes/vscode/compact.css +255 -40
  17. package/dist/compiled/themes/vscode.css +255 -40
  18. package/dist/compiled/themes/windows95/compact.css +260 -22
  19. package/dist/compiled/themes/windows95.css +260 -22
  20. package/dist/tokens/colors/github.css +32 -0
  21. package/dist/tokens/colors/macos.css +65 -25
  22. package/dist/tokens/colors/material.css +61 -20
  23. package/dist/tokens/colors/vercel.css +43 -39
  24. package/dist/tokens/colors/vscode.css +48 -4
  25. package/dist/tokens/colors/windows95.css +10 -5
  26. package/dist/tokens/components/cloudflare.css +55 -5
  27. package/dist/tokens/components/github.css +258 -40
  28. package/dist/tokens/components/high-contrast.css +93 -5
  29. package/dist/tokens/components/macos-classic.css +262 -24
  30. package/dist/tokens/components/macos.css +537 -106
  31. package/dist/tokens/components/material.css +354 -25
  32. package/dist/tokens/components/vercel.css +77 -15
  33. package/dist/tokens/components/vscode.css +248 -27
  34. package/dist/tokens/components/windows95.css +304 -19
  35. package/dist/tokens/roles/github.css +12 -12
  36. package/dist/tokens/roles/macos.css +97 -93
  37. package/dist/tokens/roles/material.css +65 -65
  38. package/dist/tokens/roles/vercel.css +3 -3
  39. package/package.json +3 -3
@@ -128,7 +128,7 @@
128
128
 
129
129
  :root .rui-button:disabled {
130
130
  opacity: 1;
131
- color: var(--windows95-shadow);
131
+ color: var(--windows95-disabled);
132
132
  text-shadow: 1px 1px 0 var(--windows95-light);
133
133
  }
134
134
 
@@ -243,6 +243,7 @@
243
243
  :root .rui-menubar__menu-item[aria-checked='true'],
244
244
  :root .rui-tree__node[aria-selected='true'],
245
245
  :root .rui-calendar__day[aria-selected='true'],
246
+ :root .rui-sidebar__menu-button[aria-current='page'],
246
247
  :root .rui-sidebar__menu-button--active,
247
248
  :root .rui-navigation-menu__link-list a[aria-current='page'] {
248
249
  background-color: var(--windows95-selection);
@@ -255,13 +256,29 @@
255
256
  :root .rui-combobox__listbox,
256
257
  :root .rui-calendar,
257
258
  :root .rui-dialog__surface,
258
- :root .rui-popover-host,
259
+ :root .rui-popover:where(:not(.rui-popover--listbox)),
259
260
  :root .rui-hover-card__content {
260
261
  @apply rounded-none border-0 bg-surface;
261
262
  background-color: var(--windows95-face);
262
263
  box-shadow: var(--windows95-raised);
263
264
  }
264
265
 
266
+ :root .rui-select__listbox .rui-listbox,
267
+ :root .rui-combobox__listbox .rui-listbox {
268
+ background-color: transparent;
269
+ }
270
+
271
+ /**
272
+ * @remarks Tooltips use the pale yellow info color with a 1px black frame.
273
+ */
274
+ :root .rui-tooltip__content {
275
+ --rui-tooltip-surface: #ffffe1;
276
+ --rui-tooltip-color: #000000;
277
+ --rui-tooltip-radius: 0;
278
+ --rui-tooltip-shadow: none;
279
+ border: 1px solid #000000;
280
+ }
281
+
265
282
  :root .rui-select__listbox,
266
283
  :root .rui-combobox__listbox {
267
284
  background-color: var(--windows95-field);
@@ -279,8 +296,13 @@
279
296
  color: var(--windows95-selection-text);
280
297
  }
281
298
 
299
+ :root .rui-popover[role='dialog'] {
300
+ padding: var(--space-2);
301
+ }
302
+
282
303
  :root .rui-dialog__title {
283
- min-height: 1.5rem;
304
+ font-size: var(--text-sm);
305
+ min-height: 1.125rem;
284
306
  margin: calc(3px - var(--rui-dialog-padding)) calc(3px - var(--rui-dialog-padding)) var(--space-3);
285
307
  padding: 0.1875rem 2rem 0.1875rem 0.25rem;
286
308
  }
@@ -290,7 +312,7 @@
290
312
  z-index: 1;
291
313
  background-color: var(--windows95-face);
292
314
  color: var(--windows95-text);
293
- top: 0.375rem;
315
+ top: 0.5625rem;
294
316
  right: 0.375rem;
295
317
  width: 1rem;
296
318
  height: 0.875rem;
@@ -301,15 +323,23 @@
301
323
  @apply overflow-visible rounded-none border-0 bg-transparent shadow-none;
302
324
  }
303
325
 
326
+ /**
327
+ * @remarks The tab row overlaps the page's top bevel by 2px. Unselected tabs stop above that bevel; the selected
328
+ * tab reaches down over it so it joins the page, and stands 2px taller than its neighbours.
329
+ */
304
330
  :root rui-tabs[variant='boxed'] .rui-tabs__list {
305
- @apply min-w-0 max-w-full overflow-x-auto overflow-y-clip border-0 bg-transparent px-0 pt-0.5;
331
+ @apply min-w-0 max-w-full items-end overflow-x-auto overflow-y-clip border-0 bg-transparent px-0.5 pt-0.5;
332
+ position: relative;
333
+ z-index: 1;
334
+ margin-bottom: -2px;
306
335
  gap: 0;
307
336
  }
308
337
 
309
338
  :root rui-tabs[variant='boxed'] .rui-tabs__tab {
310
- @apply relative rounded-none border-0 text-on-surface font-normal;
339
+ @apply relative rounded-none border-0 text-on-surface font-normal opacity-100;
311
340
  z-index: 0;
312
- margin-bottom: -2px;
341
+ margin-bottom: 2px;
342
+ color: var(--windows95-text);
313
343
  background-color: var(--windows95-face);
314
344
  box-shadow:
315
345
  inset -1px 0 var(--windows95-dark),
@@ -321,8 +351,10 @@
321
351
  :root rui-tabs[variant='boxed'] .rui-tabs__tab[aria-selected='true'] {
322
352
  @apply font-normal;
323
353
  z-index: 1;
324
- margin-top: -2px;
325
- padding-bottom: calc(var(--rui-tabs-tab-padding-y, 0.375rem) + 2px);
354
+ margin-inline: -2px;
355
+ margin-bottom: 0;
356
+ padding-block: calc(var(--rui-tabs-tab-padding-y, 0.375rem) + 2px);
357
+ padding-inline: calc(var(--rui-tabs-tab-padding-x, 0.75rem) + 2px);
326
358
  }
327
359
 
328
360
  :root rui-tabs[variant='boxed'] .rui-tabs__panel {
@@ -335,32 +367,38 @@
335
367
  }
336
368
 
337
369
  :root .rui-alert,
338
- :root .rui-toast__content {
370
+ :root .rui-toast {
339
371
  @apply rounded-none border-0 text-on-surface;
340
372
  background-color: var(--windows95-face);
341
373
  box-shadow: var(--windows95-raised);
342
374
  }
343
375
 
344
- :root .rui-alert--error .rui-alert__icon {
376
+ :root .rui-alert--error .rui-alert__icon,
377
+ :root .rui-toast--error .rui-toast__icon {
345
378
  color: var(--windows95-red);
346
379
  }
347
380
 
348
- :root .rui-alert--warning .rui-alert__icon {
381
+ :root .rui-alert--warning .rui-alert__icon,
382
+ :root .rui-toast--warning .rui-toast__icon {
349
383
  color: var(--windows95-amber);
350
384
  }
351
385
 
352
- :root .rui-table__header,
386
+ :root .rui-alert--success .rui-alert__icon,
387
+ :root .rui-toast--success .rui-toast__icon {
388
+ color: var(--windows95-green);
389
+ }
390
+
391
+ :root .rui-alert--info .rui-alert__icon,
392
+ :root .rui-toast--info .rui-toast__icon {
393
+ color: var(--windows95-blue-light);
394
+ }
395
+
353
396
  :root .rui-treegrid__row--header,
354
397
  :root .rui-calendar__weekdays {
355
398
  @apply font-normal;
356
399
  background-color: var(--windows95-face);
357
400
  }
358
401
 
359
- :root .rui-table__header th,
360
- :root .rui-table__header .rui-table__cell {
361
- box-shadow: var(--windows95-raised-thin);
362
- }
363
-
364
402
  :root .rui-table,
365
403
  :root .rui-grid {
366
404
  background-color: var(--windows95-field);
@@ -413,7 +451,7 @@
413
451
  width: 0.75rem;
414
452
  height: 0.75rem;
415
453
  margin-inline-end: 0.25rem;
416
- border: 1px solid var(--windows95-shadow);
454
+ border: 1px solid var(--windows95-line);
417
455
  background-color: var(--windows95-field);
418
456
  color: var(--windows95-field-text);
419
457
  font:
@@ -466,6 +504,253 @@
466
504
  @apply rounded-none;
467
505
  background-color: transparent;
468
506
  }
507
+
508
+ /**
509
+ * @remarks Trackbars are a 4px sunken channel under an 11 by 21 pixel raised pointer.
510
+ */
511
+ :root .rui-slider {
512
+ --rui-slider-track-size: 0.25rem;
513
+ }
514
+
515
+ :root .rui-slider__range {
516
+ @apply py-3;
517
+ }
518
+
519
+ :root .rui-slider__thumb {
520
+ inline-size: 0.6875rem;
521
+ block-size: 1.3125rem;
522
+ }
523
+
524
+ :root .rui-slider--vertical .rui-slider__thumb {
525
+ inline-size: 1.3125rem;
526
+ block-size: 0.6875rem;
527
+ }
528
+
529
+ :root .rui-slider__range-track {
530
+ box-shadow: var(--windows95-sunken);
531
+ }
532
+
533
+ /**
534
+ * @remarks Drop-down lists and combo boxes end in a raised arrow button inside the sunken field, with a solid
535
+ * triangle in place of the chevron icon.
536
+ */
537
+ :root .rui-control-toggle {
538
+ @apply rounded-none;
539
+ align-self: stretch;
540
+ width: 1.125rem;
541
+ height: auto;
542
+ margin: 2px;
543
+ margin-inline-start: 0;
544
+ background-color: var(--windows95-face);
545
+ color: var(--windows95-text);
546
+ box-shadow: var(--windows95-raised);
547
+ }
548
+
549
+ :root .rui-control-toggle:hover:not(:disabled) {
550
+ background-color: var(--windows95-face);
551
+ }
552
+
553
+ :root .rui-control-toggle:active:not(:disabled) {
554
+ box-shadow: var(--windows95-pressed);
555
+ }
556
+
557
+ :root .rui-control-toggle > svg {
558
+ width: 0.75rem;
559
+ height: 0.75rem;
560
+ }
561
+
562
+ :root .rui-control-toggle:where([data-select-toggle], [data-combobox-trigger]) > svg {
563
+ display: none;
564
+ }
565
+
566
+ :root .rui-control-toggle:where([data-select-toggle], [data-combobox-trigger])::after {
567
+ content: '';
568
+ width: 7px;
569
+ height: 4px;
570
+ background-color: currentColor;
571
+ clip-path: polygon(0 0, 100% 0, 50% 100%);
572
+ }
573
+
574
+ /**
575
+ * @remarks The menu bar is flat: a title only sinks while its menu is open. Menu commands highlight in navy.
576
+ */
577
+ :root .rui-menubar {
578
+ @apply rounded-none border-0 bg-transparent p-0;
579
+ gap: 0;
580
+ }
581
+
582
+ :root .rui-menubar__item {
583
+ @apply rounded-none;
584
+ color: var(--windows95-text);
585
+ }
586
+
587
+ :root .rui-menubar__item:hover:not(:disabled):not([aria-disabled='true']),
588
+ :root .rui-menubar__item:focus-visible {
589
+ background-color: transparent;
590
+ box-shadow: none;
591
+ --tw-ring-shadow: 0 0 #0000;
592
+ outline: 1px dotted var(--windows95-text);
593
+ outline-offset: -2px;
594
+ }
595
+
596
+ :root .rui-menubar__item[aria-expanded='true'],
597
+ :root .rui-menubar__item[aria-expanded='true']:hover:not(:disabled) {
598
+ @apply font-normal;
599
+ outline: 0;
600
+ background-color: transparent;
601
+ color: var(--windows95-text);
602
+ box-shadow: var(--windows95-sunken-thin);
603
+ }
604
+
605
+ :root .rui-menu-button__menu,
606
+ :root .rui-menubar__menu {
607
+ --rui-menu-item-hover: var(--windows95-selection);
608
+ padding: 3px;
609
+ }
610
+
611
+ :root .rui-menu-button__item,
612
+ :root .rui-menubar__menu-item {
613
+ @apply rounded-none;
614
+ color: var(--windows95-text);
615
+ }
616
+
617
+ :root .rui-menu-button__item:hover:not([aria-disabled='true']),
618
+ :root .rui-menu-button__item:focus-visible:not([aria-disabled='true']),
619
+ :root .rui-menu-button__item[aria-expanded='true'],
620
+ :root .rui-menu-button__item:hover:not([aria-disabled='true'])::after,
621
+ :root .rui-menu-button__item:focus-visible:not([aria-disabled='true'])::after,
622
+ :root .rui-menubar__menu-item:hover:not(:disabled):not([aria-disabled='true']),
623
+ :root .rui-menubar__menu-item:focus-visible,
624
+ :root .rui-menubar__menu-item[aria-expanded='true'] {
625
+ color: var(--windows95-selection-text);
626
+ --tw-ring-shadow: 0 0 #0000;
627
+ }
628
+
629
+ /**
630
+ * @remarks List boxes and tree views are sunken white fields with square navy selection.
631
+ */
632
+ :root .rui-listbox--bordered,
633
+ :root .rui-tree {
634
+ @apply rounded-none border-0;
635
+ background-color: var(--windows95-field);
636
+ color: var(--windows95-field-text);
637
+ box-shadow: var(--windows95-sunken);
638
+ padding: 4px;
639
+ }
640
+
641
+ :root .rui-listbox {
642
+ gap: 0;
643
+ }
644
+
645
+ :root .rui-listbox__option,
646
+ :root .rui-tree__node {
647
+ @apply rounded-none py-0.5;
648
+ color: var(--windows95-field-text);
649
+ }
650
+
651
+ :root .rui-listbox__option[data-active]:not([aria-selected='true']):not([aria-disabled='true']) {
652
+ background-color: var(--windows95-selection);
653
+ color: var(--windows95-selection-text);
654
+ }
655
+
656
+ :root .rui-listbox__option[aria-selected='true'][data-active]:not([aria-disabled='true']),
657
+ :root .rui-listbox__option:focus-visible,
658
+ :root .rui-tree__node:focus-visible {
659
+ --tw-ring-shadow: 0 0 #0000;
660
+ outline: 1px dotted var(--windows95-field-text);
661
+ outline-offset: -1px;
662
+ }
663
+
664
+ :root .rui-listbox__option[aria-selected='true'][data-active]:not([aria-disabled='true']),
665
+ :root .rui-listbox__option[aria-selected='true']:focus-visible {
666
+ outline-color: var(--windows95-selection-text);
667
+ background-image: none;
668
+ }
669
+
670
+ :root .rui-tree__node {
671
+ @apply w-auto px-1 font-normal;
672
+ }
673
+
674
+ :root .rui-tree__node:hover:not([aria-selected='true']) {
675
+ background-color: transparent;
676
+ }
677
+
678
+ :root .rui-tree__node[aria-selected='true'] {
679
+ @apply font-normal;
680
+ }
681
+
682
+ :root .rui-tree ul {
683
+ border-inline-start: 1px dotted var(--windows95-line);
684
+ }
685
+
686
+ :root .rui-tree__node[aria-expanded]::before {
687
+ content: '+';
688
+ display: inline-block;
689
+ width: 9px;
690
+ height: 9px;
691
+ margin-inline-end: 0.375rem;
692
+ border: 1px solid var(--windows95-line);
693
+ background-color: var(--windows95-field);
694
+ color: var(--windows95-field-text);
695
+ font: 9px/7px 'MS Sans Serif', Tahoma, sans-serif;
696
+ text-align: center;
697
+ transform: none;
698
+ transition: none;
699
+ vertical-align: 0;
700
+ }
701
+
702
+ :root .rui-tree__node[aria-expanded='true']::before {
703
+ content: '-';
704
+ }
705
+
706
+ :root .rui-tag {
707
+ @apply rounded-none;
708
+ }
709
+
710
+ :root .rui-tag__remove {
711
+ @apply rounded-none;
712
+ }
713
+
714
+ /**
715
+ * @remarks The calendar's title bar keeps the navy caption with white text, and its month arrows are raised caption
716
+ * buttons.
717
+ */
718
+ :root .rui-calendar__month {
719
+ color: var(--windows95-selection-text);
720
+ }
721
+
722
+ :root .rui-calendar__header {
723
+ padding: 2px;
724
+ }
725
+
726
+ :root .rui-calendar__nav {
727
+ @apply rounded-none;
728
+ width: 1rem;
729
+ height: 0.875rem;
730
+ justify-self: center;
731
+ background-color: var(--windows95-face);
732
+ color: var(--windows95-text);
733
+ box-shadow: var(--windows95-raised);
734
+ }
735
+
736
+ :root .rui-calendar__nav:hover:not(:disabled) {
737
+ background-color: var(--windows95-face);
738
+ }
739
+
740
+ :root .rui-calendar__nav:active:not(:disabled) {
741
+ box-shadow: var(--windows95-pressed);
742
+ }
743
+
744
+ :root .rui-table__column,
745
+ :root .rui-table__sort {
746
+ @apply font-normal;
747
+ }
748
+
749
+ :root .rui-table__column {
750
+ background-color: var(--windows95-face);
751
+ color: var(--windows95-text);
752
+ box-shadow: var(--windows95-raised-thin);
753
+ }
469
754
  }
470
755
 
471
756
  @media (prefers-contrast: more) {
@@ -12,12 +12,12 @@
12
12
  --gray-900: color-mix(in oklab, var(--color-github-canvas), var(--color-github-fg) 94%);
13
13
  --gray-950: var(--color-github-fg);
14
14
 
15
- --primary: var(--color-github-green);
15
+ --primary: var(--color-github-blue);
16
16
  --on-primary: white;
17
- --primary-light: color-mix(in oklab, var(--color-github-green), white 12%);
18
- --primary-dark: color-mix(in oklab, var(--color-github-green), black 24%);
19
- --primary-container: color-mix(in oklab, var(--color-github-green), white 90%);
20
- --on-primary-container: color-mix(in oklab, var(--color-github-green), black 60%);
17
+ --primary-light: var(--color-github-blue-light);
18
+ --primary-dark: #0550ae;
19
+ --primary-container: var(--color-github-accent-subtle);
20
+ --on-primary-container: var(--color-github-accent-on-subtle);
21
21
  --secondary: var(--color-github-subtle);
22
22
  --on-secondary: var(--color-github-fg);
23
23
  --secondary-light: var(--color-github-white);
@@ -53,7 +53,7 @@
53
53
  --warning-container: color-mix(in oklab, var(--color-github-orange), white 88%);
54
54
  --on-warning-container: color-mix(in oklab, var(--color-github-orange), black 60%);
55
55
  --neutral: var(--color-github-muted-fg);
56
- --surface: var(--color-github-subtle);
56
+ --surface: var(--color-github-canvas);
57
57
  --on-surface: var(--color-github-fg);
58
58
  --surface-container-lowest: var(--color-github-canvas);
59
59
  --on-surface-container-lowest: var(--color-github-fg);
@@ -91,12 +91,12 @@
91
91
  --gray-800: color-mix(in oklab, var(--color-github-canvas), white 12%);
92
92
  --gray-900: color-mix(in oklab, var(--color-github-canvas), white 6%);
93
93
  --gray-950: var(--color-github-canvas);
94
- --primary: var(--color-github-green);
94
+ --primary: var(--color-github-blue);
95
95
  --on-primary: white;
96
- --primary-light: #238636;
97
- --primary-dark: #116329;
98
- --primary-container: #0f3d1e;
99
- --on-primary-container: #aff5b4;
96
+ --primary-light: var(--color-github-blue-light);
97
+ --primary-dark: #1158c7;
98
+ --primary-container: var(--color-github-accent-subtle);
99
+ --on-primary-container: var(--color-github-accent-on-subtle);
100
100
  --secondary: var(--color-github-muted);
101
101
  --on-secondary: var(--color-github-fg);
102
102
  --secondary-light: var(--color-github-border);
@@ -124,7 +124,7 @@
124
124
  --warning-container: #4d2d00;
125
125
  --on-warning-container: #ffdf8b;
126
126
  --neutral: var(--color-github-muted-fg);
127
- --surface: var(--color-github-subtle);
127
+ --surface: var(--color-github-canvas);
128
128
  --on-surface: var(--color-github-fg);
129
129
  --surface-container-lowest: var(--color-github-canvas);
130
130
  --on-surface-container-lowest: var(--color-github-fg);