@angular/material 18.0.3 → 18.0.5

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 (136) hide show
  1. package/autocomplete/index.d.ts +3 -0
  2. package/bottom-sheet/index.d.ts +0 -1
  3. package/button/_button-base.scss +3 -1
  4. package/button/index.d.ts +7 -1
  5. package/button-toggle/index.d.ts +2 -2
  6. package/checkbox/index.d.ts +5 -3
  7. package/chips/index.d.ts +9 -5
  8. package/core/_core-theme.scss +8 -14
  9. package/core/_core.scss +18 -4
  10. package/core/style/_vendor-prefixes.scss +5 -0
  11. package/core/tokens/_density.scss +2 -1
  12. package/core/tokens/m2/_index.scss +2 -2
  13. package/core/tokens/m2/mat/_app.scss +13 -1
  14. package/core/tokens/m2/mat/_menu.scss +3 -0
  15. package/core/tokens/m2/mat/_paginator.scss +1 -0
  16. package/core/tokens/m2/mdc/{_tab.scss → _secondary-navigation-tab.scss} +1 -1
  17. package/core/tokens/m3/_index.scss +2 -2
  18. package/core/tokens/m3/mat/_app.scss +9 -0
  19. package/core/tokens/m3/mat/_menu.scss +3 -0
  20. package/core/tokens/m3/mdc/{_tab.scss → _secondary-navigation-tab.scss} +1 -1
  21. package/datepicker/index.d.ts +17 -1
  22. package/esm2022/autocomplete/autocomplete-trigger.mjs +28 -1
  23. package/esm2022/bottom-sheet/bottom-sheet-container.mjs +6 -7
  24. package/esm2022/button/button-base.mjs +1 -1
  25. package/esm2022/button/button.mjs +4 -4
  26. package/esm2022/button/fab.mjs +8 -8
  27. package/esm2022/button/icon-button.mjs +4 -4
  28. package/esm2022/button-toggle/button-toggle.mjs +30 -21
  29. package/esm2022/checkbox/checkbox.mjs +1 -1
  30. package/esm2022/chips/chip-grid.mjs +11 -4
  31. package/esm2022/chips/chip-row.mjs +8 -13
  32. package/esm2022/chips/chip-set.mjs +7 -3
  33. package/esm2022/chips/chip.mjs +1 -1
  34. package/esm2022/core/option/optgroup.mjs +2 -2
  35. package/esm2022/core/option/option.mjs +3 -3
  36. package/esm2022/core/version.mjs +1 -1
  37. package/esm2022/datepicker/calendar.mjs +6 -3
  38. package/esm2022/datepicker/date-range-input-parts.mjs +14 -10
  39. package/esm2022/datepicker/date-range-input.mjs +17 -7
  40. package/esm2022/datepicker/datepicker-base.mjs +5 -1
  41. package/esm2022/datepicker/datepicker-input.mjs +16 -5
  42. package/esm2022/form-field/form-field.mjs +12 -6
  43. package/esm2022/icon/icon.mjs +8 -2
  44. package/esm2022/list/list-option.mjs +10 -4
  45. package/esm2022/list/selection-list.mjs +9 -2
  46. package/esm2022/menu/menu.mjs +13 -4
  47. package/esm2022/paginator/paginator.mjs +3 -3
  48. package/esm2022/progress-bar/progress-bar.mjs +10 -4
  49. package/esm2022/progress-spinner/progress-spinner.mjs +8 -2
  50. package/esm2022/radio/radio.mjs +12 -6
  51. package/esm2022/sidenav/drawer.mjs +4 -1
  52. package/esm2022/slide-toggle/slide-toggle-config.mjs +1 -1
  53. package/esm2022/slide-toggle/slide-toggle.mjs +1 -1
  54. package/esm2022/slider/slider.mjs +1 -1
  55. package/esm2022/stepper/step-header.mjs +1 -1
  56. package/esm2022/stepper/stepper.mjs +1 -1
  57. package/esm2022/tabs/tab-group.mjs +9 -4
  58. package/esm2022/tabs/tab-header.mjs +3 -3
  59. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +19 -7
  60. package/esm2022/toolbar/toolbar.mjs +1 -1
  61. package/esm2022/tooltip/tooltip.mjs +3 -3
  62. package/fesm2022/autocomplete.mjs +27 -0
  63. package/fesm2022/autocomplete.mjs.map +1 -1
  64. package/fesm2022/bottom-sheet.mjs +5 -6
  65. package/fesm2022/bottom-sheet.mjs.map +1 -1
  66. package/fesm2022/button-toggle.mjs +29 -20
  67. package/fesm2022/button-toggle.mjs.map +1 -1
  68. package/fesm2022/button.mjs +16 -16
  69. package/fesm2022/button.mjs.map +1 -1
  70. package/fesm2022/checkbox.mjs.map +1 -1
  71. package/fesm2022/chips.mjs +15 -9
  72. package/fesm2022/chips.mjs.map +1 -1
  73. package/fesm2022/core.mjs +5 -5
  74. package/fesm2022/core.mjs.map +1 -1
  75. package/fesm2022/datepicker.mjs +42 -10
  76. package/fesm2022/datepicker.mjs.map +1 -1
  77. package/fesm2022/form-field.mjs +9 -3
  78. package/fesm2022/form-field.mjs.map +1 -1
  79. package/fesm2022/icon.mjs +7 -1
  80. package/fesm2022/icon.mjs.map +1 -1
  81. package/fesm2022/list.mjs +17 -4
  82. package/fesm2022/list.mjs.map +1 -1
  83. package/fesm2022/menu.mjs +12 -3
  84. package/fesm2022/menu.mjs.map +1 -1
  85. package/fesm2022/paginator.mjs +2 -2
  86. package/fesm2022/paginator.mjs.map +1 -1
  87. package/fesm2022/progress-bar.mjs +9 -3
  88. package/fesm2022/progress-bar.mjs.map +1 -1
  89. package/fesm2022/progress-spinner.mjs +7 -1
  90. package/fesm2022/progress-spinner.mjs.map +1 -1
  91. package/fesm2022/radio.mjs +11 -5
  92. package/fesm2022/radio.mjs.map +1 -1
  93. package/fesm2022/sidenav.mjs +4 -1
  94. package/fesm2022/sidenav.mjs.map +1 -1
  95. package/fesm2022/slide-toggle.mjs.map +1 -1
  96. package/fesm2022/slider.mjs.map +1 -1
  97. package/fesm2022/stepper.mjs.map +1 -1
  98. package/fesm2022/tabs.mjs +28 -11
  99. package/fesm2022/tabs.mjs.map +1 -1
  100. package/fesm2022/toolbar.mjs.map +1 -1
  101. package/fesm2022/tooltip.mjs +2 -2
  102. package/fesm2022/tooltip.mjs.map +1 -1
  103. package/form-field/index.d.ts +12 -2
  104. package/icon/index.d.ts +14 -2
  105. package/list/_list-theme.scss +8 -5
  106. package/list/index.d.ts +15 -2
  107. package/package.json +2 -2
  108. package/paginator/index.d.ts +7 -1
  109. package/prebuilt-themes/azure-blue.css +1 -1
  110. package/prebuilt-themes/cyan-orange.css +1 -1
  111. package/prebuilt-themes/deeppurple-amber.css +1 -1
  112. package/prebuilt-themes/indigo-pink.css +1 -1
  113. package/prebuilt-themes/magenta-violet.css +1 -1
  114. package/prebuilt-themes/pink-bluegrey.css +1 -1
  115. package/prebuilt-themes/purple-green.css +1 -1
  116. package/prebuilt-themes/rose-red.css +1 -1
  117. package/progress-bar/_progress-bar-theme.scss +10 -7
  118. package/progress-bar/index.d.ts +14 -2
  119. package/progress-spinner/index.d.ts +14 -2
  120. package/radio/_radio-common.scss +238 -0
  121. package/radio/_radio-theme.scss +25 -32
  122. package/radio/index.d.ts +21 -2
  123. package/schematics/ng-add/index.js +1 -1
  124. package/schematics/ng-add/index.mjs +1 -1
  125. package/schematics/ng-generate/m3-theme/index_bundled.js +2 -2
  126. package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +1 -1
  127. package/schematics/ng-update/index_bundled.js +31 -31
  128. package/sidenav/index.d.ts +1 -0
  129. package/slide-toggle/index.d.ts +14 -2
  130. package/slider/index.d.ts +7 -1
  131. package/stepper/index.d.ts +21 -3
  132. package/tabs/_tabs-common.scss +94 -36
  133. package/tabs/_tabs-theme.scss +33 -25
  134. package/tabs/index.d.ts +27 -4
  135. package/toolbar/index.d.ts +7 -1
  136. package/tooltip/_tooltip-theme.scss +18 -16
