@angular/material 19.0.0-next.8 → 19.0.0-rc.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 (229) hide show
  1. package/_index.scss +1 -2
  2. package/autocomplete/_autocomplete-theme.scss +37 -24
  3. package/autocomplete/index.d.ts +5 -6
  4. package/badge/_badge-theme.scss +38 -24
  5. package/bottom-sheet/_bottom-sheet-theme.scss +32 -20
  6. package/button/_button-theme.scss +229 -105
  7. package/button/_fab-theme.scss +95 -44
  8. package/button/_icon-button-theme.scss +38 -25
  9. package/button/index.d.ts +3 -3
  10. package/button-toggle/_button-toggle-theme.scss +62 -37
  11. package/card/_card-theme.scss +79 -38
  12. package/card/index.d.ts +2 -3
  13. package/checkbox/_checkbox-theme.scss +16 -10
  14. package/chips/_chips-theme.scss +64 -30
  15. package/core/_core-theme.scss +55 -37
  16. package/core/_core.scss +3 -6
  17. package/core/option/_optgroup-theme.scss +29 -18
  18. package/core/option/_option-theme.scss +34 -21
  19. package/core/ripple/_ripple-theme.scss +33 -21
  20. package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +49 -23
  21. package/core/theming/_config-validation.scss +4 -4
  22. package/core/theming/_definition.scss +12 -2
  23. package/core/tokens/_m3-system.scss +86 -42
  24. package/core/tokens/_token-utils.scss +91 -34
  25. package/core/tokens/m2/mat/_badge.scss +12 -3
  26. package/core/tokens/m2/mdc/_radio.scss +1 -1
  27. package/core/tokens/m3/definitions/_md-comp-elevated-card.scss +1 -1
  28. package/core/tokens/m3/mat/_badge.scss +6 -3
  29. package/datepicker/_datepicker-theme.scss +53 -32
  30. package/datepicker/index.d.ts +33 -34
  31. package/dialog/_dialog-theme.scss +46 -23
  32. package/divider/_divider-theme.scss +28 -17
  33. package/expansion/_expansion-theme.scss +36 -24
  34. package/fesm2022/autocomplete/testing.mjs +2 -5
  35. package/fesm2022/autocomplete/testing.mjs.map +1 -1
  36. package/fesm2022/autocomplete.mjs +225 -148
  37. package/fesm2022/autocomplete.mjs.map +1 -1
  38. package/fesm2022/badge/testing.mjs +2 -5
  39. package/fesm2022/badge/testing.mjs.map +1 -1
  40. package/fesm2022/badge.mjs +45 -35
  41. package/fesm2022/badge.mjs.map +1 -1
  42. package/fesm2022/bottom-sheet/testing.mjs +1 -1
  43. package/fesm2022/bottom-sheet/testing.mjs.map +1 -1
  44. package/fesm2022/bottom-sheet.mjs +80 -58
  45. package/fesm2022/bottom-sheet.mjs.map +1 -1
  46. package/fesm2022/button/testing.mjs +2 -2
  47. package/fesm2022/button/testing.mjs.map +1 -1
  48. package/fesm2022/button-toggle/testing.mjs +4 -7
  49. package/fesm2022/button-toggle/testing.mjs.map +1 -1
  50. package/fesm2022/button-toggle.mjs +82 -45
  51. package/fesm2022/button-toggle.mjs.map +1 -1
  52. package/fesm2022/button.mjs +106 -79
  53. package/fesm2022/button.mjs.map +1 -1
  54. package/fesm2022/card/testing.mjs +3 -6
  55. package/fesm2022/card/testing.mjs.map +1 -1
  56. package/fesm2022/card.mjs +56 -69
  57. package/fesm2022/card.mjs.map +1 -1
  58. package/fesm2022/checkbox/testing.mjs +4 -7
  59. package/fesm2022/checkbox/testing.mjs.map +1 -1
  60. package/fesm2022/checkbox.mjs +104 -62
  61. package/fesm2022/checkbox.mjs.map +1 -1
  62. package/fesm2022/chips/testing.mjs +11 -14
  63. package/fesm2022/chips/testing.mjs.map +1 -1
  64. package/fesm2022/chips.mjs +322 -276
  65. package/fesm2022/chips.mjs.map +1 -1
  66. package/fesm2022/core/testing.mjs +5 -11
  67. package/fesm2022/core/testing.mjs.map +1 -1
  68. package/fesm2022/core.mjs +242 -187
  69. package/fesm2022/core.mjs.map +1 -1
  70. package/fesm2022/datepicker/testing.mjs +13 -22
  71. package/fesm2022/datepicker/testing.mjs.map +1 -1
  72. package/fesm2022/datepicker.mjs +827 -582
  73. package/fesm2022/datepicker.mjs.map +1 -1
  74. package/fesm2022/dialog/testing.mjs +15 -10
  75. package/fesm2022/dialog/testing.mjs.map +1 -1
  76. package/fesm2022/dialog.mjs +221 -156
  77. package/fesm2022/dialog.mjs.map +1 -1
  78. package/fesm2022/divider/testing.mjs +1 -1
  79. package/fesm2022/divider/testing.mjs.map +1 -1
  80. package/fesm2022/divider.mjs +10 -12
  81. package/fesm2022/divider.mjs.map +1 -1
  82. package/fesm2022/expansion/testing.mjs +7 -10
  83. package/fesm2022/expansion/testing.mjs.map +1 -1
  84. package/fesm2022/expansion.mjs +86 -80
  85. package/fesm2022/expansion.mjs.map +1 -1
  86. package/fesm2022/form-field/testing.mjs +12 -15
  87. package/fesm2022/form-field/testing.mjs.map +1 -1
  88. package/fesm2022/form-field.mjs +179 -132
  89. package/fesm2022/form-field.mjs.map +1 -1
  90. package/fesm2022/grid-list/testing.mjs +11 -17
  91. package/fesm2022/grid-list/testing.mjs.map +1 -1
  92. package/fesm2022/grid-list.mjs +75 -56
  93. package/fesm2022/grid-list.mjs.map +1 -1
  94. package/fesm2022/icon/testing.mjs +8 -8
  95. package/fesm2022/icon/testing.mjs.map +1 -1
  96. package/fesm2022/icon.mjs +66 -46
  97. package/fesm2022/icon.mjs.map +1 -1
  98. package/fesm2022/input/testing.mjs +3 -3
  99. package/fesm2022/input/testing.mjs.map +1 -1
  100. package/fesm2022/input.mjs +103 -72
  101. package/fesm2022/input.mjs.map +1 -1
  102. package/fesm2022/list/testing.mjs +21 -38
  103. package/fesm2022/list/testing.mjs.map +1 -1
  104. package/fesm2022/list.mjs +197 -195
  105. package/fesm2022/list.mjs.map +1 -1
  106. package/fesm2022/menu/testing.mjs +3 -6
  107. package/fesm2022/menu/testing.mjs.map +1 -1
  108. package/fesm2022/menu.mjs +178 -127
  109. package/fesm2022/menu.mjs.map +1 -1
  110. package/fesm2022/paginator/testing.mjs +10 -13
  111. package/fesm2022/paginator/testing.mjs.map +1 -1
  112. package/fesm2022/paginator.mjs +83 -58
  113. package/fesm2022/paginator.mjs.map +1 -1
  114. package/fesm2022/progress-bar/testing.mjs +1 -1
  115. package/fesm2022/progress-bar/testing.mjs.map +1 -1
  116. package/fesm2022/progress-bar.mjs +36 -35
  117. package/fesm2022/progress-bar.mjs.map +1 -1
  118. package/fesm2022/progress-spinner/testing.mjs +1 -1
  119. package/fesm2022/progress-spinner/testing.mjs.map +1 -1
  120. package/fesm2022/progress-spinner.mjs +28 -14
  121. package/fesm2022/progress-spinner.mjs.map +1 -1
  122. package/fesm2022/radio/testing.mjs +6 -12
  123. package/fesm2022/radio/testing.mjs.map +1 -1
  124. package/fesm2022/radio.mjs +123 -87
  125. package/fesm2022/radio.mjs.map +1 -1
  126. package/fesm2022/select/testing.mjs +6 -9
  127. package/fesm2022/select/testing.mjs.map +1 -1
  128. package/fesm2022/select.mjs +219 -182
  129. package/fesm2022/select.mjs.map +1 -1
  130. package/fesm2022/sidenav/testing.mjs +6 -6
  131. package/fesm2022/sidenav/testing.mjs.map +1 -1
  132. package/fesm2022/sidenav.mjs +136 -125
  133. package/fesm2022/sidenav.mjs.map +1 -1
  134. package/fesm2022/slide-toggle/testing.mjs +3 -6
  135. package/fesm2022/slide-toggle/testing.mjs.map +1 -1
  136. package/fesm2022/slide-toggle.mjs +77 -47
  137. package/fesm2022/slide-toggle.mjs.map +1 -1
  138. package/fesm2022/slider/testing.mjs +2 -2
  139. package/fesm2022/slider/testing.mjs.map +1 -1
  140. package/fesm2022/slider.mjs +262 -194
  141. package/fesm2022/slider.mjs.map +1 -1
  142. package/fesm2022/snack-bar/testing.mjs +4 -7
  143. package/fesm2022/snack-bar/testing.mjs.map +1 -1
  144. package/fesm2022/snack-bar.mjs +143 -111
  145. package/fesm2022/snack-bar.mjs.map +1 -1
  146. package/fesm2022/sort/testing.mjs +3 -6
  147. package/fesm2022/sort/testing.mjs.map +1 -1
  148. package/fesm2022/sort.mjs +94 -74
  149. package/fesm2022/sort.mjs.map +1 -1
  150. package/fesm2022/stepper/testing.mjs +4 -4
  151. package/fesm2022/stepper/testing.mjs.map +1 -1
  152. package/fesm2022/stepper.mjs +146 -113
  153. package/fesm2022/stepper.mjs.map +1 -1
  154. package/fesm2022/table/testing.mjs +13 -25
  155. package/fesm2022/table/testing.mjs.map +1 -1
  156. package/fesm2022/table.mjs +183 -194
  157. package/fesm2022/table.mjs.map +1 -1
  158. package/fesm2022/tabs/testing.mjs +5 -5
  159. package/fesm2022/tabs/testing.mjs.map +1 -1
  160. package/fesm2022/tabs.mjs +329 -251
  161. package/fesm2022/tabs.mjs.map +1 -1
  162. package/fesm2022/timepicker/testing.mjs +7 -16
  163. package/fesm2022/timepicker/testing.mjs.map +1 -1
  164. package/fesm2022/timepicker.mjs +160 -155
  165. package/fesm2022/timepicker.mjs.map +1 -1
  166. package/fesm2022/toolbar/testing.mjs +2 -5
  167. package/fesm2022/toolbar/testing.mjs.map +1 -1
  168. package/fesm2022/toolbar.mjs +26 -17
  169. package/fesm2022/toolbar.mjs.map +1 -1
  170. package/fesm2022/tooltip/testing.mjs +6 -9
  171. package/fesm2022/tooltip/testing.mjs.map +1 -1
  172. package/fesm2022/tooltip.mjs +97 -74
  173. package/fesm2022/tooltip.mjs.map +1 -1
  174. package/fesm2022/tree/testing.mjs +3 -6
  175. package/fesm2022/tree/testing.mjs.map +1 -1
  176. package/fesm2022/tree.mjs +57 -61
  177. package/fesm2022/tree.mjs.map +1 -1
  178. package/form-field/_form-field-theme.scss +114 -61
  179. package/form-field/index.d.ts +9 -10
  180. package/grid-list/_grid-list-theme.scss +25 -15
  181. package/icon/_icon-theme.scss +22 -14
  182. package/input/_input-theme.scss +18 -11
  183. package/list/_list-theme.scss +89 -47
  184. package/list/index.d.ts +20 -21
  185. package/menu/_menu-theme.scss +33 -21
  186. package/menu/index.d.ts +8 -9
  187. package/package.json +2 -2
  188. package/paginator/_paginator-theme.scss +39 -23
  189. package/prebuilt-themes/azure-blue.css +1 -1
  190. package/prebuilt-themes/cyan-orange.css +1 -1
  191. package/prebuilt-themes/deeppurple-amber.css +1 -1
  192. package/prebuilt-themes/indigo-pink.css +1 -1
  193. package/prebuilt-themes/magenta-violet.css +1 -1
  194. package/prebuilt-themes/pink-bluegrey.css +1 -1
  195. package/prebuilt-themes/purple-green.css +1 -1
  196. package/prebuilt-themes/rose-red.css +1 -1
  197. package/progress-bar/_progress-bar-theme.scss +20 -16
  198. package/progress-spinner/_progress-spinner-theme.scss +41 -25
  199. package/progress-spinner/index.d.ts +3 -4
  200. package/radio/_radio-theme.scss +60 -32
  201. package/radio/index.d.ts +2 -3
  202. package/schematics/collection.json +3 -3
  203. package/schematics/ng-add/index.js +1 -1
  204. package/schematics/ng-add/index.mjs +1 -1
  205. package/schematics/ng-add/theming/create-custom-theme.js +1 -6
  206. package/schematics/ng-add/theming/create-custom-theme.mjs +1 -6
  207. package/schematics/ng-generate/{m3-theme → theme-color}/index_bundled.js +480 -288
  208. package/schematics/ng-generate/theme-color/index_bundled.js.map +7 -0
  209. package/schematics/ng-generate/{m3-theme → theme-color}/schema.json +7 -13
  210. package/schematics/ng-update/index_bundled.js +6 -1
  211. package/schematics/ng-update/index_bundled.js.map +1 -1
  212. package/select/_select-theme.scss +38 -25
  213. package/select/index.d.ts +6 -7
  214. package/sidenav/_sidenav-theme.scss +28 -17
  215. package/slide-toggle/_slide-toggle-theme.scss +52 -28
  216. package/slider/_slider-theme.scss +62 -38
  217. package/snack-bar/_snack-bar-theme.scss +29 -17
  218. package/sort/_sort-theme.scss +33 -21
  219. package/stepper/_stepper-theme.scss +40 -27
  220. package/stepper/index.d.ts +14 -15
  221. package/table/_table-theme.scss +36 -23
  222. package/tabs/_tabs-theme.scss +97 -50
  223. package/tabs/index.d.ts +2 -2
  224. package/timepicker/_timepicker-theme.scss +37 -24
  225. package/toolbar/_toolbar-theme.scss +35 -22
  226. package/tooltip/_tooltip-theme.scss +18 -15
  227. package/tooltip/index.d.ts +5 -6
  228. package/tree/_tree-theme.scss +33 -21
  229. package/schematics/ng-generate/m3-theme/index_bundled.js.map +0 -7
