|
1 | 1 | @use 'sass:map';
|
2 |
| -@use '../core/density/private/compatibility'; |
3 |
| -@use '../core/style/variables'; |
4 | 2 | @use '../core/theming/theming';
|
5 | 3 | @use '../core/typography/typography';
|
6 |
| -@use '../core/typography/typography-utils'; |
7 |
| -@use './toolbar-variables'; |
8 |
| - |
9 |
| -@mixin _height($height) { |
10 |
| - .mat-toolbar-multiple-rows { |
11 |
| - min-height: $height; |
12 |
| - } |
13 |
| - .mat-toolbar-row, .mat-toolbar-single-row { |
14 |
| - height: $height; |
15 |
| - } |
16 |
| -} |
| 4 | +@use '../core/tokens/m2/mat/toolbar' as tokens-mat-toolbar; |
| 5 | +@use '../core/tokens/token-utils'; |
| 6 | +@use '../core/style/sass-utils'; |
17 | 7 |
|
18 | 8 | @mixin _palette-styles($palette) {
|
19 |
| - background: theming.get-color-from-palette($palette); |
20 |
| - color: theming.get-color-from-palette($palette, default-contrast); |
21 |
| -} |
22 |
| - |
23 |
| -@mixin _form-field-overrides { |
24 |
| - .mat-form-field-underline, |
25 |
| - .mat-form-field-ripple, |
26 |
| - .mat-focused .mat-form-field-ripple { |
27 |
| - background-color: currentColor; |
28 |
| - } |
29 |
| - |
30 |
| - .mat-form-field-label, |
31 |
| - .mat-focused .mat-form-field-label, |
32 |
| - .mat-select-value, |
33 |
| - .mat-select-arrow, |
34 |
| - .mat-form-field.mat-focused .mat-select-arrow { |
35 |
| - color: inherit; |
36 |
| - } |
37 |
| - |
38 |
| - .mat-input-element { |
39 |
| - caret-color: currentColor; |
40 |
| - } |
| 9 | + @include token-utils.create-token-values( |
| 10 | + tokens-mat-toolbar.$prefix, |
| 11 | + tokens-mat-toolbar.private-get-color-palette-color-tokens( |
| 12 | + $background-color: theming.get-color-from-palette($palette), |
| 13 | + $text-color: theming.get-color-from-palette($palette, default-contrast) |
| 14 | + ) |
| 15 | + ); |
41 | 16 | }
|
42 | 17 |
|
43 | 18 | @mixin color($config-or-theme) {
|
44 | 19 | $config: theming.get-color-config($config-or-theme);
|
45 |
| - $primary: map.get($config, primary); |
46 |
| - $accent: map.get($config, accent); |
47 |
| - $warn: map.get($config, warn); |
48 |
| - $background: map.get($config, background); |
49 |
| - $foreground: map.get($config, foreground); |
50 | 20 |
|
51 |
| - .mat-toolbar { |
52 |
| - background: theming.get-color-from-palette($background, app-bar); |
53 |
| - color: theming.get-color-from-palette($foreground, text); |
| 21 | + @include sass-utils.current-selector-or-root() { |
| 22 | + @include token-utils.create-token-values(tokens-mat-toolbar.$prefix, |
| 23 | + tokens-mat-toolbar.get-color-tokens($config)); |
| 24 | + } |
54 | 25 |
|
| 26 | + .mat-toolbar { |
55 | 27 | &.mat-primary {
|
56 |
| - @include _palette-styles($primary); |
| 28 | + @include _palette-styles(map.get($config, primary)); |
57 | 29 | }
|
58 | 30 |
|
59 | 31 | &.mat-accent {
|
60 |
| - @include _palette-styles($accent); |
| 32 | + @include _palette-styles(map.get($config, accent)); |
61 | 33 | }
|
62 | 34 |
|
63 | 35 | &.mat-warn {
|
64 |
| - @include _palette-styles($warn); |
| 36 | + @include _palette-styles(map.get($config, warn)); |
65 | 37 | }
|
66 |
| - |
67 |
| - @include _form-field-overrides; |
68 | 38 | }
|
69 | 39 | }
|
70 | 40 |
|
71 | 41 | @mixin typography($config-or-theme) {
|
72 | 42 | $config: typography.private-typography-to-2014-config(
|
73 | 43 | theming.get-typography-config($config-or-theme));
|
74 |
| - .mat-toolbar, |
75 |
| - .mat-toolbar h1, |
76 |
| - .mat-toolbar h2, |
77 |
| - .mat-toolbar h3, |
78 |
| - .mat-toolbar h4, |
79 |
| - .mat-toolbar h5, |
80 |
| - .mat-toolbar h6 { |
81 |
| - @include typography-utils.typography-level($config, title); |
82 |
| - margin: 0; |
| 44 | + |
| 45 | + @include sass-utils.current-selector-or-root() { |
| 46 | + @include token-utils.create-token-values(tokens-mat-toolbar.$prefix, |
| 47 | + tokens-mat-toolbar.get-typography-tokens($config)); |
83 | 48 | }
|
84 | 49 | }
|
85 | 50 |
|
86 | 51 | @mixin density($config-or-theme) {
|
87 | 52 | $density-scale: theming.get-density-config($config-or-theme);
|
88 |
| - $height-desktop: compatibility.private-density-prop-value( |
89 |
| - toolbar-variables.$desktop-density-config, $density-scale, height); |
90 |
| - $height-mobile: compatibility.private-density-prop-value( |
91 |
| - toolbar-variables.$mobile-density-config, $density-scale, height); |
92 | 53 |
|
93 |
| - @include compatibility.private-density-legacy-compatibility() { |
94 |
| - // Set the default height for the toolbar. |
95 |
| - @include _height($height-desktop); |
96 |
| - |
97 |
| - // As per specs, toolbars should have a different height in mobile devices. This has been |
98 |
| - // specified in the old guidelines and is still observable in the new specifications by |
99 |
| - // looking at the spec images. See: https://material.io/design/components/app-bars-top.html#anatomy |
100 |
| - @media (variables.$xsmall) { |
101 |
| - @include _height($height-mobile); |
102 |
| - } |
| 54 | + @include sass-utils.current-selector-or-root() { |
| 55 | + @include token-utils.create-token-values(tokens-mat-toolbar.$prefix, |
| 56 | + tokens-mat-toolbar.get-density-tokens($density-scale)); |
103 | 57 | }
|
104 | 58 | }
|
105 | 59 |
|
|
0 commit comments