@@ -91,7 +91,13 @@ export declare class MatStep extends CdkStep implements ErrorStateMatcher, After
91
91
  private _isSelected;
92
92
  /** Content for step label given by `<ng-template matStepLabel>`. */
93
93
  stepLabel: MatStepLabel;
94
- /** Theme color for the particular step. */
94
+ /**
95
+ * Theme color for the particular step. This API is supported in M2 themes
96
+ * only, it has no effect in M3 themes.
97
+ *
98
+ * For information on applying color variants in M3, see
99
+ * https://material.angular.io/guide/theming#using-component-color-variants.
100
+ */
95
101
  color: ThemePalette;
96
102
  /** Content that will be rendered lazily. */
97
103
  _lazyContent: MatStepContent;
@@ -140,7 +146,13 @@ export declare class MatStepHeader extends CdkStepHeader implements AfterViewIni
140
146
  optional: boolean;
141
147
  /** Whether the ripple should be disabled. */
142
148
  disableRipple: boolean;
143
- /** Theme palette color of the step header. */
149
+ /**
150
+ * Theme color of the step header. This API is supported in M2 themes only, it
151
+ * has no effect in M3 themes.
152
+ *
153
+ * For information on applying color variants in M3, see
154
+ * https://material.angular.io/guide/theming#using-component-color-variants.
155
+ */
144
156
  color: ThemePalette;
