@fest-lib/veela 0.1.9 → 0.1.11

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.
@@ -1,8 +1,8 @@
1
1
  /*
2
2
  * Filename: _tokens.scss
3
3
  * FullPath: modules/projects/veela.css/src/scss/core/misc/_tokens.scss
4
- * Change date and time: 12.30.00_06.08.2026
5
- * Reason for changes: Unify all color tokens — this file is the SINGLE SOURCE OF TRUTH for color token defaults across veela, fl.ui, and app shells/views.
4
+ * Change date and time: 15.50.00_22.08.2026
5
+ * Reason for changes: Desktop fallback seed is calm cyan-blue `#5a9ec8` (Material You overrides on Cap).
6
6
  */
7
7
 
8
8
  /*
@@ -25,6 +25,7 @@
25
25
 
26
26
  @use "./config" as config;
27
27
  @use "./color-properties";
28
+ @use "layers";
28
29
 
29
30
  // Design tokens: SCSS aliases for CSS custom properties
30
31
  // Keep aliases small and meaningful to encourage reuse
@@ -231,19 +232,19 @@ $selectors: $md-roots;
231
232
 
232
233
  --color-surface-container-lowest: light-dark(
233
234
  --u2-color-mod(var(--base-color-neutralized), 30),
234
- --u2-color-mod(var(--base-color-neutralized), 980)
235
+ --u2-color-mod(var(--base-color-neutralized), 990)
235
236
  );
236
237
  --color-surface-container-low: light-dark(
237
238
  --u2-color-mod(var(--base-color-neutralized), 20),
238
- --u2-color-mod(var(--base-color-neutralized), 970)
239
+ --u2-color-mod(var(--base-color-neutralized), 980)
239
240
  );
240
241
  --color-surface-container: light-dark(
241
242
  --u2-color-mod(var(--base-color-neutralized), 10),
242
- --u2-color-mod(var(--base-color-neutralized), 960)
243
+ --u2-color-mod(var(--base-color-neutralized), 970)
243
244
  );
244
245
  --color-surface-container-high: light-dark(
245
246
  --u2-color-mod(var(--base-color-neutralized), 5),
246
- --u2-color-mod(var(--base-color-neutralized), 950)
247
+ --u2-color-mod(var(--base-color-neutralized), 960)
247
248
  );
248
249
  --color-surface-container-highest: light-dark(
249
250
  --u2-color-mod(var(--base-color-neutralized), 2),
@@ -292,33 +293,7 @@ $selectors: $md-roots;
292
293
  --u2-color-mod(var(--base-color-neutralized), 620)
293
294
  );
294
295
 
295
- /* Elevation */
296
- --elev-0: 0 0 0 0 rgba(0, 0, 0, 0%);
297
- --elev-1: 0 1px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 3px 0 rgba(0, 0, 0, 0.12);
298
- --elev-2: 0 2px 4px 0 rgba(0, 0, 0, 0.14), 0 3px 6px 0 rgba(0, 0, 0, 0.11);
299
- --elev-3: 0 4px 6px 0 rgba(0, 0, 0, 0.14), 0 6px 12px 0 rgba(0, 0, 0, 0.11);
300
- --elev-4: 0 6px 8px 0 rgba(0, 0, 0, 0.14), 0 9px 18px 0 rgba(0, 0, 0, 0.11);
301
-
302
- /* Motion and transitions */
303
- --motion-fast: 140ms ease;
304
- --motion-normal: 200ms ease;
305
- --motion-slow: 300ms ease;
306
-
307
- /* Spacing */
308
- --space-xs: 0.25rem;
309
- --space-sm: 0.5rem;
310
- --space-md: 0.75rem;
311
- --space-lg: 1rem;
312
- --space-xl: 1.5rem;
313
- --space-2xl: 2rem;
314
-
315
- /* Radius */
316
- --radius-xs: 0.25rem;
317
- --radius-sm: 0.375rem;
318
- --radius-md: 0.5rem;
319
- --radius-lg: 0.75rem;
320
- --radius-xl: 1rem;
321
- --radius-full: 9999px;
296
+ /* Layout/motion inherit :root @layer tokens — do not fork scales here. */
322
297
 
