@material/web 1.2.0 → 1.2.1-nightly.6ecda49.0

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 (141) hide show
  1. package/button/internal/_elevated-button.scss +7 -30
  2. package/button/internal/_filled-button.scss +7 -30
  3. package/button/internal/_filled-tonal-button.scss +7 -30
  4. package/button/internal/_outlined-button.scss +7 -30
  5. package/button/internal/_text-button.scss +7 -30
  6. package/button/internal/elevated-styles.css.js +1 -1
  7. package/button/internal/elevated-styles.css.js.map +1 -1
  8. package/button/internal/filled-styles.css.js +1 -1
  9. package/button/internal/filled-styles.css.js.map +1 -1
  10. package/button/internal/filled-tonal-styles.css.js +1 -1
  11. package/button/internal/filled-tonal-styles.css.js.map +1 -1
  12. package/button/internal/outlined-styles.css.js +1 -1
  13. package/button/internal/outlined-styles.css.js.map +1 -1
  14. package/button/internal/text-styles.css.js +1 -1
  15. package/button/internal/text-styles.css.js.map +1 -1
  16. package/checkbox/internal/_checkbox.scss +3 -37
  17. package/chips/internal/_assist-chip.scss +8 -30
  18. package/chips/internal/_filter-chip.scss +8 -30
  19. package/chips/internal/_input-chip.scss +8 -30
  20. package/chips/internal/_suggestion-chip.scss +8 -30
  21. package/chips/internal/assist-styles.css.js +1 -1
  22. package/chips/internal/assist-styles.css.js.map +1 -1
  23. package/chips/internal/filter-styles.css.js +1 -1
  24. package/chips/internal/filter-styles.css.js.map +1 -1
  25. package/chips/internal/input-styles.css.js +1 -1
  26. package/chips/internal/input-styles.css.js.map +1 -1
  27. package/chips/internal/suggestion-styles.css.js +1 -1
  28. package/chips/internal/suggestion-styles.css.js.map +1 -1
  29. package/dialog/internal/_dialog.scss +3 -40
  30. package/divider/internal/_divider.scss +3 -4
  31. package/elevation/internal/_elevation.scss +3 -4
  32. package/fab/internal/_fab-branded.scss +8 -50
  33. package/fab/internal/_fab.scss +13 -70
  34. package/fab/internal/fab-branded-styles.css.js +1 -1
  35. package/fab/internal/fab-branded-styles.css.js.map +1 -1
  36. package/fab/internal/fab-styles.css.js +1 -1
  37. package/fab/internal/fab-styles.css.js.map +1 -1
  38. package/field/internal/_filled-field.scss +6 -23
  39. package/field/internal/_outlined-field.scss +6 -20
  40. package/field/internal/filled-styles.css.js +1 -1
  41. package/field/internal/filled-styles.css.js.map +1 -1
  42. package/field/internal/outlined-styles.css.js +1 -1
  43. package/field/internal/outlined-styles.css.js.map +1 -1
  44. package/focus/internal/_focus-ring.scss +14 -38
  45. package/icon/internal/_icon.scss +3 -4
  46. package/iconbutton/internal/_filled-icon-button.scss +7 -30
  47. package/iconbutton/internal/_filled-tonal-icon-button.scss +7 -30
  48. package/iconbutton/internal/_icon-button.scss +4 -2
  49. package/iconbutton/internal/_outlined-icon-button.scss +7 -30
  50. package/iconbutton/internal/filled-styles.css.js +1 -1
  51. package/iconbutton/internal/filled-styles.css.js.map +1 -1
  52. package/iconbutton/internal/filled-tonal-styles.css.js +1 -1
  53. package/iconbutton/internal/filled-tonal-styles.css.js.map +1 -1
  54. package/iconbutton/internal/outlined-styles.css.js +1 -1
  55. package/iconbutton/internal/outlined-styles.css.js.map +1 -1
  56. package/labs/card/internal/_elevated-card.scss +4 -2
  57. package/labs/card/internal/_filled-card.scss +4 -2
  58. package/labs/card/internal/_outlined-card.scss +4 -2
  59. package/labs/segmentedbutton/internal/outlined-styles.css.js +1 -1
  60. package/labs/segmentedbutton/internal/outlined-styles.css.js.map +1 -1
  61. package/labs/segmentedbuttonset/internal/_outlined-segmented-button-set.scss +9 -20
  62. package/labs/segmentedbuttonset/internal/outlined-styles.css.js +1 -1
  63. package/labs/segmentedbuttonset/internal/outlined-styles.css.js.map +1 -1
  64. package/list/internal/_list.scss +3 -4
  65. package/list/internal/listitem/_list-item.scss +3 -4
  66. package/menu/internal/_menu.scss +3 -4
  67. package/menu/internal/menuitem/_menu-item.scss +3 -4
  68. package/package.json +1 -1
  69. package/progress/internal/_circular-progress.scss +4 -2
  70. package/progress/internal/_linear-progress.scss +4 -2
  71. package/radio/internal/_radio.scss +3 -4
  72. package/ripple/internal/_ripple.scss +3 -4
  73. package/select/internal/_filled-select.scss +7 -45
  74. package/select/internal/_outlined-select.scss +7 -30
  75. package/select/internal/filled-select-styles.css.js +1 -1
  76. package/select/internal/filled-select-styles.css.js.map +1 -1
  77. package/select/internal/outlined-select-styles.css.js +1 -1
  78. package/select/internal/outlined-select-styles.css.js.map +1 -1
  79. package/slider/internal/_slider.scss +4 -2
  80. package/switch/internal/_switch.scss +3 -52
  81. package/tabs/internal/_primary-tab.scss +8 -30
  82. package/tabs/internal/_secondary-tab.scss +8 -30
  83. package/tabs/internal/primary-tab-styles.css.js +1 -1
  84. package/tabs/internal/primary-tab-styles.css.js.map +1 -1
  85. package/tabs/internal/secondary-tab-styles.css.js +1 -1
  86. package/tabs/internal/secondary-tab-styles.css.js.map +1 -1
  87. package/textfield/internal/_filled-text-field.scss +6 -58
  88. package/textfield/internal/_outlined-text-field.scss +6 -51
  89. package/textfield/internal/filled-styles.css.js +1 -1
  90. package/textfield/internal/filled-styles.css.js.map +1 -1
  91. package/textfield/internal/outlined-styles.css.js +1 -1
  92. package/textfield/internal/outlined-styles.css.js.map +1 -1
  93. package/tokens/_md-comp-assist-chip.scss +40 -7
  94. package/tokens/_md-comp-badge.scss +14 -1
  95. package/tokens/_md-comp-checkbox.scss +36 -2
  96. package/tokens/_md-comp-circular-progress.scss +17 -1
  97. package/tokens/_md-comp-dialog.scss +28 -2
  98. package/tokens/_md-comp-divider.scss +19 -2
  99. package/tokens/_md-comp-elevated-button.scss +40 -7
  100. package/tokens/_md-comp-elevated-card.scss +20 -1
  101. package/tokens/_md-comp-elevation.scss +18 -1
  102. package/tokens/_md-comp-fab-branded.scss +49 -3
  103. package/tokens/_md-comp-fab.scss +55 -2
  104. package/tokens/_md-comp-filled-button.scss +40 -7
  105. package/tokens/_md-comp-filled-card.scss +20 -1
  106. package/tokens/_md-comp-filled-field.scss +36 -2
  107. package/tokens/_md-comp-filled-icon-button.scss +35 -2
  108. package/tokens/_md-comp-filled-select.scss +35 -2
  109. package/tokens/_md-comp-filled-text-field.scss +59 -3
  110. package/tokens/_md-comp-filled-tonal-button.scss +40 -7
  111. package/tokens/_md-comp-filled-tonal-icon-button.scss +39 -2
  112. package/tokens/_md-comp-filter-chip.scss +40 -7
  113. package/tokens/_md-comp-focus-ring.scss +35 -2
  114. package/tokens/_md-comp-icon-button.scss +20 -1
  115. package/tokens/_md-comp-icon.scss +15 -1
  116. package/tokens/_md-comp-input-chip.scss +40 -7
  117. package/tokens/_md-comp-item.scss +1 -0
  118. package/tokens/_md-comp-linear-progress.scss +20 -2
  119. package/tokens/_md-comp-list-item.scss +17 -2
  120. package/tokens/_md-comp-list.scss +16 -2
  121. package/tokens/_md-comp-menu-item.scss +17 -2
  122. package/tokens/_md-comp-menu.scss +13 -3
  123. package/tokens/_md-comp-navigation-bar.scss +23 -2
  124. package/tokens/_md-comp-navigation-drawer.scss +23 -2
  125. package/tokens/_md-comp-outlined-button.scss +40 -7
  126. package/tokens/_md-comp-outlined-card.scss +20 -1
  127. package/tokens/_md-comp-outlined-field.scss +36 -2
  128. package/tokens/_md-comp-outlined-icon-button.scss +39 -2
  129. package/tokens/_md-comp-outlined-segmented-button.scss +36 -2
  130. package/tokens/_md-comp-outlined-select.scss +36 -3
  131. package/tokens/_md-comp-outlined-text-field.scss +55 -3
  132. package/tokens/_md-comp-primary-tab.scss +33 -2
  133. package/tokens/_md-comp-radio.scss +16 -1
  134. package/tokens/_md-comp-ripple.scss +12 -2
  135. package/tokens/_md-comp-secondary-tab.scss +30 -1
  136. package/tokens/_md-comp-slider.scss +13 -1
  137. package/tokens/_md-comp-suggestion-chip.scss +40 -7
  138. package/tokens/_md-comp-switch.scss +43 -2
  139. package/tokens/_md-comp-text-button.scss +40 -7
  140. package/tokens/internal/_shape.scss +93 -0
  141. package/tokens/internal/_validate.scss +1 -1