145
157
  constructor(_intl: MatStepperIntl, _focusMonitor: FocusMonitor, _elementRef: ElementRef<HTMLElement>, changeDetectorRef: ChangeDetectorRef);
146
158
  ngAfterViewInit(): void;
@@ -178,7 +190,13 @@ export declare class MatStepper extends CdkStepper implements AfterContentInit {
178
190
  readonly animationDone: EventEmitter<void>;
179
191
  /** Whether ripples should be disabled for the step headers. */
180
192
  disableRipple: boolean;
181
- /** Theme color for all of the steps in stepper. */
193
+ /**
194
+ * Theme color for all of the steps in stepper. This API is supported in M2
195
+ * themes only, it has no effect in M3 themes.
196
+ *
197
+ * For information on applying color variants in M3, see
198
+ * https://material.angular.io/guide/theming#using-component-color-variants.
199
+ */
182
200
  color: ThemePalette;
183
201
  /**
184
202
  * Whether the label should display in bottom or end position.
@@ -1,29 +1,86 @@
1
- @use '@material/ripple' as mdc-ripple;
2
- @use '@material/tab' as mdc-tab;
3
- @use '@material/tab-indicator' as mdc-tab-indicator;
4
- @use '@material/tab-indicator/tab-indicator-theme' as mdc-tab-indicator-theme;
5
- @use '@material/tab/tab-theme' as mdc-tab-theme;
6
- @use '@material/theme/custom-properties' as mdc-custom-properties;
7
- @use '../core/mdc-helpers/mdc-helpers';
8
1
  @use '../core/style/vendor-prefixes';
9
2
  @use '../core/tokens/m2/mdc/tab-indicator' as tokens-mdc-tab-indicator;
10
- @use '../core/tokens/m2/mdc/tab' as tokens-mdc-tab;
3
+ @use '../core/tokens/m2/mdc/secondary-navigation-tab' as tokens-mdc-secondary-navigation-tab;
11
4
  @use '../core/tokens/m2/mat/tab-header' as tokens-mat-tab-header;
12
5
  @use '../core/tokens/m2/mat/tab-header-with-background' as tokens-mat-tab-header-with-background;
13
6
  @use '../core/tokens/token-utils';
14
- @use 'sass:map';
15
7
 
16
8
 
17
9
  $mat-tab-animation-duration: 500ms !default;
18
10
 
19
11
  // Combines the various structural styles we need for the tab group and tab nav bar.
20
12
  @mixin structural-styles {
21
- @include mdc-custom-properties.configure(
22
- $emit-fallback-values: false,
23
- $emit-fallback-vars: false
24
- ) {
25
- @include mdc-tab.static-styles($query: mdc-helpers.$mdc-base-styles-query);
26
- @include mdc-tab-indicator.static-styles($query: mdc-helpers.$mdc-base-styles-query);
13
+ .mdc-tab {
14
+ min-width: 90px;
15
+ padding: 0 24px;
16
+ display: flex;
17
+ flex: 1 0 auto;
18
+ justify-content: center;
19
+ box-sizing: border-box;
20
+ border: none;
21
+ outline: none;
22
+ text-align: center;
23
+ white-space: nowrap;
24
+ cursor: pointer;
25
+ z-index: 1;
26
+ }
27
+
28
+ .mdc-tab__content {
29
+ display: flex;
30
+ align-items: center;
31
+ justify-content: center;
32
+ height: inherit;
33
+ pointer-events: none;
34
+ }
35
+
36
+ .mdc-tab__text-label {
37
+ transition: 150ms color linear;
38
+ display: inline-block;
39
+ line-height: 1;
40
+ z-index: 2;
41
+ }
42
+
43
+ .mdc-tab--active .mdc-tab__text-label {
44
+ transition-delay: 100ms;
45
+ }
46
+
47
+ ._mat-animation-noopable .mdc-tab__text-label {
48
+ transition: none;
49
+ }
50
+
51
+ .mdc-tab-indicator {
52
+ display: flex;
53
+ position: absolute;
54
+ top: 0;
55
+ left: 0;
56
+ justify-content: center;
57
+ width: 100%;
58
+ height: 100%;
59
+ pointer-events: none;
60
+ z-index: 1;
61
+ }
62
+
63
+ .mdc-tab-indicator__content {
64
+ transition: var(--mat-tab-animation-duration, 250ms) transform cubic-bezier(0.4, 0, 0.2, 1);
65
+ transform-origin: left;
66
+ opacity: 0;
67
+ }
68
+
69
+ .mdc-tab-indicator__content--underline {
70
+ align-self: flex-end;
71
+ box-sizing: border-box;
72
+ width: 100%;
73
+ border-top-style: solid;
74
+ }
75
+
76
+ .mdc-tab-indicator--active .mdc-tab-indicator__content {
77
+ opacity: 1;
78
+ }
79
+
80
+ ._mat-animation-noopable, .mdc-tab-indicator--no-transition {
81
+ .mdc-tab-indicator__content {
82
+ transition: none;
83
+ }
27
84
  }
28
85
 
29
86
  .mat-mdc-tab-ripple {
@@ -37,14 +94,6 @@ $mat-tab-animation-duration: 500ms !default;
37
94
  }
38
95
 
39
96
  @mixin tab {
40
- @include mdc-custom-properties.configure(
41
- $emit-fallback-values: false,
42
- $emit-fallback-vars: false
43
- ) {
44
- @include mdc-tab-indicator-theme.theme-styles(tokens-mdc-tab-indicator.get-token-slots());
45
- @include mdc-tab-theme.secondary-navigation-tab-theme-styles(tokens-mdc-tab.get-token-slots());
46
- }
47
-
48
97
  -webkit-tap-highlight-color: transparent;
49
98
  -webkit-font-smoothing: antialiased;
50
99
  -moz-osx-font-smoothing: grayscale;
@@ -53,6 +102,13 @@ $mat-tab-animation-duration: 500ms !default;
53
102
  // Tabs might be `button` elements so we have to reset the user agent styling.
54
103
  background: none;
55
104
 
105
+ @include token-utils.use-tokens(
106
+ tokens-mdc-secondary-navigation-tab.$prefix,
107
+ tokens-mdc-secondary-navigation-tab.get-token-slots()
108
+ ) {
109
+ @include token-utils.create-token-slot(height, container-height);
110
+ }
111
+
56
112
  &.mdc-tab {
57
113
  // MDC's tabs stretch to fit the header by default, whereas stretching on our current ones
58
114
  // is an opt-in behavior. Also technically we don't need to combine the two classes, but
@@ -60,6 +116,17 @@ $mat-tab-animation-duration: 500ms !default;
60
116
  flex-grow: 0;
61
117
  }
62
118
 
119
+ .mdc-tab-indicator__content--underline {
120
+ @include token-utils.use-tokens(
121
+ tokens-mdc-tab-indicator.$prefix,
122
+ tokens-mdc-tab-indicator.get-token-slots()
123
+ ) {
124
+ @include token-utils.create-token-slot(border-color, active-indicator-color);
125
+ @include token-utils.create-token-slot(border-top-width, active-indicator-height);
126
+ @include token-utils.create-token-slot(border-radius, active-indicator-shape);
127
+ }
128
+ }
129
+
63
130
  @include token-utils.use-tokens(
64
131
  tokens-mat-tab-header.$prefix,
65
132
  tokens-mat-tab-header.get-token-slots()
@@ -185,18 +252,18 @@ $mat-tab-animation-duration: 500ms !default;
185
252
 
186
253
  // We need to handle the hover and focus indication ourselves, because we don't use MDC's ripple.
187
254
  &:hover .mdc-tab__ripple::before {
188
- opacity: map.get(mdc-ripple.$dark-ink-opacities, hover);
255
+ opacity: 0.04;
189
256
  }
190
257
 
191
258
  &.cdk-program-focused,
192
259
  &.cdk-keyboard-focused {
193
260
  .mdc-tab__ripple::before {
194
- opacity: map.get(mdc-ripple.$dark-ink-opacities, focus);
261
+ opacity: 0.12;
195
262
  }
196
263
  }
197
264
 
198
265
  .mat-ripple-element {
199
- opacity: map.get(mdc-ripple.$dark-ink-opacities, press);
266
+ opacity: 0.12;
200
267
 
201
268
  @include token-utils.use-tokens(
202
269
  tokens-mat-tab-header.$prefix,
@@ -243,7 +310,7 @@ $mat-tab-animation-duration: 500ms !default;
243
310
  }
244
311
 
245
312
  .mat-ripple-element {
246
- opacity: map.get(mdc-ripple.$dark-ink-opacities, press);
313
+ opacity: 0.12;
247
314
 
248
315
  @include token-utils.use-tokens(
249
316
  tokens-mat-tab-header.$prefix,
@@ -309,15 +376,6 @@ $mat-tab-animation-duration: 500ms !default;
309
376
  transition: none;
310
377
  }
311
378
  }
312
-
313
- // The `span` is in the selector in order to increase the specificity, ensuring
314
- // that it's always higher than the selector that declares the transition.
315
- ._mat-animation-noopable {
316
- span.mdc-tab-indicator__content,
317
- span.mdc-tab__text-label {
318
- transition: none;
319
- }
320
- }
321
379
  }
322
380
 
323
381
  // Structural styles for the element that wraps the paginated header items.
@@ -1,7 +1,5 @@
1
- @use '@material/tab-indicator/tab-indicator-theme' as mdc-tab-indicator-theme;
2
- @use '@material/tab/tab-theme' as mdc-tab-theme;
3
1
  @use '../core/style/sass-utils';
4
- @use '../core/tokens/m2/mdc/tab' as tokens-mdc-tab;
2
+ @use '../core/tokens/m2/mdc/secondary-navigation-tab' as tokens-mdc-secondary-navigation-tab;
5
3
  @use '../core/tokens/m2/mdc/tab-indicator' as tokens-mdc-tab-indicator;
6
4
  @use '../core/tokens/m2/mat/tab-header' as tokens-mat-tab-header;
7
5
  @use '../core/tokens/m2/mat/tab-header-with-background' as tokens-mat-tab-header-with-background;
@@ -20,14 +18,16 @@
20
18
  }
21
19
  @else {
22
20
  @include sass-utils.current-selector-or-root() {
23
- @include mdc-tab-indicator-theme.theme(tokens-mdc-tab-indicator.get-unthemable-tokens());
24
- @include mdc-tab-theme.secondary-navigation-tab-theme(tokens-mdc-tab.get-unthemable-tokens());
25
21
  @include token-utils.create-token-values(
26
- tokens-mat-tab-header.$prefix, tokens-mat-tab-header.get-unthemable-tokens());
22
+ tokens-mdc-secondary-navigation-tab.$prefix,
23
+ tokens-mdc-secondary-navigation-tab.get-unthemable-tokens());
27
24
  @include token-utils.create-token-values(
28
- tokens-mat-tab-header-with-background.$prefix,
29
- tokens-mat-tab-header-with-background.get-unthemable-tokens()
30
- );
25
+ tokens-mdc-tab-indicator.$prefix, tokens-mdc-tab-indicator.get-unthemable-tokens());
26
+ @include token-utils.create-token-values(
27
+ tokens-mat-tab-header.$prefix, tokens-mat-tab-header.get-unthemable-tokens());
28
+ @include token-utils.create-token-values(
29
+ tokens-mat-tab-header-with-background.$prefix,
30
+ tokens-mat-tab-header-with-background.get-unthemable-tokens());
31
31
  }
32
32
  }
33
33
  }
@@ -74,9 +74,12 @@
74
74
  }
75
75
 
76
76
  @mixin _palette-styles($theme, $palette-name) {
77
- @include mdc-tab-theme.secondary-navigation-tab-theme(
78
- tokens-mdc-tab.get-color-tokens($theme, $palette-name));
79
- @include mdc-tab-indicator-theme.theme(
77
+ @include token-utils.create-token-values(
78
+ tokens-mdc-secondary-navigation-tab.$prefix,
79
+ tokens-mdc-secondary-navigation-tab.get-color-tokens($theme, $palette-name)
80
+ );
81
+ @include token-utils.create-token-values(
82
+ tokens-mdc-tab-indicator.$prefix,
80
83
  tokens-mdc-tab-indicator.get-color-tokens($theme, $palette-name));
81
84
  @include token-utils.create-token-values(tokens-mat-tab-header.$prefix,
82
85
  tokens-mat-tab-header.get-color-tokens($theme, $palette-name));
@@ -90,10 +93,11 @@
90
93
  }
91
94
  @else {
92
95
  .mat-mdc-tab-header {
93
- @include mdc-tab-theme.secondary-navigation-tab-theme(
94
- tokens-mdc-tab.get-typography-tokens($theme));
95
- @include mdc-tab-indicator-theme.theme(
96
- tokens-mdc-tab-indicator.get-typography-tokens($theme));
96
+ @include token-utils.create-token-values(
97
+ tokens-mdc-secondary-navigation-tab.$prefix,
98
+ tokens-mdc-secondary-navigation-tab.get-typography-tokens($theme));
99
+ @include token-utils.create-token-values(
100
+ tokens-mdc-tab-indicator.$prefix, tokens-mdc-tab-indicator.get-typography-tokens($theme));
97
101
  @include token-utils.create-token-values(tokens-mat-tab-header.$prefix,
98
102
  tokens-mat-tab-header.get-typography-tokens($theme));
99
103
  @include token-utils.create-token-values(tokens-mat-tab-header-with-background.$prefix,
@@ -110,10 +114,11 @@
110
114
  }
111
115
  @else {
112
116
  .mat-mdc-tab-header {
113
- @include mdc-tab-theme.secondary-navigation-tab-theme(
114
- tokens-mdc-tab.get-density-tokens($theme));
115
- @include mdc-tab-indicator-theme.theme(
116
- tokens-mdc-tab-indicator.get-density-tokens($theme));
117
+ @include token-utils.create-token-values(
118
+ tokens-mdc-secondary-navigation-tab.$prefix,
119
+ tokens-mdc-secondary-navigation-tab.get-density-tokens($theme));
120
+ @include token-utils.create-token-values(
121
+ tokens-mdc-tab-indicator.$prefix, tokens-mdc-tab-indicator.get-density-tokens($theme));
117
122
  @include token-utils.create-token-values(tokens-mat-tab-header.$prefix,
118
123
  tokens-mat-tab-header.get-density-tokens($theme));
119
124
  @include token-utils.create-token-values(tokens-mat-tab-header-with-background.$prefix,
@@ -125,14 +130,14 @@
125
130
  /// Outputs the CSS variable values for the given tokens.
126
131
  /// @param {Map} $tokens The token values to emit.
127
132
  @mixin overrides($tokens: ()) {
128
- $tab-tokens: tokens-mdc-tab.get-token-slots();
133
+ $tab-tokens: tokens-mdc-secondary-navigation-tab.get-token-slots();
129
134
  $tab-indicator-tokens: tokens-mdc-tab-indicator.get-token-slots();
130
135
  $tab-header-tokens: tokens-mat-tab-header.get-token-slots();
131
136
  $tab-header-with-background-tokens: tokens-mat-tab-header-with-background.get-token-slots();
132
137
 
133
138
  @include token-utils.batch-create-token-values(
134
139
  $tokens,
135
- (prefix: tokens-mdc-tab.$prefix, tokens: $tab-tokens),
140
+ (prefix: tokens-mdc-secondary-navigation-tab.$prefix, tokens: $tab-tokens),
136
141
  (prefix: tokens-mdc-tab-indicator.$prefix, tokens: $tab-indicator-tokens),
137
142
  (prefix: tokens-mat-tab-header.$prefix, tokens: $tab-header-tokens),
138
143
  (
@@ -176,8 +181,11 @@
176
181
  $tokens, tokens-mat-tab-header.$prefix, $options...);
177
182
  // Don't pass $options here, because the mdc-tab doesn't have color variants,
178
183
  // only the mdc-tab-indicator and mat-tab-header do.
179
- $mdc-tab-tokens: token-utils.get-tokens-for($tokens, tokens-mdc-tab.$prefix);
180
- @include mdc-tab-theme.secondary-navigation-tab-theme($mdc-tab-tokens);
181
- @include mdc-tab-indicator-theme.theme($mdc-tab-indicator-tokens);
184
+ $mdc-secondary-navigation-tab-tokens:
185
+ token-utils.get-tokens-for($tokens, tokens-mdc-secondary-navigation-tab.$prefix);
186
+ @include token-utils.create-token-values(tokens-mdc-secondary-navigation-tab.$prefix,
187
+ $mdc-secondary-navigation-tab-tokens);
188
+ @include token-utils.create-token-values(tokens-mdc-tab-indicator.$prefix,
189
+ $mdc-tab-indicator-tokens);
182
190
  @include token-utils.create-token-values(tokens-mat-tab-header.$prefix, $mat-tab-header-tokens);
183
191
  }
package/tabs/index.d.ts CHANGED
@@ -563,7 +563,13 @@ export declare class MatTabGroup implements AfterContentInit, AfterContentChecke
563
563
  private _tabsSubscription;
564
564
  /** Subscription to changes in the tab labels. */
565
565
  private _tabLabelSubscription;
566
- /** Theme color of the tab group. */
566
+ /**
567
+ * Theme color of the tab group. This API is supported in M2 themes only, it
568
+ * has no effect in M3 themes.
569
+ *
570
+ * For information on applying color variants in M3, see
571
+ * https://material.angular.io/guide/theming#using-component-color-variants.
572
+ */
567
573
  color: ThemePalette;
568
574
  /** Whether the ink bar should fit its width to the size of the tab label content. */
569
575
  get fitInkBarToContent(): boolean;
@@ -606,7 +612,12 @@ export declare class MatTabGroup implements AfterContentInit, AfterContentChecke
606
612
  */
607
613
  preserveContent: boolean;
608
614
  /**
609
- * Background color of the tab group.
615
+ * Theme color of the background of the tab group. This API is supported in M2 themes only, it
616
+ * has no effect in M3 themes.
617
+ *
618
+ * For information on applying color variants in M3, see
619
+ * https://material.angular.io/guide/theming#using-component-color-variants.
620
+ *
610
621
  * @deprecated The background color should be customized through Sass theming APIs.
611
622
  * @breaking-change 20.0.0 Remove this input
612
623
  */
@@ -821,13 +832,25 @@ export declare class MatTabNav extends MatPaginatedTabHeader implements AfterCon
821
832
  private _animationDuration;
822
833
  /** Query list of all tab links of the tab navigation. */
823
834
  _items: QueryList<MatTabLink>;
824
- /** Background color of the tab nav. */
835
+ /**
836
+ * Theme color of the background of the tab nav. This API is supported in M2 themes only, it
837
+ * has no effect in M3 themes.
838
+ *
839
+ * For information on applying color variants in M3, see
840
+ * https://material.angular.io/guide/theming#using-component-color-variants.
841
+ */
825
842
  get backgroundColor(): ThemePalette;
826
843
  set backgroundColor(value: ThemePalette);
827
844
  private _backgroundColor;
828
845
  /** Whether the ripple effect is disabled or not. */
829
846
  disableRipple: boolean;
830
- /** Theme color of the nav bar. */
847
+ /**
848
+ * Theme color of the nav bar. This API is supported in M2 themes only, it has
849
+ * no effect in M3 themes.
850
+ *
851
+ * For information on applying color variants in M3, see
852
+ * https://material.angular.io/guide/theming#using-component-color-variants.
853
+ */
831
854
  color: ThemePalette;
832
855
  /**
833
856
  * Associated tab panel controlled by the nav bar. If not provided, then the nav bar
@@ -16,7 +16,13 @@ declare namespace i2 {
16
16
  export declare class MatToolbar implements AfterViewInit {
17
17
  protected _elementRef: ElementRef;
18
18
  private _platform;
19
- /** Palette color of the toolbar. */
19
+ /**
20
+ * Theme color of the toolbar. This API is supported in M2 themes only, it has
21
+ * no effect in M3 themes.
22
+ *
23
+ * For information on applying color variants in M3, see
24
+ * https://material.angular.io/guide/theming#using-component-color-variants.
25
+ */
20
26
  color?: string | null;
21
27
  private _document;
22
28
  /** Reference to all toolbar row elements that have been projected. */
@@ -1,5 +1,3 @@
1
- @use 'sass:map';
2
- @use '@material/tooltip/plain-tooltip-theme' as mdc-plain-tooltip-theme;
3
1
  @use '../core/style/sass-utils';
4
2
  @use '../core/theming/theming';
5
3
  @use '../core/theming/inspection';
@@ -15,7 +13,10 @@
15
13
  @else {
16
14
  // Add default values for tokens not related to color, typography, or density.
17
15
  @include sass-utils.current-selector-or-root() {
18
- @include mdc-plain-tooltip-theme.theme(tokens-mdc-plain-tooltip.get-unthemable-tokens());
16
+ @include token-utils.create-token-values(
17
+ tokens-mdc-plain-tooltip.$prefix,
18
+ tokens-mdc-plain-tooltip.get-unthemable-tokens()
19
+ );
19
20
  }
20
21
  }
21
22
  }