323
298
  /* Legacy color mappings for markdown compatibility */
324
299
  --focus-outlineColor: var(--color-primary);
@@ -489,6 +464,14 @@ $selectors: $md-roots;
489
464
  --color-text: var(--color-on-background);
490
465
  --color-fg: var(--color-on-surface);
491
466
  --on-surface-color: var(--color-on-surface);
467
+ --surface-color: var(--color-surface);
468
+ --fl-surface: var(--color-surface);
469
+ --fl-on-surface: var(--color-on-surface);
470
+ --fl-primary: var(--color-primary);
471
+ --fl-on-primary: var(--color-on-primary);
472
+ --fl-secondary: var(--color-secondary);
473
+ --fl-on-secondary: var(--color-on-secondary);
474
+ --fl-shadow-xl: var(--shadow-xl);
492
475
  --on-surface-variant: var(--color-on-surface-variant);
493
476
  --wf-md-surface: var(--color-surface);
494
477
  --wf-md-on-surface: var(--color-on-surface);
@@ -520,11 +503,11 @@ $selectors: $md-roots;
520
503
  --color-on-surface-variant: --u2-color-mod(var(--base-color), 700);
521
504
  --color-outline: --u2-color-mod(var(--base-color), 300);
522
505
  --color-outline-variant: --u2-color-mod(var(--base-color), 400);
523
- --color-surface-container-lowest: --u2-color-mod(var(--base-color), 2);
524
- --color-surface-container-low: --u2-color-mod(var(--base-color), 10);
506
+ --color-surface-container-lowest: --u2-color-mod(var(--base-color), 40);
507
+ --color-surface-container-low: --u2-color-mod(var(--base-color), 30);
525
508
  --color-surface-container: --u2-color-mod(var(--base-color), 20);
526
- --color-surface-container-high: --u2-color-mod(var(--base-color), 30);
527
- --color-surface-container-highest: --u2-color-mod(var(--base-color), 40);
509
+ --color-surface-container-high: --u2-color-mod(var(--base-color), 5);
510
+ --color-surface-container-highest: --u2-color-mod(var(--base-color), 2);
528
511
  --color-border: color-mix(in oklab, var(--color-outline-variant) 75%, transparent);
529
512
  @include -theme-aliases;
530
513
  }
@@ -559,18 +542,17 @@ $selectors: $md-roots;
559
542
  @include -theme-aliases;
560
543
  }
561
544
 
