|
1 | 1 | @use 'sass:map';
|
2 | 2 | @use '../core/theming/inspection';
|
3 | 3 | @use '../core/style/elevation';
|
| 4 | +@use '../core/tokens/m2-utils'; |
| 5 | +@use '../core/tokens/m3-utils'; |
4 | 6 |
|
5 | 7 | // Tokens that can't be configured through Angular Material's current theming API,
|
6 | 8 | // but may be in a future version of the theming API.
|
|
31 | 33 |
|
32 | 34 | // Tokens that can be configured through Angular Material's color theming API.
|
33 | 35 | @function get-color-tokens($theme) {
|
| 36 | + $system: m2-utils.get-system($theme); |
34 | 37 | $theme-color-tokens: private-get-color-palette-color-tokens($theme, primary);
|
35 |
| - $is-dark: inspection.get-theme-type($theme) == dark; |
36 |
| - $on-surface: if($is-dark, #fff, #000); |
37 | 38 |
|
38 | 39 | @return map.merge(
|
39 | 40 | $theme-color-tokens,
|
40 | 41 | (
|
41 |
| - slider-disabled-active-track-color: inspection.get-theme-color($theme, system, on-surface), |
42 |
| - slider-disabled-handle-color: inspection.get-theme-color($theme, system, on-surface), |
43 |
| - slider-disabled-inactive-track-color: inspection.get-theme-color($theme, system, on-surface), |
44 |
| - slider-label-container-color: $on-surface, |
45 |
| - slider-label-label-text-color: if($is-dark, #000, #fff), |
46 |
| - slider-value-indicator-opacity: if($is-dark, 0.9, 0.6), |
47 |
| - slider-with-overlap-handle-outline-color: #fff, |
| 42 | + slider-disabled-active-track-color: map.get($system, on-surface), |
| 43 | + slider-disabled-handle-color: map.get($system, on-surface), |
| 44 | + slider-disabled-inactive-track-color: map.get($system, on-surface), |
| 45 | + slider-label-container-color: map.get($system, inverse-surface), |
| 46 | + slider-label-label-text-color: map.get($system, inverse-on-surface), |
| 47 | + slider-value-indicator-opacity: 1, |
| 48 | + slider-with-overlap-handle-outline-color: map.get($system, on-surface), |
48 | 49 | slider-with-tick-marks-disabled-container-color:
|
49 | 50 | inspection.get-theme-color($theme, system, on-surface),
|
50 | 51 | ),
|
51 | 52 | );
|
52 | 53 | }
|
53 | 54 |
|
54 | 55 | // Generates tokens for the slider properties that change based on the theme.
|
55 |
| -@function private-get-color-palette-color-tokens($theme, $palette-name) { |
56 |
| - $color: inspection.get-theme-color($theme, $palette-name); |
57 |
| - $hover-ripple-color: if($color == null, null, #{rgba($color, 0.05)}); |
58 |
| - $focus-ripple-color: if($color == null, null, #{rgba($color, 0.2)}); |
59 |
| - $on-color: inspection.get-theme-color($theme, $palette-name, default-contrast); |
| 56 | +@function private-get-color-palette-color-tokens($theme, $color-variant) { |
| 57 | + $system: m2-utils.get-system($theme); |
| 58 | + $system: m3-utils.replace-colors-with-variant($system, primary, $color-variant); |
| 59 | + $color: map.get($system, primary); |
60 | 60 |
|
61 | 61 | @return (
|
62 |
| - slider-active-track-color: $color, |
63 |
| - slider-focus-handle-color: $color, |
64 |
| - slider-focus-state-layer-color: $focus-ripple-color, |
65 |
| - slider-handle-color: $color, |
66 |
| - slider-hover-handle-color: $color, |
67 |
| - slider-hover-state-layer-color: $hover-ripple-color, |
68 |
| - slider-inactive-track-color: $color, |
69 |
| - slider-ripple-color: $color, |
70 |
| - slider-with-tick-marks-active-container-color: $on-color, |
71 |
| - slider-with-tick-marks-inactive-container-color: $color, |
| 62 | + slider-active-track-color: map.get($system, primary), |
| 63 | + slider-focus-handle-color: map.get($system, primary), |
| 64 | + slider-handle-color: map.get($system, primary), |
| 65 | + slider-hover-handle-color: map.get($system, primary), |
| 66 | + slider-focus-state-layer-color: m3-utils.color-with-opacity( |
| 67 | + map.get($system, primary), map.get($system, focus-state-layer-opacity)), |
| 68 | + slider-hover-state-layer-color: m3-utils.color-with-opacity( |
| 69 | + map.get($system, primary), map.get($system, hover-state-layer-opacity)), |
| 70 | + slider-inactive-track-color: map.get($system, primary), |
| 71 | + slider-ripple-color: map.get($system, primary), |
| 72 | + slider-with-tick-marks-active-container-color: map.get($system, on-primary), |
| 73 | + slider-with-tick-marks-inactive-container-color: map.get($system, primary), |
72 | 74 | );
|
73 | 75 | }
|
74 | 76 |
|
|
0 commit comments