@@ -25,11 +26,11 @@
25
26
  @include _theme-from-tokens(inspection.get-theme-tokens($theme, color));
26
27
  }
27
28
  @else {
28
- $mdc-tooltip-color-tokens: tokens-mdc-plain-tooltip.get-color-tokens($theme);
29
-
30
- // Add values for MDC tooltip tokens.
31
29
  @include sass-utils.current-selector-or-root() {
32
- @include mdc-plain-tooltip-theme.theme($mdc-tooltip-color-tokens);
30
+ @include token-utils.create-token-values(
31
+ tokens-mdc-plain-tooltip.$prefix,
32
+ tokens-mdc-plain-tooltip.get-color-tokens($theme)
33
+ );
33
34
  }
34
35
  }
35
36
  }
@@ -39,11 +40,11 @@
39
40
  @include _theme-from-tokens(inspection.get-theme-tokens($theme, typography));
40
41
  }
41
42
  @else {
42
- $mdc-tooltip-typography-tokens: tokens-mdc-plain-tooltip.get-typography-tokens($theme);
43
-
44
- // Add values for MDC tooltip tokens.
45
43
  @include sass-utils.current-selector-or-root() {
46
- @include mdc-plain-tooltip-theme.theme($mdc-tooltip-typography-tokens);
44
+ @include token-utils.create-token-values(
45
+ tokens-mdc-plain-tooltip.$prefix,
46
+ tokens-mdc-plain-tooltip.get-typography-tokens($theme)
47
+ );
47
48
  }
48
49
  }