562
- @layer tokens, base, layout, utilities, shells, shell, views, view, viewer, components, ux-layer, markdown, essentials, print, print-breaks, overrides;
563
-
564
545
  @layer tokens {
565
546
  :root,
566
547
  :host,
567
548
  :scope {
568
549
  /* Box seed; WallpaperTheme may override --color-primary on :root. */
569
- --color-primary: #5a7fff;
550
+ --color-primary: #5a9ec8;
570
551
  color-scheme: light dark;
571
552
  /* Default = light concrete; OS-dark media + data-theme pins override below. */
572
553
  @include -theme-light;
573
554
 
555
+ --space-2xs: 0.125rem;
574
556
  --space-xs: 0.25rem;
575
557
  --space-sm: 0.5rem;
576
558
  --space-md: 0.75rem;
@@ -599,15 +581,27 @@ $selectors: $md-roots;
599
581
  --gap-xl: var(--space-xl);
600
582
  --gap-2xl: var(--space-2xl);
601
583
 
584
+ /*
585
+ * Shape scale — M3 Expressive / Android 16–17 (dp≈rem at 16px).
586
+ * extra-small 4, small 8, medium 12, large 16, extra-large 28, full pill.
587
+ * `--radius-sm` stays 4dp so dense chrome does not jump.
588
+ */
602
589
  --radius-none: 0;
590
+ --radius-xs: 0.25rem;
603
591
  --radius-sm: 0.25rem;
604
592
  --radius-default: 0.25rem;
605
- --radius-md: 0.375rem;
606
- --radius-lg: 0.5rem;
607
- --radius-xl: 0.75rem;
608
- --radius-2xl: 1rem;
609
- --radius-3xl: 1.5rem;
593
+ --radius-md: 0.5rem;
594
+ --radius-lg: 0.75rem;
595
+ --radius-xl: 1rem;
596
+ --radius-2xl: 1.75rem;
597
+ --radius-3xl: 2rem;
610
598
  --radius-full: 9999px;
599
+ --shape-extra-small: var(--radius-xs);
600
+ --shape-small: var(--radius-md);
601
+ --shape-medium: var(--radius-lg);
602
+ --shape-large: var(--radius-xl);
603
+ --shape-extra-large: var(--radius-2xl);
604
+ --shape-full: var(--radius-full);
611
605
 
612
606
  --elev-0: none;
613
607
  --elev-1: 0 1px 1px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.1);
@@ -632,6 +626,32 @@ $selectors: $md-roots;
632
626
  --text-2xl: 1.6rem;
633
627
  --text-3xl: 2rem;
634
628
 
629
+ /* COMPAT: SCSS $font-* aliases and older sheets resolve these names. */
630
+ --font-xs: var(--text-xs);
631
+ --font-sm: var(--text-sm);
632
+ --font-base: var(--text-base);
633
+ --font-md: var(--text-base);
634
+ --font-lg: var(--text-lg);
635
+ --font-xl: var(--text-xl);
636
+ --font-2xl: var(--text-2xl);
637
+
638
+ /*
639
+ * Component foundation tokens. Keep these namespaced at root scope;
640
+ * `ui-icon` maps them to its internal `--icon-*` variables only on
641
+ * the component host, so a window titlebar cannot resize its content.
642
+ */
643
+ --ui-icon-size: 1.25rem;
644
+ --ui-icon-padding: 0px;
645
+ --ui-icon-tile-padding: 0.45rem;
646
+ --ui-window-icon-size: 0.95rem;
647
+ --ui-explorer-icon-size: 1.5rem;
648
+ --ui-explorer-icon-track: 2rem;
649
+ --ui-explorer-action-icon-size: 1.15rem;
650
+ --ui-explorer-row-height: 2.875rem;
651
+ --icon-size-sm: var(--ui-icon-size);
652
+ --icon-size-md: var(--ui-icon-size);
653
+ --icon-size-lg: var(--ui-explorer-icon-size);
654
+
635
655
  --font-size-xs: 0.75rem;
636
656
  --font-size-sm: 0.875rem;
637
657
  --font-size-base: 1rem;
@@ -644,6 +664,7 @@ $selectors: $md-roots;
644
664
  --font-weight-bold: 700;
645
665
 
646
666
  --font-family: "Roboto", ui-sans-serif, system-ui, -apple-system, Segoe UI, sans-serif;
667
+ --font-family-base: var(--font-family);
647
668
  --font-family-mono: "Roboto Mono", "SF Mono", Monaco, Inconsolata, "Fira Code", monospace;
648
669
  --font-sans: var(--font-family);
649
670
  --font-mono: var(--font-family-mono);
@@ -652,13 +673,20 @@ $selectors: $md-roots;
652
673
  --leading-normal: 1.5;
653
674
  --leading-relaxed: 1.8;
654
675
 
655
- --transition-fast: 120ms cubic-bezier(0.2, 0, 0, 1);
656
- --transition-normal: 160ms cubic-bezier(0.2, 0, 0, 1);
657
- --transition-slow: 200ms cubic-bezier(0.2, 0, 0, 1);
658
-
676
+ --ease-emphasized: cubic-bezier(0.2, 0, 0, 1);
677
+ --ease-expressive: cubic-bezier(0.34, 1.25, 0.64, 1);
678
+ --duration-fast: 140ms;
679
+ --duration-normal: 220ms;
680
+ --duration-slow: 360ms;
681
+ --transition-fast: var(--duration-fast) var(--ease-emphasized);
682
+ --transition-normal: var(--duration-normal) var(--ease-emphasized);
683
+ --transition-slow: var(--duration-slow) var(--ease-emphasized);
659
684
  --motion-fast: var(--transition-fast);
660
685
  --motion-normal: var(--transition-normal);
661
686
  --motion-slow: var(--transition-slow);
687
+ --ease-out: cubic-bezier(0, 0, 0.2, 1);
688
+ --ease-in: cubic-bezier(0.4, 0, 1, 1);
689
+ --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
662
690
 
663
691
  --focus-ring: 0 0 0 3px color-mix(in oklab, var(--color-primary) 35%, transparent);
664
692
 
@@ -673,7 +701,7 @@ $selectors: $md-roots;
673
701
  --z-toast: 800;
674
702
  --z-max: 9999;
675
703
 
676
- --view-bg: var(--color-surface);
704
+ --view-bg: var(--color-container);
677
705
  --view-fg: var(--color-on-surface);
678
706
  --view-border: var(--color-outline-variant);
679
707
  --view-input-bg: light-dark(
@@ -734,9 +762,10 @@ $selectors: $md-roots;
734
762
  --color-fg: var(--color-on-surface, var(--color-on-surface));
735
763
  --color-fg-muted: var(--color-on-surface-variant, var(--color-on-surface-variant));
736
764
 
765
+ --touch-min: 3rem;
737
766
  --btn-height-sm: 2rem;
738
- --btn-height-md: 2.5rem;
739
- --btn-height-lg: 3rem;
767
+ --btn-height-md: var(--touch-min);
768
+ --btn-height-lg: 3.5rem;
740
769
  --btn-padding-x-sm: var(--space-md);
741
770
  --btn-padding-x-md: var(--space-lg);
742
771
  --btn-padding-x-lg: 1.5rem;
@@ -744,8 +773,13 @@ $selectors: $md-roots;
744
773
  --btn-font-weight: var(--font-weight-medium);
745
774
 
746
775
  --input-height-sm: 2rem;
747
- --input-height-md: 2.5rem;
748
- --input-height-lg: 3rem;
776
+ --input-height-md: var(--touch-min);
777
+ --input-height-lg: 3.5rem;
778
+ --state-opacity-hover: 0.08;
779
+ --state-opacity-press: 0.12;
780
+ --state-opacity-focus: 0.12;
781
+ --state-opacity-disabled: 0.38;
782
+ --state-opacity-drag: 0.16;
749
783
  --input-padding-x: var(--space-md);
750
784
  --input-radius: var(--radius-md);
751
785
  --input-border-color: var(--color-border, var(--color-border));
@@ -846,7 +880,7 @@ $selectors: $md-roots;
846
880
  --sv-outline: var(--color-outline-variant, light-dark(#c5cdd8, #3d4755));
847
881
  --sv-surface-1: var(--color-surface-container-low, light-dark(#ffffff, #171c24));
848
882
  --sv-surface-2: var(--color-surface-container, light-dark(#f4f6fa, #1c232d));
849
- --sv-primary: var(--base-color, var(--color-primary, #5a7fff));
883
+ --sv-primary: var(--base-color, var(--color-primary, #5a9ec8));
850
884
  --sv-danger: var(--color-error, #d32f2f);
851
885
 
852
886
  /* ── History-view semantic tokens (`--vh-*`) ──────────────────────
@@ -916,6 +950,9 @@ $selectors: $md-roots;
916
950
  --motion-fast: 0ms;
917
951
  --motion-normal: 0ms;
918
952
  --motion-slow: 0ms;
953
+ --duration-fast: 0ms;
954
+ --duration-normal: 0ms;
955
+ --duration-slow: 0ms;
919
956
  }
920
957
  }
921
958