@@ -4,6 +4,11 @@
4
4
  //
5
5
 
6
6
  // go/keep-sorted start
7
+ @use 'sass:map';
8
+ @use 'sass:string';
9
+ // go/keep-sorted end
10
+ // go/keep-sorted start
11
+ @use './internal/shape';
7
12
  @use './internal/validate';
8
13
  @use './md-sys-color';
9
14
  @use './md-sys-shape';
@@ -15,6 +20,10 @@ $supported-tokens: (
15
20
  // go/keep-sorted start
16
21
  'container-height',
17
22
  'container-shape',
23
+ 'container-shape-end-end',
24
+ 'container-shape-end-start',
25
+ 'container-shape-start-end',
26
+ 'container-shape-start-start',
18
27
  'container-width',
19
28
  'disabled-icon-color',
20
29
  'disabled-icon-opacity',
@@ -57,11 +66,22 @@ $_default: (
57
66
  'md-sys-state': md-sys-state.values(),
58
67
  );
59
68
 
60
- @function values($deps: $_default, $exclude-hardcoded-values: false) {
69
+ @function values(
70
+ $deps: $_default,
71
+ $exclude-hardcoded-values: false,
72
+ $exclude-custom-properties: true
73
+ ) {
74
+ $tokens: md-comp-outlined-icon-button.values(
75
+ $deps,
76
+ $exclude-hardcoded-values
77
+ );
78
+
79
+ $new-tokens: shape.get-new-logical-shape-tokens($tokens, 'container-shape');
61
80
  $tokens: validate.values(
62
- md-comp-outlined-icon-button.values($deps, $exclude-hardcoded-values),
81
+ $tokens,
63
82
  $supported-tokens: $supported-tokens,
64
83
  $unsupported-tokens: $unsupported-tokens,
84
+ $new-tokens: $new-tokens,
65
85
  $renamed-tokens: (
66
86
  // TODO(b/292244480): remove default unselected prefix
67
87
  'disabled-unselected-outline-color': 'disabled-outline-color',
@@ -78,5 +98,22 @@ $_default: (
78
98
  )
79
99
  );
80
100
 
101
+ // Default to `$exclude-custom-properties: false` in the next breaking change.
102
+ // See b/321816473.
103
+ @if not $exclude-custom-properties {
104
+ @each $token, $value in $tokens {
105
+ @if string.index($token, 'container-shape-') == 1 {
106
+ // Add fallback to shorthand for logical shape properties.
107
+ $value: var(--md-outlined-icon-button-container-shape, #{$value});
108
+ }
109
+
110
+ $tokens: map.set(
111
+ $tokens,
112
+ $token,
113
+ var(--md-outlined-icon-button-#{$token}, #{$value})
114
+ );
115
+ }
116
+ }
117
+
81
118
  @return $tokens;
82
119
  }
@@ -4,8 +4,10 @@
4
4
 
5
5
  // go/keep-sorted start
6
6
  @use 'sass:map';
7
+ @use 'sass:string';
7
8
  // go/keep-sorted end
8
9
  // go/keep-sorted start
10
+ @use './internal/shape';
9
11
  @use './internal/validate';
10
12
  @use './md-sys-color';
11
13
  @use './md-sys-shape';
@@ -40,6 +42,10 @@ $supported-tokens: (
40
42
  'selected-pressed-label-text-color',
41
43
  'selected-pressed-state-layer-color',
42
44
  'shape',
45
+ 'shape-end-end',
46
+ 'shape-end-start',
47
+ 'shape-start-end',
48
+ 'shape-start-start',
43
49
  'unselected-focus-icon-color',
44
50
  'unselected-focus-label-text-color',
45
51
  'unselected-hover-icon-color',
@@ -74,11 +80,22 @@ $_default: (
74
80
  'md-sys-typescale': md-sys-typescale.values(),
75
81
  );
76
82
 
77
- @function values($deps: $_default, $exclude-hardcoded-values: false) {
83
+ @function values(
84
+ $deps: $_default,
85
+ $exclude-hardcoded-values: false,
86
+ $exclude-custom-properties: true
87
+ ) {
88
+ $tokens: md-comp-outlined-segmented-button.values(
89
+ $deps,
90
+ $exclude-hardcoded-values
91
+ );
92
+
93
+ $new-tokens: shape.get-new-logical-shape-tokens($tokens, 'shape');
78
94
  $tokens: validate.values(
79
- md-comp-outlined-segmented-button.values($deps, $exclude-hardcoded-values),
95
+ $tokens,
80
96
  $supported-tokens: $supported-tokens,
81
97
  $unsupported-tokens: $unsupported-tokens,
98
+ $new-tokens: $new-tokens,
82
99
  $renamed-tokens: (
83
100
  // Remove "with-*" prefixes (b/273534858)
84
101
  'with-icon-icon-size': 'icon-size',
@@ -87,5 +104,22 @@ $_default: (
87
104
  )
88
105
  );
89
106
 
107
+ // Default to `$exclude-custom-properties: false` in the next breaking change.
108
+ // See b/321816473.
109
+ @if not $exclude-custom-properties {
110
+ @each $token, $value in $tokens {
111
+ @if string.index($token, 'shape-') == 1 {
112
+ // Add fallback to shorthand for logical shape properties.
113
+ $value: var(--md-outlined-segmented-button-shape, #{$value});
114
+ }
115
+
116
+ $tokens: map.set(
117
+ $tokens,
118
+ $token,
119
+ var(--md-outlined-segmented-button-#{$token}, #{$value})
120
+ );
121
+ }
122
+ }
123
+
90
124
  @return $tokens;
91
125
  }
@@ -8,6 +8,7 @@
8
8
  @use 'sass:string';
9
9
  // go/keep-sorted end
10
10
  // go/keep-sorted start
11
+ @use './internal/shape';
11
12
  @use './internal/validate';
12
13
  @use './md-sys-color';
13
14
  @use './md-sys-elevation';
@@ -20,6 +21,10 @@
20
21
  $supported-tokens: (
21
22
  // go/keep-sorted start
22
23
  'text-field-container-shape',
24
+ 'text-field-container-shape-end-end',
25
+ 'text-field-container-shape-end-start',
26
+ 'text-field-container-shape-start-end',
27
+ 'text-field-container-shape-start-start',
23
28
  'text-field-disabled-input-text-color',
24
29
  'text-field-disabled-input-text-opacity',
25
30
  'text-field-disabled-label-text-color',
@@ -136,11 +141,22 @@ $_default: (
136
141
  'md-sys-typescale': md-sys-typescale.values(),
137
142
  );
138
143
 
139
- @function values($deps: $_default, $exclude-hardcoded-values: false) {
144
+ @function values(
145
+ $deps: $_default,
146
+ $exclude-hardcoded-values: false,
147
+ $exclude-custom-properties: true
148
+ ) {
149
+ $tokens: md-comp-outlined-select.values($deps, $exclude-hardcoded-values);
150
+ $new-tokens: shape.get-new-logical-shape-tokens(
151
+ $tokens,
152
+ 'text-field-container-shape'
153
+ );
154
+
140
155
  $tokens: validate.values(
141
- md-comp-outlined-select.values($deps, $exclude-hardcoded-values),
156
+ $tokens,
142
157
  $supported-tokens: $supported-tokens,
143
- $unsupported-tokens: $unsupported-tokens
158
+ $unsupported-tokens: $unsupported-tokens,
159
+ $new-tokens: $new-tokens
144
160
  );
145
161
 
146
162
  $tokens: map.merge(
@@ -151,5 +167,22 @@ $_default: (
151
167
  )
152
168
  );
153
169
 
170
+ // Default to `$exclude-custom-properties: false` in the next breaking change.
171
+ // See b/321816473.
172
+ @if not $exclude-custom-properties {
173
+ @each $token, $value in $tokens {
174
+ @if string.index($token, 'text-field-container-shape-') == 1 {
175
+ // Add fallback to shorthand for logical shape properties.
176
+ $value: var(--md-outlined-select-text-field-container-shape, #{$value});
177
+ }
178
+
179
+ $tokens: map.set(
180
+ $tokens,
181
+ $token,
182
+ var(--md-outlined-select-#{$token}, #{$value})
183
+ );
184
+ }
185
+ }
186
+
154
187
  @return $tokens;
155
188
  }
@@ -5,8 +5,10 @@
5
5
 
6
6
  // go/keep-sorted start
7
7
  @use 'sass:map';
8
+ @use 'sass:string';
8
9
  // go/keep-sorted end
9
10
  // go/keep-sorted start
11
+ @use './internal/shape';
10
12
  @use './internal/validate';
11
13
  @use './md-sys-color';
12
14
  @use './md-sys-shape';
@@ -16,8 +18,13 @@
16
18
 
17
19
  $supported-tokens: (
18
20
  // go/keep-sorted start
21
+ 'bottom-space',
19
22
  'caret-color',
20
23
  'container-shape',
24
+ 'container-shape-end-end',
25
+ 'container-shape-end-start',
26
+ 'container-shape-start-end',
27
+ 'container-shape-start-start',
21
28
  'disabled-input-text-color',
22
29
  'disabled-input-text-opacity',
23
30
  'disabled-label-text-color',
@@ -50,6 +57,7 @@ $supported-tokens: (
50
57
  'error-outline-color',
51
58
  'error-supporting-text-color',
52
59
  'error-trailing-icon-color',
60
+ 'focus-caret-color',
53
61
  'focus-input-text-color',
54
62
  'focus-label-text-color',
55
63
  'focus-leading-icon-color',
@@ -69,8 +77,10 @@ $supported-tokens: (
69
77
  'input-text-line-height',
70
78
  'input-text-placeholder-color',
71
79
  'input-text-prefix-color',
80
+ 'input-text-prefix-trailing-space',
72
81
  'input-text-size',
73
82
  'input-text-suffix-color',
83
+ 'input-text-suffix-leading-space',
74
84
  'input-text-weight',
75
85
  'label-text-color',
76
86
  'label-text-font',
@@ -81,6 +91,7 @@ $supported-tokens: (
81
91
  'label-text-weight',
82
92
  'leading-icon-color',
83
93
  'leading-icon-size',
94
+ 'leading-space',
84
95
  'outline-color',
85
96
  'outline-width',
86
97
  'supporting-text-color',
@@ -88,8 +99,10 @@ $supported-tokens: (
88
99
  'supporting-text-line-height',
89
100
  'supporting-text-size',
90
101
  'supporting-text-weight',
102
+ 'top-space',
91
103
  'trailing-icon-color',
92
104
  'trailing-icon-size',
105
+ 'trailing-space',
93
106
  // go/keep-sorted end
94
107
  );
95
108
 
@@ -110,11 +123,33 @@ $_default: (
110
123
  'md-sys-typescale': md-sys-typescale.values(),
111
124
  );
112
125
 
113
- @function values($deps: $_default, $exclude-hardcoded-values: false) {
126
+ @function values(
127
+ $deps: $_default,
128
+ $exclude-hardcoded-values: false,
129
+ $exclude-custom-properties: true
130
+ ) {
131
+ $tokens: md-comp-outlined-text-field.values($deps, $exclude-hardcoded-values);
132
+ $new-tokens: map.merge(
133
+ shape.get-new-logical-shape-tokens($tokens, 'container-shape'),
134
+ (
135
+ 'leading-space': if($exclude-hardcoded-values, null, 16px),
136
+ 'trailing-space': if($exclude-hardcoded-values, null, 16px),
137
+ 'top-space': if($exclude-hardcoded-values, null, 16px),
138
+ 'bottom-space': if($exclude-hardcoded-values, null, 16px),
139
+ 'input-text-prefix-trailing-space':
140
+ if($exclude-hardcoded-values, null, 2px),
141
+ 'input-text-suffix-leading-space':
142
+ if($exclude-hardcoded-values, null, 2px),
143
+ // TODO(b/270705687): remove when focus-caret-color token added
144
+ 'focus-caret-color': map.get($deps, 'md-sys-color', 'primary'),
145
+ )
146
+ );
147
+
114
148
  $tokens: validate.values(
115
- md-comp-outlined-text-field.values($deps, $exclude-hardcoded-values),
149
+ $tokens,
116
150
  $supported-tokens: $supported-tokens,
117
- $unsupported-tokens: $unsupported-tokens
151
+ $unsupported-tokens: $unsupported-tokens,
152
+ $new-tokens: $new-tokens
118
153
  );
119
154
 
120
155
  $tokens: map.merge(
@@ -125,5 +160,22 @@ $_default: (
125
160
  )
126
161
  );
127
162
 
163
+ // Default to `$exclude-custom-properties: false` in the next breaking change.
164
+ // See b/321816473.
165
+ @if not $exclude-custom-properties {
166
+ @each $token, $value in $tokens {
167
+ @if string.index($token, 'container-shape-') == 1 {
168
+ // Add fallback to shorthand for logical shape properties.
169
+ $value: var(--md-outlined-text-field-container-shape, #{$value});
170
+ }
171
+
172
+ $tokens: map.set(
173
+ $tokens,
174
+ $token,
175
+ var(--md-outlined-text-field-#{$token}, #{$value})
176
+ );
177
+ }
178
+ }
179
+
128
180
  @return $tokens;
129
181
  }
@@ -5,8 +5,10 @@
5
5
 
6
6
  // go/keep-sorted start
7
7
  @use 'sass:map';
8
+ @use 'sass:string';
8
9
  // go/keep-sorted end
9
10
  // go/keep-sorted start
11
+ @use './internal/shape';
10
12
  @use './internal/validate';
11
13
  @use './md-sys-color';
12
14
  @use './md-sys-elevation';
@@ -37,6 +39,10 @@ $supported-tokens: (
37
39
  'container-elevation',
38
40
  'container-height',
39
41
  'container-shape',
42
+ 'container-shape-end-end',
43
+ 'container-shape-end-start',
44
+ 'container-shape-start-end',
45
+ 'container-shape-start-start',
40
46
  'focus-icon-color',
41
47
  'focus-label-text-color',
42
48
  'hover-icon-color',
@@ -77,16 +83,22 @@ $_default: (
77
83
  'md-sys-typescale': md-sys-typescale.values(),
78
84
  );
79
85
 
80
- @function values($deps: $_default, $exclude-hardcoded-values: false) {
86
+ @function values(
87
+ $deps: $_default,
88
+ $exclude-hardcoded-values: false,
89
+ $exclude-custom-properties: true
90
+ ) {
81
91
  $tokens: md-comp-primary-navigation-tab.values(
82
92
  $deps,
83
93
  $exclude-hardcoded-values: $exclude-hardcoded-values
84
94
  );
85
95
 
86
- @return validate.values(
96
+ $new-tokens: shape.get-new-logical-shape-tokens($tokens, 'container-shape');
97
+ $tokens: validate.values(
87
98
  $tokens,
88
99
  $supported-tokens: $supported-tokens,
89
100
  $unsupported-tokens: $unsupported-tokens,
101
+ $new-tokens: $new-tokens,
90
102
  $renamed-tokens: (
91
103
  // rename inactive-
92
104
  'inactive-focus-state-layer-color': 'focus-state-layer-color',
@@ -128,4 +140,23 @@ $_default: (
128
140
  'with-label-text-label-text-type': 'label-text-type'
129
141
  )
130
142
  );
143
+
144
+ // Default to `$exclude-custom-properties: false` in the next breaking change.
145
+ // See b/321816473.
146
+ @if not $exclude-custom-properties {
147
+ @each $token, $value in $tokens {
148
+ @if string.index($token, 'container-shape-') == 1 {
149
+ // Add fallback to shorthand for logical shape properties.
150
+ $value: var(--md-primary-tab-container-shape, #{$value});
151
+ }
152
+
153
+ $tokens: map.set(
154
+ $tokens,
155
+ $token,
156
+ var(--md-primary-tab-#{$token}, #{$value})
157
+ );
158
+ }
159
+ }
160
+
161
+ @return $tokens;
131
162
  }
@@ -3,6 +3,9 @@
3
3
  // SPDX-License-Identifier: Apache-2.0
4
4
  //
5
5
 
6
+ // go/keep-sorted start
7
+ @use 'sass:map';
8
+ // go/keep-sorted end
6
9
  // go/keep-sorted start
7
10
  @use './internal/validate';
8
11
  @use './md-sys-color';
@@ -51,7 +54,11 @@ $_default: (
51
54
  'md-sys-state': md-sys-state.values(),
52
55
  );
53
56
 
54
- @function values($deps: $_default, $exclude-hardcoded-values: false) {
57
+ @function values(
58
+ $deps: $_default,
59
+ $exclude-hardcoded-values: false,
60
+ $exclude-custom-properties: true
61
+ ) {
55
62
  $tokens: validate.values(
56
63
  md-comp-radio-button.values($deps, $exclude-hardcoded-values),
57
64
  $supported-tokens: $supported-tokens,
@@ -69,5 +76,13 @@ $_default: (
69
76
  )
70
77
  );
71
78
 
79
+ // Default to `$exclude-custom-properties: false` in the next breaking change.
80
+ // See b/321816473.
81
+ @if not $exclude-custom-properties {
82
+ @each $token, $value in $tokens {
83
+ $tokens: map.set($tokens, $token, var(--md-radio-#{$token}, #{$value}));
84
+ }
85
+ }
86
+
72
87
  @return $tokens;
73
88
  }
@@ -27,7 +27,7 @@ $_default: (
27
27
  'md-sys-state': md-sys-state.values(),
28
28
  );
29
29
 
30
- @function values($deps: $_default) {
30
+ @function values($deps: $_default, $exclude-custom-properties: true) {
31
31
  $tokens: (
32
32
  'hover-color': map.get($deps, 'md-sys-color', 'on-surface'),
33
33
  'hover-opacity': map.get($deps, 'md-sys-state', 'hover-state-layer-opacity'),
@@ -36,5 +36,15 @@ $_default: (
36
36
  map.get($deps, 'md-sys-state', 'pressed-state-layer-opacity'),
37
37
  );
38
38
 
39
- @return validate.values($tokens, $supported-tokens: $supported-tokens);
39
+ $tokens: validate.values($tokens, $supported-tokens: $supported-tokens);
40
+
41
+ // Default to `$exclude-custom-properties: false` in the next breaking change.
42
+ // See b/321816473.
43
+ @if not $exclude-custom-properties {
44
+ @each $token, $value in $tokens {
45
+ $tokens: map.set($tokens, $token, var(--md-ripple-#{$token}, #{$value}));
46
+ }
47
+ }
48
+
49
+ @return $tokens;
40
50
  }
@@ -5,8 +5,10 @@
5
5
 
6
6
  // go/keep-sorted start
7
7
  @use 'sass:map';
8
+ @use 'sass:string';
8
9
  // go/keep-sorted end
9
10
  // go/keep-sorted start
11
+ @use './internal/shape';
10
12
  @use './internal/validate';
11
13
  @use './md-sys-color';
12
14
  @use './md-sys-elevation';
@@ -37,6 +39,10 @@ $supported-tokens: (
37
39
  'container-elevation',
38
40
  'container-height',
39
41
  'container-shape',
42
+ 'container-shape-end-end',
43
+ 'container-shape-end-start',
44
+ 'container-shape-start-end',
45
+ 'container-shape-start-start',
40
46
  'focus-icon-color',
41
47
  'focus-label-text-color',
42
48
  'hover-icon-color',
@@ -75,18 +81,24 @@ $_default: (
75
81
  'md-sys-typescale': md-sys-typescale.values(),
76
82
  );
77
83
 
78
- @function values($deps: $_default, $exclude-hardcoded-values: false) {
84
+ @function values(
85
+ $deps: $_default,
86
+ $exclude-hardcoded-values: false,
87
+ $exclude-custom-properties: true
88
+ ) {
79
89
  $tokens: md-comp-secondary-navigation-tab.values(
80
90
  $deps,
81
91
  $exclude-hardcoded-values: $exclude-hardcoded-values
82
92
  );
83
93
 
84
94
  $tokens: _add-missing-secondary-tokens($tokens);
95
+ $new-tokens: shape.get-new-logical-shape-tokens($tokens, 'container-shape');
85
96
 
86
97
  $tokens: validate.values(
87
98
  $tokens,
88
99
  $supported-tokens: $supported-tokens,
89
100
  $unsupported-tokens: $unsupported-tokens,
101
+ $new-tokens: $new-tokens,
90
102
  $renamed-tokens: (
91
103
  'inactive-label-text-color': 'label-text-color',
92
104
  'with-icon-active-icon-color': 'active-icon-color',
@@ -98,6 +110,23 @@ $_default: (
98
110
  )
99
111
  );
100
112
 
113
+ // Default to `$exclude-custom-properties: false` in the next breaking change.
114
+ // See b/321816473.
115
+ @if not $exclude-custom-properties {
116
+ @each $token, $value in $tokens {
117
+ @if string.index($token, 'container-shape-') == 1 {
118
+ // Add fallback to shorthand for logical shape properties.
119
+ $value: var(--md-secondary-tab-container-shape, #{$value});
120
+ }
121
+
122
+ $tokens: map.set(
123
+ $tokens,
124
+ $token,
125
+ var(--md-secondary-tab-#{$token}, #{$value})
126
+ );
127
+ }
128
+ }
129
+
101
130
  @return $tokens;
102
131
  }
103
132
 
@@ -87,7 +87,11 @@ $_default: (
87
87
  'md-sys-typescale': md-sys-typescale.values(),
88
88
  );
89
89
 
90
- @function values($deps: $_default, $exclude-hardcoded-values: false) {
90
+ @function values(
91
+ $deps: $_default,
92
+ $exclude-hardcoded-values: false,
93
+ $exclude-custom-properties: true
94
+ ) {
91
95
  $tokens: validate.values(
92
96
  md-comp-slider.values($deps, $exclude-hardcoded-values),
93
97
  $supported-tokens: $supported-tokens,
@@ -103,5 +107,13 @@ $_default: (
103
107
  )
104
108
  );
105
109
 
110
+ // Default to `$exclude-custom-properties: false` in the next breaking change.
111
+ // See b/321816473.
112
+ @if not $exclude-custom-properties {
113
+ @each $token, $value in $tokens {
114
+ $tokens: map.set($tokens, $token, var(--md-slider-#{$token}, #{$value}));
115
+ }
116
+ }
117
+
106
118
  @return $tokens;
107
119
  }
@@ -5,8 +5,10 @@
5
5
 
6
6
  // go/keep-sorted start
7
7
  @use 'sass:map';
8
+ @use 'sass:string';
8
9
  // go/keep-sorted end
9
10
  // go/keep-sorted start
11
+ @use './internal/shape';
10
12
  @use './internal/validate';
11
13
  @use './md-sys-color';
12
14
  @use './md-sys-elevation';
@@ -20,6 +22,10 @@ $supported-tokens: (
20
22
  // go/keep-sorted start
21
23
  'container-height',
22
24
  'container-shape',
25
+ 'container-shape-end-end',
26
+ 'container-shape-end-start',
27
+ 'container-shape-start-end',
28
+ 'container-shape-start-start',
23
29
  'disabled-label-text-color',
24
30
  'disabled-label-text-opacity',
25
31
  'disabled-leading-icon-color',
@@ -85,18 +91,28 @@ $_default: (
85
91
  'md-sys-typescale': md-sys-typescale.values(),
86
92
  );
87
93
 
88
- @function values($deps: $_default, $exclude-hardcoded-values: false) {
89
- $tokens: validate.values(
90
- md-comp-suggestion-chip.values($deps, $exclude-hardcoded-values),
91
- $supported-tokens: $supported-tokens,
92
- $unsupported-tokens: $unsupported-tokens,
93
- $new-tokens: (
94
+ @function values(
95
+ $deps: $_default,
96
+ $exclude-hardcoded-values: false,
97
+ $exclude-custom-properties: true
98
+ ) {
99
+ $tokens: md-comp-suggestion-chip.values($deps, $exclude-hardcoded-values);
100
+ $new-tokens: map.merge(
101
+ shape.get-new-logical-shape-tokens($tokens, 'container-shape'),
102
+ (
94
103
  'leading-space': if($exclude-hardcoded-values, null, 16px),
95
104
  'trailing-space': if($exclude-hardcoded-values, null, 16px),
96
105
  'icon-label-space': if($exclude-hardcoded-values, null, 8px),
97
106
  'with-leading-icon-leading-space':
98
107
  if($exclude-hardcoded-values, null, 8px),
99
- ),
108
+ )
109
+ );
110
+
111
+ $tokens: validate.values(
112
+ $tokens,
113
+ $supported-tokens: $supported-tokens,
114
+ $unsupported-tokens: $unsupported-tokens,
115
+ $new-tokens: $new-tokens,
100
116
  $renamed-tokens: (
101
117
  // Remove "flat-*" prefix (b/275577569)
102
118
  'flat-container-elevation': 'container-elevation',
@@ -122,5 +138,22 @@ $_default: (
122
138
  )
123
139
  );
124
140
 
141
+ // Default to `$exclude-custom-properties: false` in the next breaking change.
142
+ // See b/321816473.
143
+ @if not $exclude-custom-properties {
144
+ @each $token, $value in $tokens {
145
+ @if string.index($token, 'container-shape-') == 1 {
146
+ // Add fallback to shorthand for logical shape properties.
147
+ $value: var(--md-suggestion-chip-container-shape, #{$value});
148
+ }
149
+
150
+ $tokens: map.set(
151
+ $tokens,
152
+ $token,
153
+ var(--md-suggestion-chip-#{$token}, #{$value})
154
+ );
155
+ }
156
+ }
157
+
125
158
  @return $tokens;
126
159
  }