49
50
  }
@@ -53,11 +54,11 @@
53
54
  @include _theme-from-tokens(inspection.get-theme-tokens($theme, density));
54
55
  }
55
56
  @else {
56
- $mdc-tooltip-density-tokens: tokens-mdc-plain-tooltip.get-density-tokens($theme);
57
-
58
- // Add values for MDC tooltip tokens.
59
57
  @include sass-utils.current-selector-or-root() {
60
- @include mdc-plain-tooltip-theme.theme($mdc-tooltip-density-tokens);
58
+ @include token-utils.create-token-values(
59
+ tokens-mdc-plain-tooltip.$prefix,
60
+ tokens-mdc-plain-tooltip.get-density-tokens($theme)
61
+ );
61
62
  }
62
63
  }
63
64
  }
@@ -93,6 +94,7 @@
93
94
  @include validation.selector-defined(
94
95
  'Calls to Angular Material theme mixins with an M3 theme must be wrapped in a selector');
95
96
  @if $tokens != () {
96
- @include mdc-plain-tooltip-theme.theme(map.get($tokens, tokens-mdc-plain-tooltip.$prefix));
97
+ $tokens: token-utils.get-tokens-for($tokens, tokens-mdc-plain-tooltip.$prefix);
98
+ @include token-utils.create-token-values(tokens-mdc-plain-tooltip.$prefix, $tokens);
97
99
  }
98
100
  }