|
17 | 17 | // go/keep-sorted end
|
18 | 18 |
|
19 | 19 | @mixin theme($tokens) {
|
20 |
| - $list-item-supported-tokens: tokens.$md-comp-menu-list-item-supported-tokens; |
21 | 20 | $supported-tokens: tokens.$md-comp-menu-item-supported-tokens;
|
22 | 21 |
|
23 | 22 | @each $token, $value in $tokens {
|
24 |
| - @if list.index($supported-tokens, $token) == |
25 |
| - null and |
26 |
| - list.index($list-item-supported-tokens, $token) == |
27 |
| - null |
28 |
| - { |
| 23 | + @if list.index($supported-tokens, $token) == null { |
29 | 24 | @error 'Token `#{$token}` is not a supported token.';
|
30 | 25 | }
|
31 | 26 |
|
32 | 27 | @if $value and list.index($supported-tokens, $token) == null {
|
33 | 28 | --md-menu-item-#{$token}: #{$value};
|
34 | 29 | }
|
35 |
| - |
36 |
| - @if $value and list.index($list-item-supported-tokens, $token) == null { |
37 |
| - --md-list-item-#{$token}: #{$value}; |
38 |
| - } |
39 | 30 | }
|
40 | 31 | }
|
41 | 32 |
|
42 | 33 | @mixin styles() {
|
43 |
| - $list-item-tokens: tokens.md-comp-menu-list-item-values(); |
44 |
| - @each $token, $value in $list-item-tokens { |
45 |
| - $list-item-tokens: map.set( |
46 |
| - $list-item-tokens, |
47 |
| - $token, |
48 |
| - var(--md-menu-item-#{$token}, #{$value}) |
49 |
| - ); |
50 |
| - } |
51 | 34 | $tokens: tokens.md-comp-menu-item-values();
|
52 | 35 | @each $token, $value in $tokens {
|
53 | 36 | $tokens: map.set($tokens, $token, var(--md-menu-item-#{$token}, #{$value}));
|
54 | 37 | }
|
55 | 38 |
|
56 | 39 | :host {
|
57 |
| - border-radius: map.get($list-item-tokens, 'container-shape'); |
| 40 | + border-radius: map.get($tokens, 'container-shape'); |
58 | 41 | display: flex;
|
59 | 42 |
|
60 | 43 | @include ripple.theme(
|
61 | 44 | (
|
62 |
| - hover-color: map.get($list-item-tokens, 'hover-state-layer-color'), |
63 |
| - hover-opacity: map.get($list-item-tokens, 'hover-state-layer-opacity'), |
64 |
| - pressed-color: map.get($list-item-tokens, 'pressed-state-layer-color'), |
65 |
| - pressed-opacity: |
66 |
| - map.get($list-item-tokens, 'pressed-state-layer-opacity'), |
| 45 | + hover-color: map.get($tokens, 'hover-state-layer-color'), |
| 46 | + hover-opacity: map.get($tokens, 'hover-state-layer-opacity'), |
| 47 | + pressed-color: map.get($tokens, 'pressed-state-layer-color'), |
| 48 | + pressed-opacity: map.get($tokens, 'pressed-state-layer-opacity'), |
67 | 49 | )
|
68 | 50 | );
|
69 | 51 | }
|
70 | 52 |
|
71 | 53 | :host([disabled]) {
|
72 |
| - opacity: map.get($list-item-tokens, 'disabled-opacity'); |
| 54 | + opacity: map.get($tokens, 'disabled-opacity'); |
73 | 55 | pointer-events: none;
|
74 | 56 | }
|
75 | 57 |
|
|
121 | 103 | md-item {
|
122 | 104 | border-radius: inherit;
|
123 | 105 | flex: 1;
|
124 |
| - color: map.get($list-item-tokens, 'label-text-color'); |
125 |
| - font-family: map.get($list-item-tokens, 'label-text-font'); |
126 |
| - font-size: map.get($list-item-tokens, 'label-text-size'); |
127 |
| - line-height: map.get($list-item-tokens, 'label-text-line-height'); |
128 |
| - font-weight: map.get($list-item-tokens, 'label-text-weight'); |
129 |
| - min-height: map.get($list-item-tokens, 'one-line-container-height'); |
130 |
| - padding-top: map.get($list-item-tokens, 'top-space'); |
131 |
| - padding-bottom: map.get($list-item-tokens, 'bottom-space'); |
132 |
| - padding-inline-start: map.get($list-item-tokens, 'leading-space'); |
133 |
| - padding-inline-end: map.get($list-item-tokens, 'trailing-space'); |
| 106 | + color: map.get($tokens, 'label-text-color'); |
| 107 | + font-family: map.get($tokens, 'label-text-font'); |
| 108 | + font-size: map.get($tokens, 'label-text-size'); |
| 109 | + line-height: map.get($tokens, 'label-text-line-height'); |
| 110 | + font-weight: map.get($tokens, 'label-text-weight'); |
| 111 | + min-height: map.get($tokens, 'one-line-container-height'); |
| 112 | + padding-top: map.get($tokens, 'top-space'); |
| 113 | + padding-bottom: map.get($tokens, 'bottom-space'); |
| 114 | + padding-inline-start: map.get($tokens, 'leading-space'); |
| 115 | + padding-inline-end: map.get($tokens, 'trailing-space'); |
134 | 116 | }
|
135 | 117 |
|
136 | 118 | md-item[multiline] {
|
137 |
| - min-height: map.get($list-item-tokens, 'two-line-container-height'); |
| 119 | + min-height: map.get($tokens, 'two-line-container-height'); |
138 | 120 | }
|
139 | 121 |
|
140 | 122 | [slot='supporting-text'] {
|
141 |
| - color: map.get($list-item-tokens, 'supporting-text-color'); |
142 |
| - font-family: map.get($list-item-tokens, 'supporting-text-font'); |
143 |
| - font-size: map.get($list-item-tokens, 'supporting-text-size'); |
144 |
| - line-height: map.get($list-item-tokens, 'supporting-text-line-height'); |
145 |
| - font-weight: map.get($list-item-tokens, 'supporting-text-weight'); |
| 123 | + color: map.get($tokens, 'supporting-text-color'); |
| 124 | + font-family: map.get($tokens, 'supporting-text-font'); |
| 125 | + font-size: map.get($tokens, 'supporting-text-size'); |
| 126 | + line-height: map.get($tokens, 'supporting-text-line-height'); |
| 127 | + font-weight: map.get($tokens, 'supporting-text-weight'); |
146 | 128 | }
|
147 | 129 |
|
148 | 130 | [slot='trailing-supporting-text'] {
|
149 |
| - color: map.get($list-item-tokens, 'trailing-supporting-text-color'); |
150 |
| - font-family: map.get($list-item-tokens, 'trailing-supporting-text-font'); |
151 |
| - font-size: map.get($list-item-tokens, 'trailing-supporting-text-size'); |
152 |
| - line-height: map.get( |
153 |
| - $list-item-tokens, |
154 |
| - 'trailing-supporting-text-line-height' |
155 |
| - ); |
156 |
| - font-weight: map.get($list-item-tokens, 'trailing-supporting-text-weight'); |
| 131 | + color: map.get($tokens, 'trailing-supporting-text-color'); |
| 132 | + font-family: map.get($tokens, 'trailing-supporting-text-font'); |
| 133 | + font-size: map.get($tokens, 'trailing-supporting-text-size'); |
| 134 | + line-height: map.get($tokens, 'trailing-supporting-text-line-height'); |
| 135 | + font-weight: map.get($tokens, 'trailing-supporting-text-weight'); |
157 | 136 | }
|
158 | 137 |
|
159 | 138 | :is([slot='start'], [slot='end'])::slotted(*) {
|
160 | 139 | fill: currentColor;
|
161 | 140 | }
|
162 | 141 |
|
163 | 142 | [slot='start'] {
|
164 |
| - color: map.get($list-item-tokens, 'leading-icon-color'); |
| 143 | + color: map.get($tokens, 'leading-icon-color'); |
165 | 144 | }
|
166 | 145 |
|
167 | 146 | [slot='end'] {
|
168 |
| - color: map.get($list-item-tokens, 'trailing-icon-color'); |
| 147 | + color: map.get($tokens, 'trailing-icon-color'); |
169 | 148 | }
|
170 | 149 |
|
171 | 150 | .list-item {
|
172 |
| - background-color: map.get($list-item-tokens, 'container-color'); |
| 151 | + background-color: map.get($tokens, 'container-color'); |
173 | 152 | }
|
174 | 153 |
|
175 | 154 | .list-item.selected {
|
|
0 commit comments