@@ -14,12 +14,14 @@
14
14
  @use '../core/style/sass-utils';
15
15
 
16
16
  @mixin _text-button-variant($theme, $palette) {
17
- $mdc-tokens: if($palette,
17
+ $mdc-tokens: if(
18
+ $palette,
18
19
  tokens-mdc-text-button.private-get-color-palette-color-tokens($theme, $palette),
19
20
  tokens-mdc-text-button.get-color-tokens($theme)
20
21
  );
21
22
 
22
- $mat-tokens: if($palette,
23
+ $mat-tokens: if(
24
+ $palette,
23
25
  tokens-mat-text-button.private-get-color-palette-color-tokens($theme, $palette),
24
26
  tokens-mat-text-button.get-color-tokens($theme)
25
27
  );
@@ -29,12 +31,14 @@
29
31
  }
30
32
 
31
33
  @mixin _filled-button-variant($theme, $palette) {
32
- $mdc-tokens: if($palette,
34
+ $mdc-tokens: if(
35
+ $palette,
33
36
  tokens-mdc-filled-button.private-get-color-palette-color-tokens($theme, $palette),
34
37
  tokens-mdc-filled-button.get-color-tokens($theme)
35
38
  );
36
39
 
37
- $mat-tokens: if($palette,
40
+ $mat-tokens: if(
41
+ $palette,
38
42
  tokens-mat-filled-button.private-get-color-palette-color-tokens($theme, $palette),
39
43
  tokens-mat-filled-button.get-color-tokens($theme)
40
44
  );
@@ -44,12 +48,14 @@
44
48
  }
45
49
 
46
50
  @mixin _protected-button-variant($theme, $palette) {
47
- $mdc-tokens: if($palette,
51
+ $mdc-tokens: if(
52
+ $palette,
48
53
  tokens-mdc-protected-button.private-get-color-palette-color-tokens($theme, $palette),
49
54
  tokens-mdc-protected-button.get-color-tokens($theme)
50
55
  );
51
56
 
52
- $mat-tokens: if($palette,
57
+ $mat-tokens: if(
58
+ $palette,
53
59
  tokens-mat-protected-button.private-get-color-palette-color-tokens($theme, $palette),
54
60
  tokens-mat-protected-button.get-color-tokens($theme)
55
61
  );
@@ -59,12 +65,14 @@
59
65
  }
60
66
 
61
67
  @mixin _outlined-button-variant($theme, $palette) {
62
- $mdc-tokens: if($palette,
68
+ $mdc-tokens: if(
69
+ $palette,
63
70
  tokens-mdc-outlined-button.private-get-color-palette-color-tokens($theme, $palette),
64
71
  tokens-mdc-outlined-button.get-color-tokens($theme)
65
72
  );
66
73
 
67
- $mat-tokens: if($palette,
74
+ $mat-tokens: if(
75
+ $palette,
68
76
  tokens-mat-outlined-button.private-get-color-palette-color-tokens($theme, $palette),
69
77
  tokens-mat-outlined-button.get-color-tokens($theme)
70
78
  );
@@ -75,38 +83,75 @@
75
83
 
76
84
  @mixin _theme-from-tokens($tokens, $options...) {
77
85
  @include validation.selector-defined(
78
- 'Calls to Angular Material theme mixins with an M3 theme must be wrapped in a selector');
79
- $mdc-text-button-tokens:
80
- token-utils.get-tokens-for($tokens, tokens-mdc-text-button.$prefix, $options...);
81
- $mdc-protected-button-tokens:
82
- token-utils.get-tokens-for($tokens, tokens-mdc-protected-button.$prefix, $options...);
83
- $mdc-filled-button-tokens:
84
- token-utils.get-tokens-for($tokens, tokens-mdc-filled-button.$prefix, $options...);
85
- $mdc-outlined-button-tokens:
86
- token-utils.get-tokens-for($tokens, tokens-mdc-outlined-button.$prefix, $options...);
87
- $mat-text-button-tokens:
88
- token-utils.get-tokens-for($tokens, tokens-mat-text-button.$prefix, $options...);
89
- $mat-protected-button-tokens:
90
- token-utils.get-tokens-for($tokens, tokens-mat-protected-button.$prefix, $options...);
91
- $mat-filled-button-tokens:
92
- token-utils.get-tokens-for($tokens, tokens-mat-filled-button.$prefix, $options...);
93
- $mat-outlined-button-tokens:
94
- token-utils.get-tokens-for($tokens, tokens-mat-outlined-button.$prefix, $options...);
86
+ 'Calls to Angular Material theme mixins with an M3 theme must be wrapped in a selector'
87
+ );
88
+ $mdc-text-button-tokens: token-utils.get-tokens-for(
89
+ $tokens,
90
+ tokens-mdc-text-button.$prefix,
91
+ $options...
92
+ );
93
+ $mdc-protected-button-tokens: token-utils.get-tokens-for(
94
+ $tokens,
95
+ tokens-mdc-protected-button.$prefix,
96
+ $options...
97
+ );
98
+ $mdc-filled-button-tokens: token-utils.get-tokens-for(
99
+ $tokens,
100
+ tokens-mdc-filled-button.$prefix,
101
+ $options...
102
+ );
103
+ $mdc-outlined-button-tokens: token-utils.get-tokens-for(
104
+ $tokens,
105
+ tokens-mdc-outlined-button.$prefix,
106
+ $options...
107
+ );
108
+ $mat-text-button-tokens: token-utils.get-tokens-for(
109
+ $tokens,
110
+ tokens-mat-text-button.$prefix,
111
+ $options...
112
+ );
113
+ $mat-protected-button-tokens: token-utils.get-tokens-for(
114
+ $tokens,
115
+ tokens-mat-protected-button.$prefix,
116
+ $options...
117
+ );
118
+ $mat-filled-button-tokens: token-utils.get-tokens-for(
119
+ $tokens,
120
+ tokens-mat-filled-button.$prefix,
121
+ $options...
122
+ );
123
+ $mat-outlined-button-tokens: token-utils.get-tokens-for(
124
+ $tokens,
125
+ tokens-mat-outlined-button.$prefix,
126
+ $options...
127
+ );
95
128
 
96
129
  @include token-utils.create-token-values(tokens-mdc-text-button.$prefix, $mdc-text-button-tokens);
97
130
  @include token-utils.create-token-values(
98
- tokens-mdc-protected-button.$prefix, $mdc-protected-button-tokens);
131
+ tokens-mdc-protected-button.$prefix,
132
+ $mdc-protected-button-tokens
133
+ );
99
134
  @include token-utils.create-token-values(
100
- tokens-mdc-filled-button.$prefix, $mdc-filled-button-tokens);
135
+ tokens-mdc-filled-button.$prefix,
136
+ $mdc-filled-button-tokens
137
+ );
101
138
  @include token-utils.create-token-values(
102
- tokens-mdc-outlined-button.$prefix, $mdc-outlined-button-tokens);
139
+ tokens-mdc-outlined-button.$prefix,
140
+ $mdc-outlined-button-tokens
141
+ );
103
142
  @include token-utils.create-token-values(tokens-mat-text-button.$prefix, $mat-text-button-tokens);
104
143
  @include token-utils.create-token-values(
105
- tokens-mat-protected-button.$prefix, $mat-protected-button-tokens);
144
+ tokens-mat-protected-button.$prefix,
145
+ $mat-protected-button-tokens
146
+ );
106
147
  @include token-utils.create-token-values(
107
- tokens-mat-filled-button.$prefix, $mat-filled-button-tokens);
148
+ tokens-mat-filled-button.$prefix,
149
+ $mat-filled-button-tokens
150
+ );
108
151
  @include token-utils.create-token-values(
109
- tokens-mat-outlined-button.$prefix, $mat-outlined-button-tokens);
152
+ tokens-mat-outlined-button.$prefix,
153
+ $mat-outlined-button-tokens
154
+ );
110
155
  }
111
156
 
112
157
  /// Outputs base theme styles (styles not dependent on the color, typography, or density settings)
@@ -115,26 +160,41 @@
115
160
  @mixin base($theme) {
116
161
  @if inspection.get-theme-version($theme) == 1 {
117
162
  @include _theme-from-tokens(inspection.get-theme-tokens($theme, base));
118
- }
119
- @else {
163
+ } @else {
120
164
  @include sass-utils.current-selector-or-root() {
121
- @include token-utils.create-token-values(tokens-mdc-text-button.$prefix,
122
- tokens-mdc-text-button.get-unthemable-tokens());
123
- @include token-utils.create-token-values(tokens-mdc-filled-button.$prefix,
124
- tokens-mdc-filled-button.get-unthemable-tokens());
125
- @include token-utils.create-token-values(tokens-mdc-protected-button.$prefix,
126
- tokens-mdc-protected-button.get-unthemable-tokens());
127
- @include token-utils.create-token-values(tokens-mdc-outlined-button.$prefix,
128
- tokens-mdc-outlined-button.get-unthemable-tokens());
129
-
130
- @include token-utils.create-token-values(tokens-mat-text-button.$prefix,
131
- tokens-mat-text-button.get-unthemable-tokens());
132
- @include token-utils.create-token-values(tokens-mat-filled-button.$prefix,
133
- tokens-mat-filled-button.get-unthemable-tokens());
134
- @include token-utils.create-token-values(tokens-mat-protected-button.$prefix,
135
- tokens-mat-protected-button.get-unthemable-tokens());
136
- @include token-utils.create-token-values(tokens-mat-outlined-button.$prefix,
137
- tokens-mat-outlined-button.get-unthemable-tokens());
165
+ @include token-utils.create-token-values(
166
+ tokens-mdc-text-button.$prefix,
167
+ tokens-mdc-text-button.get-unthemable-tokens()
168
+ );
169
+ @include token-utils.create-token-values(
170
+ tokens-mdc-filled-button.$prefix,
171
+ tokens-mdc-filled-button.get-unthemable-tokens()
172
+ );
173
+ @include token-utils.create-token-values(
174
+ tokens-mdc-protected-button.$prefix,
175
+ tokens-mdc-protected-button.get-unthemable-tokens()
176
+ );
177
+ @include token-utils.create-token-values(
178
+ tokens-mdc-outlined-button.$prefix,
179
+ tokens-mdc-outlined-button.get-unthemable-tokens()
180
+ );
181
+
182
+ @include token-utils.create-token-values(
183
+ tokens-mat-text-button.$prefix,
184
+ tokens-mat-text-button.get-unthemable-tokens()
185
+ );
186
+ @include token-utils.create-token-values(
187
+ tokens-mat-filled-button.$prefix,
188
+ tokens-mat-filled-button.get-unthemable-tokens()
189
+ );
190
+ @include token-utils.create-token-values(
191
+ tokens-mat-protected-button.$prefix,
192
+ tokens-mat-protected-button.get-unthemable-tokens()
193
+ );
194
+ @include token-utils.create-token-values(
195
+ tokens-mat-outlined-button.$prefix,
196
+ tokens-mat-outlined-button.get-unthemable-tokens()
197
+ );
138
198
  }
139
199
  }
140
200
  }
@@ -147,8 +207,7 @@
147
207
  @mixin color($theme, $options...) {
148
208
  @if inspection.get-theme-version($theme) == 1 {
149
209
  @include _theme-from-tokens(inspection.get-theme-tokens($theme, color), $options...);
150
- }
151
- @else {
210
+ } @else {
152
211
  @include sass-utils.current-selector-or-root() {
153
212
  @include _text-button-variant($theme, null);
154
213
  @include _filled-button-variant($theme, null);
@@ -219,26 +278,41 @@
219
278
  @mixin typography($theme) {
220
279
  @if inspection.get-theme-version($theme) == 1 {
221
280
  @include _theme-from-tokens(inspection.get-theme-tokens($theme, typography));
222
- }
223
- @else {
281
+ } @else {
224
282
  @include sass-utils.current-selector-or-root() {
225
- @include token-utils.create-token-values(tokens-mdc-text-button.$prefix,
226
- tokens-mdc-text-button.get-typography-tokens($theme));
227
- @include token-utils.create-token-values(tokens-mdc-filled-button.$prefix,
228
- tokens-mdc-filled-button.get-typography-tokens($theme));
229
- @include token-utils.create-token-values(tokens-mdc-protected-button.$prefix,
230
- tokens-mdc-protected-button.get-typography-tokens($theme));
231
- @include token-utils.create-token-values(tokens-mdc-outlined-button.$prefix,
232
- tokens-mdc-outlined-button.get-typography-tokens($theme));
233
-
234
- @include token-utils.create-token-values(tokens-mat-text-button.$prefix,
235
- tokens-mat-text-button.get-typography-tokens($theme));
236
- @include token-utils.create-token-values(tokens-mat-filled-button.$prefix,
237
- tokens-mat-filled-button.get-typography-tokens($theme));
238
- @include token-utils.create-token-values(tokens-mat-protected-button.$prefix,
239
- tokens-mat-protected-button.get-typography-tokens($theme));
240
- @include token-utils.create-token-values(tokens-mat-outlined-button.$prefix,
241
- tokens-mat-outlined-button.get-typography-tokens($theme));
283
+ @include token-utils.create-token-values(
284
+ tokens-mdc-text-button.$prefix,
285
+ tokens-mdc-text-button.get-typography-tokens($theme)
286
+ );
287
+ @include token-utils.create-token-values(
288
+ tokens-mdc-filled-button.$prefix,
289
+ tokens-mdc-filled-button.get-typography-tokens($theme)
290
+ );
291
+ @include token-utils.create-token-values(
292
+ tokens-mdc-protected-button.$prefix,
293
+ tokens-mdc-protected-button.get-typography-tokens($theme)
294
+ );
295
+ @include token-utils.create-token-values(
296
+ tokens-mdc-outlined-button.$prefix,
297
+ tokens-mdc-outlined-button.get-typography-tokens($theme)
298
+ );
299
+
300
+ @include token-utils.create-token-values(
301
+ tokens-mat-text-button.$prefix,
302
+ tokens-mat-text-button.get-typography-tokens($theme)
303
+ );
304
+ @include token-utils.create-token-values(
305
+ tokens-mat-filled-button.$prefix,
306
+ tokens-mat-filled-button.get-typography-tokens($theme)
307
+ );
308
+ @include token-utils.create-token-values(
309
+ tokens-mat-protected-button.$prefix,
310
+ tokens-mat-protected-button.get-typography-tokens($theme)
311
+ );
312
+ @include token-utils.create-token-values(
313
+ tokens-mat-outlined-button.$prefix,
314
+ tokens-mat-outlined-button.get-typography-tokens($theme)
315
+ );
242
316
  }
243
317
  }
244
318
  }
@@ -248,33 +322,47 @@
248
322
  @mixin density($theme) {
249
323
  @if inspection.get-theme-version($theme) == 1 {
250
324
  @include _theme-from-tokens(inspection.get-theme-tokens($theme, density));
251
- }
252
- @else {
325
+ } @else {
253
326
  @include sass-utils.current-selector-or-root() {
254
- @include token-utils.create-token-values(tokens-mdc-text-button.$prefix,
255
- tokens-mdc-text-button.get-density-tokens($theme));
256
- @include token-utils.create-token-values(tokens-mdc-filled-button.$prefix,
257
- tokens-mdc-filled-button.get-density-tokens($theme));
258
- @include token-utils.create-token-values(tokens-mdc-protected-button.$prefix,
259
- tokens-mdc-protected-button.get-density-tokens($theme));
260
- @include token-utils.create-token-values(tokens-mdc-outlined-button.$prefix,
261
- tokens-mdc-outlined-button.get-density-tokens($theme));
262
-
263
- @include token-utils.create-token-values(tokens-mat-text-button.$prefix,
264
- tokens-mat-text-button.get-density-tokens($theme));
265
- @include token-utils.create-token-values(tokens-mat-filled-button.$prefix,
266
- tokens-mat-filled-button.get-density-tokens($theme));
267
- @include token-utils.create-token-values(tokens-mat-protected-button.$prefix,
268
- tokens-mat-protected-button.get-density-tokens($theme));
269
- @include token-utils.create-token-values(tokens-mat-outlined-button.$prefix,
270
- tokens-mat-outlined-button.get-density-tokens($theme));
327
+ @include token-utils.create-token-values(
328
+ tokens-mdc-text-button.$prefix,
329
+ tokens-mdc-text-button.get-density-tokens($theme)
330
+ );
331
+ @include token-utils.create-token-values(
332
+ tokens-mdc-filled-button.$prefix,
333
+ tokens-mdc-filled-button.get-density-tokens($theme)
334
+ );
335
+ @include token-utils.create-token-values(
336
+ tokens-mdc-protected-button.$prefix,
337
+ tokens-mdc-protected-button.get-density-tokens($theme)
338
+ );
339
+ @include token-utils.create-token-values(
340
+ tokens-mdc-outlined-button.$prefix,
341
+ tokens-mdc-outlined-button.get-density-tokens($theme)
342
+ );
343
+
344
+ @include token-utils.create-token-values(
345
+ tokens-mat-text-button.$prefix,
346
+ tokens-mat-text-button.get-density-tokens($theme)
347
+ );
348
+ @include token-utils.create-token-values(
349
+ tokens-mat-filled-button.$prefix,
350
+ tokens-mat-filled-button.get-density-tokens($theme)
351
+ );
352
+ @include token-utils.create-token-values(
353
+ tokens-mat-protected-button.$prefix,
354
+ tokens-mat-protected-button.get-density-tokens($theme)
355
+ );
356
+ @include token-utils.create-token-values(
357
+ tokens-mat-outlined-button.$prefix,
358
+ tokens-mat-outlined-button.get-density-tokens($theme)
359
+ );
271
360
  }
272
361
  }
273
362
  }
274
363
 
275
- /// Outputs the CSS variable values for the given tokens.
276
- /// @param {Map} $tokens The token values to emit.
277
- @mixin overrides($tokens: ()) {
364
+ /// Defines the tokens that will be available in the `overrides` mixin and for docs extraction.
365
+ @function _define-overrides() {
278
366
  $mdc-filled-button-tokens: tokens-mdc-filled-button.get-token-slots();
279
367
  $mat-filled-button-tokens: tokens-mat-filled-button.get-token-slots();
280
368
  $mdc-outlined-button-tokens: tokens-mdc-outlined-button.get-token-slots();
@@ -284,19 +372,56 @@
284
372
  $mdc-text-button-tokens: tokens-mdc-text-button.get-token-slots();
285
373
  $mat-text-button-tokens: tokens-mat-text-button.get-token-slots();
286
374
 
287
- @include token-utils.batch-create-token-values(
288
- $tokens,
289
- (prefix: tokens-mdc-filled-button.$prefix, tokens: $mdc-filled-button-tokens),
290
- (prefix: tokens-mat-filled-button.$prefix, tokens: $mat-filled-button-tokens),
291
- (prefix: tokens-mdc-outlined-button.$prefix, tokens: $mdc-outlined-button-tokens),
292
- (prefix: tokens-mat-outlined-button.$prefix, tokens: $mat-outlined-button-tokens),
293
- (prefix: tokens-mdc-protected-button.$prefix, tokens: $mdc-protected-button-tokens),
294
- (prefix: tokens-mat-protected-button.$prefix, tokens: $mat-protected-button-tokens),
295
- (prefix: tokens-mdc-text-button.$prefix, tokens: $mdc-text-button-tokens),
296
- (prefix: tokens-mat-text-button.$prefix, tokens: $mat-text-button-tokens),
375
+ @return (
376
+ (
377
+ namespace: tokens-mdc-filled-button.$prefix,
378
+ tokens: $mdc-filled-button-tokens,
379
+ prefix: 'filled-',
380
+ ),
381
+ (
382
+ namespace: tokens-mat-filled-button.$prefix,
383
+ tokens: $mat-filled-button-tokens,
384
+ prefix: 'filled-',
385
+ ),
386
+ (
387
+ namespace: tokens-mdc-outlined-button.$prefix,
388
+ tokens: $mdc-outlined-button-tokens,
389
+ prefix: 'outlined-',
390
+ ),
391
+ (
392
+ namespace: tokens-mat-outlined-button.$prefix,
393
+ tokens: $mat-outlined-button-tokens,
394
+ prefix: 'outlined-',
395
+ ),
396
+ (
397
+ namespace: tokens-mdc-protected-button.$prefix,
398
+ tokens: $mdc-protected-button-tokens,
399
+ prefix: 'protected-',
400
+ ),
401
+ (
402
+ namespace: tokens-mat-protected-button.$prefix,
403
+ tokens: $mat-protected-button-tokens,
404
+ prefix: 'protected-',
405
+ ),
406
+ (
407
+ namespace: tokens-mdc-text-button.$prefix,
408
+ tokens: $mdc-text-button-tokens,
409
+ prefix: 'text-',
410
+ ),
411
+ (
412
+ namespace: tokens-mat-text-button.$prefix,
413
+ tokens: $mat-text-button-tokens,
414
+ prefix: 'text-',
415
+ ),
297
416
  );
298
417
  }
299
418
 
419
+ /// Outputs the CSS variable values for the given tokens.
420
+ /// @param {Map} $tokens The token values to emit.
421
+ @mixin overrides($tokens: ()) {
422
+ @include token-utils.batch-create-token-values($tokens, _define-overrides()...);
423
+ }
424
+
300
425
  /// Outputs all (base, color, typography, and density) theme styles for the mat-button.
301
426
  /// @param {Map} $theme The theme to generate styles for.
302
427
  /// @param {ArgList} Additional optional arguments (only supported for M3 themes):
@@ -306,8 +431,7 @@
306
431
  @include theming.private-check-duplicate-theme-styles($theme, 'mat-button') {
307
432
  @if inspection.get-theme-version($theme) == 1 {
308
433
  @include _theme-from-tokens(inspection.get-theme-tokens($theme), $options...);
309
- }
310
- @else {
434
+ } @else {
311
435
  @include base($theme);
312
436
  @if inspection.theme-has($theme, color) {
313
437
  @include color($theme);
@@ -16,26 +16,33 @@
16
16
  @mixin base($theme) {
17
17
  @if inspection.get-theme-version($theme) == 1 {
18
18
  @include _theme-from-tokens(inspection.get-theme-tokens($theme, base));
19
- }
20
- @else {
19
+ } @else {
21
20
  @include sass-utils.current-selector-or-root() {
22
21
  @include token-utils.create-token-values(
23
- tokens-mdc-fab.$prefix, tokens-mdc-fab.get-unthemable-tokens());
22
+ tokens-mdc-fab.$prefix,
23
+ tokens-mdc-fab.get-unthemable-tokens()
24
+ );
24
25
  @include token-utils.create-token-values(
25
- tokens-mdc-fab-small.$prefix, tokens-mdc-fab-small.get-unthemable-tokens());
26
+ tokens-mdc-fab-small.$prefix,
27
+ tokens-mdc-fab-small.get-unthemable-tokens()
28
+ );
26
29
  @include token-utils.create-token-values(
27
- tokens-mdc-extended-fab.$prefix, tokens-mdc-extended-fab.get-unthemable-tokens());
30
+ tokens-mdc-extended-fab.$prefix,
31
+ tokens-mdc-extended-fab.get-unthemable-tokens()
32
+ );
28
33
  }
29
34
  }
30
35
  }
31
36
 
32
37
  @mixin _fab-variant($theme, $palette) {
33
- $mdc-tokens: if($palette,
38
+ $mdc-tokens: if(
39
+ $palette,
34
40
  tokens-mdc-fab.private-get-color-palette-color-tokens($theme, $palette),
35
41
  tokens-mdc-fab.get-color-tokens($theme)
36
42
  );
37
43
 
38
- $mat-tokens: if($palette,
44
+ $mat-tokens: if(
45
+ $palette,
39
46
  tokens-mat-fab.private-get-color-palette-color-tokens($theme, $palette),
40
47
  tokens-mat-fab.get-color-tokens($theme)
41
48
  );
@@ -45,12 +52,14 @@
45
52
  }
46
53
 
47
54
  @mixin _fab-small-variant($theme, $palette) {
48
- $mdc-tokens: if($palette,
55
+ $mdc-tokens: if(
56
+ $palette,
49
57
  tokens-mdc-fab-small.private-get-color-palette-color-tokens($theme, $palette),
50
58
  tokens-mdc-fab-small.get-color-tokens($theme)
51
59
  );
52
60
 
53
- $mat-tokens: if($palette,
61
+ $mat-tokens: if(
62
+ $palette,
54
63
  tokens-mat-fab-small.private-get-color-palette-color-tokens($theme, $palette),
55
64
  tokens-mat-fab-small.get-color-tokens($theme)
56
65
  );
@@ -67,13 +76,14 @@
67
76
  @mixin color($theme, $options...) {
68
77
  @if inspection.get-theme-version($theme) == 1 {
69
78
  @include _theme-from-tokens(inspection.get-theme-tokens($theme, color), $options...);
70
- }
71
- @else {
79
+ } @else {
72
80
  @include sass-utils.current-selector-or-root() {
73
81
  @include _fab-variant($theme, null);
74
82
  @include _fab-small-variant($theme, null);
75
83
  @include token-utils.create-token-values(
76
- tokens-mdc-extended-fab.$prefix, tokens-mdc-extended-fab.get-color-tokens($theme));
84
+ tokens-mdc-extended-fab.$prefix,
85
+ tokens-mdc-extended-fab.get-color-tokens($theme)
86
+ );
77
87
 
78
88
  .mat-mdc-fab {
79
89
  &.mat-primary {
@@ -111,15 +121,20 @@
111
121
  @mixin typography($theme) {
112
122
  @if inspection.get-theme-version($theme) == 1 {
113
123
  @include _theme-from-tokens(inspection.get-theme-tokens($theme, typography));
114
- }
115
- @else {
124
+ } @else {
116
125
  @include sass-utils.current-selector-or-root() {
117
- @include token-utils.create-token-values(tokens-mdc-extended-fab.$prefix,
118
- tokens-mdc-extended-fab.get-typography-tokens($theme));
119
- @include token-utils.create-token-values(tokens-mat-fab.$prefix,
120
- tokens-mat-fab.get-typography-tokens($theme));
121
- @include token-utils.create-token-values(tokens-mat-fab-small.$prefix,
122
- tokens-mat-fab-small.get-typography-tokens($theme));
126
+ @include token-utils.create-token-values(
127
+ tokens-mdc-extended-fab.$prefix,
128
+ tokens-mdc-extended-fab.get-typography-tokens($theme)
129
+ );
130
+ @include token-utils.create-token-values(
131
+ tokens-mat-fab.$prefix,
132
+ tokens-mat-fab.get-typography-tokens($theme)
133
+ );
134
+ @include token-utils.create-token-values(
135
+ tokens-mat-fab-small.$prefix,
136
+ tokens-mat-fab-small.get-typography-tokens($theme)
137
+ );
123
138
  }
124
139
  }
125
140
  }
@@ -129,28 +144,53 @@
129
144
  @mixin density($theme) {
130
145
  @if inspection.get-theme-version($theme) == 1 {
131
146
  @include _theme-from-tokens(inspection.get-theme-tokens($theme, density));
132
- }
133
- @else {
147
+ } @else {
134
148
  @include sass-utils.current-selector-or-root() {
135
- @include token-utils.create-token-values(tokens-mat-fab.$prefix,
136
- tokens-mat-fab.get-density-tokens($theme));
137
- @include token-utils.create-token-values(tokens-mat-fab-small.$prefix,
138
- tokens-mat-fab-small.get-density-tokens($theme));
149
+ @include token-utils.create-token-values(
150
+ tokens-mat-fab.$prefix,
151
+ tokens-mat-fab.get-density-tokens($theme)
152
+ );
153
+ @include token-utils.create-token-values(
154
+ tokens-mat-fab-small.$prefix,
155
+ tokens-mat-fab-small.get-density-tokens($theme)
156
+ );
139
157
  }
140
158
  }
141
159
  }
142
160
 
161
+ /// Defines the tokens that will be available in the `overrides` mixin and for docs extraction.
162
+ @function _define-overrides() {
163
+ @return (
164
+ (
165
+ namespace: tokens-mdc-fab.$prefix,
166
+ tokens: tokens-mdc-fab.get-token-slots(),
167
+ ),
168
+ (
169
+ namespace: tokens-mdc-fab-small.$prefix,
170
+ tokens: tokens-mdc-fab-small.get-token-slots(),
171
+ prefix: 'small-',
172
+ ),
173
+ (
174
+ namespace: tokens-mdc-extended-fab.$prefix,
175
+ tokens: tokens-mdc-extended-fab.get-token-slots(),
176
+ prefix: 'extended-',
177
+ ),
178
+ (
179
+ namespace: tokens-mat-fab.$prefix,
180
+ tokens: tokens-mat-fab.get-token-slots(),
181
+ ),
182
+ (
183
+ namespace: tokens-mat-fab-small.$prefix,
184
+ tokens: tokens-mat-fab-small.get-token-slots(),
185
+ prefix: 'small-',
186
+ ),
187
+ );
188
+ }
189
+
143
190
  /// Outputs the CSS variable values for the given tokens.
144
191
  /// @param {Map} $tokens The token values to emit.
145
192
  @mixin overrides($tokens: ()) {
146
- @include token-utils.batch-create-token-values(
147
- $tokens,
148
- (prefix: tokens-mdc-fab.$prefix, tokens: tokens-mdc-fab.get-token-slots()),
149
- (prefix: tokens-mdc-fab-small.$prefix, tokens: tokens-mdc-fab-small.get-token-slots()),
150
- (prefix: tokens-mdc-extended-fab.$prefix, tokens: tokens-mdc-extended-fab.get-token-slots()),
151
- (prefix: tokens-mat-fab.$prefix, tokens: tokens-mat-fab.get-token-slots()),
152
- (prefix: tokens-mat-fab-small.$prefix, tokens: tokens-mat-fab-small.get-token-slots()),
153
- );
193
+ @include token-utils.batch-create-token-values($tokens, _define-overrides()...);
154
194
  }
155
195
 
156
196
  /// Outputs all (base, color, typography, and density) theme styles for the mat-checkbox.
@@ -162,8 +202,7 @@
162
202
  @include theming.private-check-duplicate-theme-styles($theme, 'mat-fab') {
163
203
  @if inspection.get-theme-version($theme) == 1 {
164
204
  @include _theme-from-tokens(inspection.get-theme-tokens($theme), $options...);
165
- }
166
- @else {
205
+ } @else {
167
206
  @include base($theme);
168
207
  @if inspection.theme-has($theme, color) {
169
208
  @include color($theme);
@@ -180,17 +219,29 @@
180
219
 
181
220
  @mixin _theme-from-tokens($tokens, $options...) {
182
221
  @include validation.selector-defined(
183
- 'Calls to Angular Material theme mixins with an M3 theme must be wrapped in a selector');
222
+ 'Calls to Angular Material theme mixins with an M3 theme must be wrapped in a selector'
223
+ );
184
224
  $mdc-extended-fab-tokens: token-utils.get-tokens-for(
185
- $tokens, tokens-mdc-extended-fab.$prefix, $options...);
225
+ $tokens,
226
+ tokens-mdc-extended-fab.$prefix,
227
+ $options...
228
+ );
186
229
  $mdc-fab-tokens: token-utils.get-tokens-for($tokens, tokens-mdc-fab.$prefix, $options...);
187
- $mdc-fab-small-tokens: token-utils.get-tokens-for($tokens, tokens-mdc-fab-small.$prefix,
188
- $options...);
230
+ $mdc-fab-small-tokens: token-utils.get-tokens-for(
231
+ $tokens,
232
+ tokens-mdc-fab-small.$prefix,
233
+ $options...
234
+ );
189
235
  $mat-fab-tokens: token-utils.get-tokens-for($tokens, tokens-mat-fab.$prefix, $options...);
190
- $mat-fab-small-tokens: token-utils.get-tokens-for($tokens, tokens-mat-fab-small.$prefix,
191
- $options...);
192
- @include token-utils.create-token-values(tokens-mdc-extended-fab.$prefix,
193
- $mdc-extended-fab-tokens);
236
+ $mat-fab-small-tokens: token-utils.get-tokens-for(
237
+ $tokens,
238
+ tokens-mat-fab-small.$prefix,
239
+ $options...
240
+ );
241
+ @include token-utils.create-token-values(
242
+ tokens-mdc-extended-fab.$prefix,
243
+ $mdc-extended-fab-tokens
244
+ );
194
245
  @include token-utils.create-token-values(tokens-mdc-fab.$prefix, $mdc-fab-tokens);
195
246
  @include token-utils.create-token-values(tokens-mdc-fab-small.$prefix, $mdc-fab-small-tokens);
196
247
  @include token-utils.create-token-values(tokens-mat-fab.$prefix, $mat-fab-tokens);