@angular/material 17.0.0-next.3 → 17.0.0-next.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 (275) hide show
  1. package/_index.scss +1 -1
  2. package/button/_button-theme.scss +108 -73
  3. package/card/_card-theme.scss +1 -3
  4. package/core/theming/_m2-inspection.scss +1 -1
  5. package/core/tokens/m2/_index.scss +8 -0
  6. package/core/tokens/m2/mdc/_button-filled.scss +92 -0
  7. package/core/tokens/m2/mdc/_button-protected.scss +94 -0
  8. package/core/tokens/m2/mdc/_icon-button.scss +2 -0
  9. package/core/typography/_versioning.scss +1 -1
  10. package/esm2022/autocomplete/autocomplete-origin.mjs +4 -4
  11. package/esm2022/autocomplete/autocomplete-trigger.mjs +4 -4
  12. package/esm2022/autocomplete/autocomplete.mjs +4 -4
  13. package/esm2022/autocomplete/module.mjs +5 -5
  14. package/esm2022/badge/badge-module.mjs +5 -5
  15. package/esm2022/badge/badge.mjs +4 -4
  16. package/esm2022/bottom-sheet/bottom-sheet-container.mjs +4 -4
  17. package/esm2022/bottom-sheet/bottom-sheet-module.mjs +5 -5
  18. package/esm2022/bottom-sheet/bottom-sheet.mjs +4 -4
  19. package/esm2022/button/button-base.mjs +7 -7
  20. package/esm2022/button/button.mjs +9 -9
  21. package/esm2022/button/fab.mjs +17 -17
  22. package/esm2022/button/icon-button.mjs +7 -7
  23. package/esm2022/button/module.mjs +5 -5
  24. package/esm2022/button-toggle/button-toggle-module.mjs +5 -5
  25. package/esm2022/button-toggle/button-toggle.mjs +7 -7
  26. package/esm2022/card/card.mjs +43 -43
  27. package/esm2022/card/module.mjs +5 -5
  28. package/esm2022/checkbox/checkbox-required-validator.mjs +4 -4
  29. package/esm2022/checkbox/checkbox.mjs +4 -4
  30. package/esm2022/checkbox/module.mjs +9 -9
  31. package/esm2022/chips/chip-action.mjs +4 -4
  32. package/esm2022/chips/chip-edit-input.mjs +4 -4
  33. package/esm2022/chips/chip-grid.mjs +4 -4
  34. package/esm2022/chips/chip-icons.mjs +10 -10
  35. package/esm2022/chips/chip-input.mjs +4 -4
  36. package/esm2022/chips/chip-listbox.mjs +4 -4
  37. package/esm2022/chips/chip-option.mjs +6 -6
  38. package/esm2022/chips/chip-row.mjs +6 -6
  39. package/esm2022/chips/chip-set.mjs +4 -4
  40. package/esm2022/chips/chip.mjs +5 -5
  41. package/esm2022/chips/module.mjs +5 -5
  42. package/esm2022/core/common-behaviors/common-module.mjs +5 -5
  43. package/esm2022/core/datetime/index.mjs +9 -9
  44. package/esm2022/core/datetime/native-date-adapter.mjs +4 -4
  45. package/esm2022/core/error/error-options.mjs +7 -7
  46. package/esm2022/core/line/line.mjs +8 -8
  47. package/esm2022/core/option/index.mjs +5 -5
  48. package/esm2022/core/option/optgroup.mjs +4 -4
  49. package/esm2022/core/option/option.mjs +4 -4
  50. package/esm2022/core/private/ripple-loader.mjs +4 -4
  51. package/esm2022/core/ripple/index.mjs +5 -5
  52. package/esm2022/core/ripple/ripple.mjs +4 -4
  53. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +5 -5
  54. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  55. package/esm2022/core/version.mjs +1 -1
  56. package/esm2022/datepicker/calendar-body.mjs +4 -4
  57. package/esm2022/datepicker/calendar.mjs +8 -8
  58. package/esm2022/datepicker/date-range-input-parts.mjs +10 -10
  59. package/esm2022/datepicker/date-range-input.mjs +4 -4
  60. package/esm2022/datepicker/date-range-picker.mjs +4 -4
  61. package/esm2022/datepicker/date-range-selection-strategy.mjs +4 -4
  62. package/esm2022/datepicker/date-selection-model.mjs +10 -10
  63. package/esm2022/datepicker/datepicker-actions.mjs +10 -10
  64. package/esm2022/datepicker/datepicker-base.mjs +7 -7
  65. package/esm2022/datepicker/datepicker-errors.mjs +2 -2
  66. package/esm2022/datepicker/datepicker-input-base.mjs +4 -4
  67. package/esm2022/datepicker/datepicker-input.mjs +4 -4
  68. package/esm2022/datepicker/datepicker-intl.mjs +4 -4
  69. package/esm2022/datepicker/datepicker-module.mjs +5 -5
  70. package/esm2022/datepicker/datepicker-toggle.mjs +7 -7
  71. package/esm2022/datepicker/datepicker.mjs +4 -4
  72. package/esm2022/datepicker/month-view.mjs +4 -4
  73. package/esm2022/datepicker/multi-year-view.mjs +4 -4
  74. package/esm2022/datepicker/year-view.mjs +4 -4
  75. package/esm2022/dialog/dialog-container.mjs +4 -4
  76. package/esm2022/dialog/dialog-content-directives.mjs +13 -13
  77. package/esm2022/dialog/dialog.mjs +4 -4
  78. package/esm2022/dialog/module.mjs +5 -5
  79. package/esm2022/dialog/testing/dialog-opener.mjs +5 -3
  80. package/esm2022/divider/divider-module.mjs +5 -5
  81. package/esm2022/divider/divider.mjs +4 -4
  82. package/esm2022/expansion/accordion.mjs +4 -4
  83. package/esm2022/expansion/expansion-module.mjs +5 -5
  84. package/esm2022/expansion/expansion-panel-content.mjs +4 -4
  85. package/esm2022/expansion/expansion-panel-header.mjs +10 -10
  86. package/esm2022/expansion/expansion-panel.mjs +7 -7
  87. package/esm2022/form-field/directives/error.mjs +4 -4
  88. package/esm2022/form-field/directives/floating-label.mjs +4 -4
  89. package/esm2022/form-field/directives/hint.mjs +4 -4
  90. package/esm2022/form-field/directives/label.mjs +4 -4
  91. package/esm2022/form-field/directives/line-ripple.mjs +4 -4
  92. package/esm2022/form-field/directives/notched-outline.mjs +4 -4
  93. package/esm2022/form-field/directives/prefix.mjs +4 -4
  94. package/esm2022/form-field/directives/suffix.mjs +4 -4
  95. package/esm2022/form-field/form-field-control.mjs +4 -4
  96. package/esm2022/form-field/form-field.mjs +6 -6
  97. package/esm2022/form-field/module.mjs +5 -5
  98. package/esm2022/grid-list/grid-list-module.mjs +5 -5
  99. package/esm2022/grid-list/grid-list.mjs +4 -4
  100. package/esm2022/grid-list/grid-tile.mjs +16 -16
  101. package/esm2022/icon/icon-module.mjs +5 -5
  102. package/esm2022/icon/icon-registry.mjs +4 -4
  103. package/esm2022/icon/icon.mjs +4 -4
  104. package/esm2022/icon/testing/fake-icon-registry.mjs +8 -8
  105. package/esm2022/input/input.mjs +4 -4
  106. package/esm2022/input/module.mjs +5 -5
  107. package/esm2022/list/action-list.mjs +4 -4
  108. package/esm2022/list/list-base.mjs +7 -7
  109. package/esm2022/list/list-item-sections.mjs +19 -19
  110. package/esm2022/list/list-module.mjs +5 -5
  111. package/esm2022/list/list-option.mjs +4 -4
  112. package/esm2022/list/list.mjs +7 -7
  113. package/esm2022/list/nav-list.mjs +4 -4
  114. package/esm2022/list/selection-list.mjs +4 -4
  115. package/esm2022/list/subheader.mjs +4 -4
  116. package/esm2022/menu/menu-content.mjs +4 -4
  117. package/esm2022/menu/menu-item.mjs +4 -4
  118. package/esm2022/menu/menu-trigger.mjs +4 -4
  119. package/esm2022/menu/menu.mjs +4 -4
  120. package/esm2022/menu/module.mjs +5 -5
  121. package/esm2022/paginator/module.mjs +5 -5
  122. package/esm2022/paginator/paginator-intl.mjs +4 -4
  123. package/esm2022/paginator/paginator.mjs +4 -4
  124. package/esm2022/progress-bar/module.mjs +5 -5
  125. package/esm2022/progress-bar/progress-bar.mjs +4 -4
  126. package/esm2022/progress-spinner/module.mjs +5 -5
  127. package/esm2022/progress-spinner/progress-spinner.mjs +4 -4
  128. package/esm2022/radio/module.mjs +5 -5
  129. package/esm2022/radio/radio.mjs +8 -8
  130. package/esm2022/select/module.mjs +5 -5
  131. package/esm2022/select/select.mjs +9 -9
  132. package/esm2022/sidenav/drawer.mjs +10 -10
  133. package/esm2022/sidenav/sidenav-module.mjs +5 -5
  134. package/esm2022/sidenav/sidenav.mjs +10 -10
  135. package/esm2022/slide-toggle/module.mjs +9 -9
  136. package/esm2022/slide-toggle/slide-toggle-required-validator.mjs +4 -4
  137. package/esm2022/slide-toggle/slide-toggle.mjs +4 -4
  138. package/esm2022/slider/module.mjs +5 -5
  139. package/esm2022/slider/slider-input.mjs +7 -7
  140. package/esm2022/slider/slider-thumb.mjs +4 -4
  141. package/esm2022/slider/slider.mjs +4 -4
  142. package/esm2022/snack-bar/module.mjs +5 -5
  143. package/esm2022/snack-bar/simple-snack-bar.mjs +4 -4
  144. package/esm2022/snack-bar/snack-bar-container.mjs +4 -4
  145. package/esm2022/snack-bar/snack-bar-content.mjs +10 -10
  146. package/esm2022/snack-bar/snack-bar.mjs +4 -4
  147. package/esm2022/sort/sort-header-intl.mjs +4 -4
  148. package/esm2022/sort/sort-header.mjs +5 -5
  149. package/esm2022/sort/sort-module.mjs +5 -5
  150. package/esm2022/sort/sort.mjs +4 -4
  151. package/esm2022/stepper/step-content.mjs +4 -4
  152. package/esm2022/stepper/step-header.mjs +4 -4
  153. package/esm2022/stepper/step-label.mjs +4 -4
  154. package/esm2022/stepper/stepper-button.mjs +7 -7
  155. package/esm2022/stepper/stepper-icon.mjs +4 -4
  156. package/esm2022/stepper/stepper-intl.mjs +4 -4
  157. package/esm2022/stepper/stepper-module.mjs +5 -5
  158. package/esm2022/stepper/stepper.mjs +7 -7
  159. package/esm2022/table/cell.mjs +22 -22
  160. package/esm2022/table/module.mjs +5 -5
  161. package/esm2022/table/row.mjs +22 -22
  162. package/esm2022/table/table.mjs +7 -7
  163. package/esm2022/table/text-column.mjs +4 -4
  164. package/esm2022/tabs/module.mjs +5 -5
  165. package/esm2022/tabs/paginated-tab-header.mjs +4 -4
  166. package/esm2022/tabs/tab-body.mjs +7 -7
  167. package/esm2022/tabs/tab-content.mjs +4 -4
  168. package/esm2022/tabs/tab-group.mjs +4 -4
  169. package/esm2022/tabs/tab-header.mjs +4 -4
  170. package/esm2022/tabs/tab-label-wrapper.mjs +4 -4
  171. package/esm2022/tabs/tab-label.mjs +4 -4
  172. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +10 -10
  173. package/esm2022/tabs/tab.mjs +4 -4
  174. package/esm2022/toolbar/toolbar-module.mjs +5 -5
  175. package/esm2022/toolbar/toolbar.mjs +7 -7
  176. package/esm2022/tooltip/module.mjs +5 -5
  177. package/esm2022/tooltip/tooltip.mjs +8 -8
  178. package/esm2022/tree/node.mjs +10 -10
  179. package/esm2022/tree/outlet.mjs +4 -4
  180. package/esm2022/tree/padding.mjs +4 -4
  181. package/esm2022/tree/toggle.mjs +4 -4
  182. package/esm2022/tree/tree-module.mjs +5 -5
  183. package/esm2022/tree/tree.mjs +4 -4
  184. package/fesm2022/autocomplete.mjs +13 -13
  185. package/fesm2022/autocomplete.mjs.map +1 -1
  186. package/fesm2022/badge.mjs +7 -7
  187. package/fesm2022/badge.mjs.map +1 -1
  188. package/fesm2022/bottom-sheet.mjs +10 -10
  189. package/fesm2022/bottom-sheet.mjs.map +1 -1
  190. package/fesm2022/button-toggle.mjs +10 -10
  191. package/fesm2022/button-toggle.mjs.map +1 -1
  192. package/fesm2022/button.mjs +40 -40
  193. package/fesm2022/button.mjs.map +1 -1
  194. package/fesm2022/card.mjs +46 -46
  195. package/fesm2022/card.mjs.map +1 -1
  196. package/fesm2022/checkbox.mjs +14 -14
  197. package/fesm2022/checkbox.mjs.map +1 -1
  198. package/fesm2022/chips.mjs +45 -45
  199. package/fesm2022/chips.mjs.map +1 -1
  200. package/fesm2022/core.mjs +56 -56
  201. package/fesm2022/core.mjs.map +1 -1
  202. package/fesm2022/datepicker.mjs +84 -84
  203. package/fesm2022/datepicker.mjs.map +1 -1
  204. package/fesm2022/dialog.mjs +22 -22
  205. package/fesm2022/dialog.mjs.map +1 -1
  206. package/fesm2022/divider.mjs +7 -7
  207. package/fesm2022/divider.mjs.map +1 -1
  208. package/fesm2022/expansion.mjs +25 -25
  209. package/fesm2022/expansion.mjs.map +1 -1
  210. package/fesm2022/form-field.mjs +36 -36
  211. package/fesm2022/form-field.mjs.map +1 -1
  212. package/fesm2022/grid-list.mjs +22 -22
  213. package/fesm2022/grid-list.mjs.map +1 -1
  214. package/fesm2022/icon/testing.mjs +7 -7
  215. package/fesm2022/icon/testing.mjs.map +1 -1
  216. package/fesm2022/icon.mjs +10 -10
  217. package/fesm2022/icon.mjs.map +1 -1
  218. package/fesm2022/input.mjs +7 -7
  219. package/fesm2022/input.mjs.map +1 -1
  220. package/fesm2022/list.mjs +49 -49
  221. package/fesm2022/list.mjs.map +1 -1
  222. package/fesm2022/menu.mjs +16 -16
  223. package/fesm2022/menu.mjs.map +1 -1
  224. package/fesm2022/paginator.mjs +10 -10
  225. package/fesm2022/paginator.mjs.map +1 -1
  226. package/fesm2022/progress-bar.mjs +7 -7
  227. package/fesm2022/progress-bar.mjs.map +1 -1
  228. package/fesm2022/progress-spinner.mjs +7 -7
  229. package/fesm2022/progress-spinner.mjs.map +1 -1
  230. package/fesm2022/radio.mjs +11 -11
  231. package/fesm2022/radio.mjs.map +1 -1
  232. package/fesm2022/select.mjs +12 -12
  233. package/fesm2022/select.mjs.map +1 -1
  234. package/fesm2022/sidenav.mjs +22 -22
  235. package/fesm2022/sidenav.mjs.map +1 -1
  236. package/fesm2022/slide-toggle.mjs +14 -14
  237. package/fesm2022/slide-toggle.mjs.map +1 -1
  238. package/fesm2022/slider.mjs +16 -16
  239. package/fesm2022/slider.mjs.map +1 -1
  240. package/fesm2022/snack-bar.mjs +22 -22
  241. package/fesm2022/snack-bar.mjs.map +1 -1
  242. package/fesm2022/sort.mjs +14 -14
  243. package/fesm2022/sort.mjs.map +1 -1
  244. package/fesm2022/stepper.mjs +31 -31
  245. package/fesm2022/stepper.mjs.map +1 -1
  246. package/fesm2022/table.mjs +55 -55
  247. package/fesm2022/table.mjs.map +1 -1
  248. package/fesm2022/tabs.mjs +40 -40
  249. package/fesm2022/tabs.mjs.map +1 -1
  250. package/fesm2022/toolbar.mjs +10 -10
  251. package/fesm2022/toolbar.mjs.map +1 -1
  252. package/fesm2022/tooltip.mjs +11 -11
  253. package/fesm2022/tooltip.mjs.map +1 -1
  254. package/fesm2022/tree.mjs +25 -25
  255. package/fesm2022/tree.mjs.map +1 -1
  256. package/form-field/_mdc-text-field-structure-overrides.scss +5 -0
  257. package/list/_list-theme.scss +3 -3
  258. package/package.json +49 -49
  259. package/prebuilt-themes/deeppurple-amber.css +1 -1
  260. package/prebuilt-themes/indigo-pink.css +1 -1
  261. package/prebuilt-themes/pink-bluegrey.css +1 -1
  262. package/prebuilt-themes/purple-green.css +1 -1
  263. package/radio/_radio-theme.scss +9 -0
  264. package/schematics/ng-add/index.js +1 -1
  265. package/schematics/ng-add/index.mjs +1 -1
  266. package/schematics/ng-add/setup-project.js +2 -2
  267. package/schematics/ng-add/setup-project.mjs +2 -2
  268. package/schematics/ng-add/theming/theming.js +5 -5
  269. package/schematics/ng-add/theming/theming.mjs +5 -5
  270. package/schematics/ng-generate/mdc-migration/index_bundled.js +9727 -6262
  271. package/schematics/ng-generate/mdc-migration/index_bundled.js.map +4 -4
  272. package/slider/_slider-theme.scss +77 -43
  273. package/snack-bar/_snack-bar-theme.scss +46 -18
  274. package/toolbar/_toolbar-theme.scss +55 -27
  275. package/tooltip/_tooltip-theme.scss +56 -24
@@ -1,78 +1,104 @@
1
+ @use 'sass:map';
1
2
  @use '@material/slider/slider-theme' as mdc-slider-theme;
2
3
  @use '../core/theming/theming';
3
4
  @use '../core/theming/inspection';
4
5
  @use '../core/typography/typography';
5
6
  @use '../core/style/sass-utils';
6
7
  @use '../core/tokens/token-utils';
7
- @use '../core/tokens/m2/mat/slider' as m2-mat-slider;
8
- @use '../core/tokens/m2/mdc/slider' as m2-mdc-slider;
8
+ @use '../core/tokens/m2/mat/slider' as tokens-mat-slider;
9
+ @use '../core/tokens/m2/mdc/slider' as tokens-mdc-slider;
9
10
 
10
11
  @mixin base($theme) {
11
- // Add default values for tokens not related to color, typography, or density.
12
- @include sass-utils.current-selector-or-root() {
13
- @include mdc-slider-theme.theme(m2-mdc-slider.get-unthemable-tokens());
12
+ @if inspection.get-theme-version($theme) == 1 {
13
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, base));
14
+ }
15
+ @else {
16
+ // Add default values for tokens not related to color, typography, or density.
17
+ @include sass-utils.current-selector-or-root() {
18
+ @include mdc-slider-theme.theme(tokens-mdc-slider.get-unthemable-tokens());
19
+ }
14
20
  }
15
21
  }
16
22
 
17
23
  @mixin color($theme) {
18
- $is-dark: inspection.get-theme-type($theme) == dark;
24
+ @if inspection.get-theme-version($theme) == 1 {
25
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, color));
26
+ }
27
+ @else {
28
+ $is-dark: inspection.get-theme-type($theme) == dark;
19
29
 
20
- $mdc-color-tokens: token-utils.resolve-elevation(
21
- m2-mdc-slider.get-color-tokens($theme),
22
- handle-elevation,
23
- handle-shadow-color
24
- );
30
+ $mdc-color-tokens: token-utils.resolve-elevation(
31
+ tokens-mdc-slider.get-color-tokens($theme),
32
+ handle-elevation,
33
+ handle-shadow-color
34
+ );
25
35
 
26
- $mat-slider-color-tokens: m2-mat-slider.get-color-tokens($theme);
36
+ $mat-slider-color-tokens: tokens-mat-slider.get-color-tokens($theme);
27
37
 
28
- // Add values for MDC slider tokens.
29
- .mat-mdc-slider {
30
- @include mdc-slider-theme.theme($mdc-color-tokens);
31
- @include _slider-ripple-color($theme, primary);
32
- @include token-utils.create-token-values(
33
- m2-mat-slider.$prefix,
34
- $mat-slider-color-tokens
35
- );
38
+ // Add values for MDC slider tokens.
39
+ .mat-mdc-slider {
40
+ @include mdc-slider-theme.theme($mdc-color-tokens);
41
+ @include _slider-ripple-color($theme, primary);
42
+ @include token-utils.create-token-values(
43
+ tokens-mat-slider.$prefix,
44
+ $mat-slider-color-tokens
45
+ );
36
46
 
37
- &.mat-accent {
38
- @include mdc-slider-theme.theme(
39
- m2-mdc-slider.private-get-color-palette-color-tokens($theme, accent));
40
- @include _slider-ripple-color($theme, accent);
41
- }
47
+ &.mat-accent {
48
+ @include mdc-slider-theme.theme(
49
+ tokens-mdc-slider.private-get-color-palette-color-tokens($theme, accent));
50
+ @include _slider-ripple-color($theme, accent);
51
+ }
42
52
 
43
- &.mat-warn {
44
- @include mdc-slider-theme.theme(
45
- m2-mdc-slider.private-get-color-palette-color-tokens($theme, warn));
46
- @include _slider-ripple-color($theme, warn);
53
+ &.mat-warn {
54
+ @include mdc-slider-theme.theme(
55
+ tokens-mdc-slider.private-get-color-palette-color-tokens($theme, warn));
56
+ @include _slider-ripple-color($theme, warn);
57
+ }
47
58
  }
48
59
  }
49
60
  }
50
61
 
51
62
  @mixin typography($theme) {
52
- // Add values for MDC slider tokens.
53
- .mat-mdc-slider {
54
- @include mdc-slider-theme.theme(m2-mdc-slider.get-typography-tokens($theme));
63
+ @if inspection.get-theme-version($theme) == 1 {
64
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, typography));
65
+ }
66
+ @else {
67
+ // Add values for MDC slider tokens.
68
+ .mat-mdc-slider {
69
+ @include mdc-slider-theme.theme(tokens-mdc-slider.get-typography-tokens($theme));
70
+ }
55
71
  }
56
72
  }
57
73
 
58
74
  @mixin density($theme) {
59
- // Add values for MDC slider tokens.
60
- .mat-mdc-slider {
61
- @include mdc-slider-theme.theme(m2-mdc-slider.get-density-tokens($theme));
75
+ @if inspection.get-theme-version($theme) == 1 {
76
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, density));
77
+ }
78
+ @else {
79
+ // Add values for MDC slider tokens.
80
+ .mat-mdc-slider {
81
+ @include mdc-slider-theme.theme(tokens-mdc-slider.get-density-tokens($theme));
82
+ }
62
83
  }
63
84
  }
64
85
 
65
86
  @mixin theme($theme) {
66
87
  @include theming.private-check-duplicate-theme-styles($theme, 'mat-slider') {
67
- @include base($theme);
68
- @if inspection.theme-has($theme, color) {
69
- @include color($theme);
70
- }
71
- @if inspection.theme-has($theme, density) {
72
- @include density($theme);
88
+ @if inspection.get-theme-version($theme) == 1 {
89
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme));
73
90
  }
74
- @if inspection.theme-has($theme, typography) {
75
- @include typography($theme);
91
+ @else {
92
+ @include base($theme);
93
+ @if inspection.theme-has($theme, color) {
94
+ @include color($theme);
95
+ }
96
+ @if inspection.theme-has($theme, density) {
97
+ @include density($theme);
98
+ }
99
+ @if inspection.theme-has($theme, typography) {
100
+ @include typography($theme);
101
+ }
76
102
  }
77
103
  }
78
104
  }
@@ -85,3 +111,11 @@
85
111
  --mat-mdc-slider-hover-ripple-color: #{rgba($color, 0.05)};
86
112
  --mat-mdc-slider-focus-ripple-color: #{rgba($color, 0.2)};
87
113
  }
114
+
115
+ @mixin _theme-from-tokens($tokens) {
116
+ @if ($tokens != ()) {
117
+ @include mdc-slider-theme.theme(map.get($tokens, tokens-mdc-slider.$prefix));
118
+ @include token-utils.create-token-values(
119
+ tokens-mat-slider.$prefix, map.get($tokens, tokens-mat-slider.$prefix));
120
+ }
121
+ }
@@ -1,3 +1,4 @@
1
+ @use 'sass:map';
1
2
  @use '@material/snackbar/snackbar-theme' as mdc-snackbar-theme;
2
3
  @use '../core/theming/theming';
3
4
  @use '../core/theming/inspection';
@@ -8,25 +9,40 @@
8
9
  @use '../core/tokens/m2/mat/snack-bar' as tokens-mat-snack-bar;
9
10
 
10
11
  @mixin base($theme) {
12
+ @if inspection.get-theme-version($theme) == 1 {
13
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, base));
14
+ }
15
+ @else {
11
16
  // Add default values for tokens not related to color, typography, or density.
12
- @include sass-utils.current-selector-or-root() {
13
- @include mdc-snackbar-theme.theme(tokens-mdc-snack-bar.get-unthemable-tokens());
17
+ @include sass-utils.current-selector-or-root() {
18
+ @include mdc-snackbar-theme.theme(tokens-mdc-snack-bar.get-unthemable-tokens());
19
+ }
14
20
  }
15
21
  }
16
22
 
17
23
  @mixin color($theme) {
18
- @include sass-utils.current-selector-or-root() {
19
- @include mdc-snackbar-theme.theme(tokens-mdc-snack-bar.get-color-tokens($theme));
20
- @include token-utils.create-token-values(
21
- tokens-mat-snack-bar.$prefix,
22
- tokens-mat-snack-bar.get-color-tokens($theme)
23
- );
24
+ @if inspection.get-theme-version($theme) == 1 {
25
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, color));
26
+ }
27
+ @else {
28
+ @include sass-utils.current-selector-or-root() {
29
+ @include mdc-snackbar-theme.theme(tokens-mdc-snack-bar.get-color-tokens($theme));
30
+ @include token-utils.create-token-values(
31
+ tokens-mat-snack-bar.$prefix,
32
+ tokens-mat-snack-bar.get-color-tokens($theme)
33
+ );
34
+ }
24
35
  }
25
36
  }
26
37
 
27
38
  @mixin typography($theme) {
28
- @include sass-utils.current-selector-or-root() {
29
- @include mdc-snackbar-theme.theme(tokens-mdc-snack-bar.get-typography-tokens($theme));
39
+ @if inspection.get-theme-version($theme) == 1 {
40
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, typography));
41
+ }
42
+ @else {
43
+ @include sass-utils.current-selector-or-root() {
44
+ @include mdc-snackbar-theme.theme(tokens-mdc-snack-bar.get-typography-tokens($theme));
45
+ }
30
46
  }
31
47
  }
32
48
 
@@ -34,16 +50,28 @@
34
50
 
35
51
  @mixin theme($theme) {
36
52
  @include theming.private-check-duplicate-theme-styles($theme, 'mat-snack-bar') {
37
- @include base($theme);
38
- @if inspection.theme-has($theme, color) {
39
- @include color($theme);
40
- }
41
- @if inspection.theme-has($theme, density) {
42
- @include density($theme);
53
+ @if inspection.get-theme-version($theme) == 1 {
54
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme));
43
55
  }
44
- @if inspection.theme-has($theme, typography) {
45
- @include typography($theme);
56
+ @else {
57
+ @include base($theme);
58
+ @if inspection.theme-has($theme, color) {
59
+ @include color($theme);
60
+ }
61
+ @if inspection.theme-has($theme, density) {
62
+ @include density($theme);
63
+ }
64
+ @if inspection.theme-has($theme, typography) {
65
+ @include typography($theme);
66
+ }
46
67
  }
47
68
  }
48
69
  }
49
70
 
71
+ @mixin _theme-from-tokens($tokens) {
72
+ @if ($tokens != ()) {
73
+ @include mdc-snackbar-theme.theme(map.get($tokens, tokens-mdc-snack-bar.$prefix));
74
+ @include token-utils.create-token-values(
75
+ tokens-mat-snack-bar.$prefix, map.get($tokens, tokens-mat-snack-bar.$prefix));
76
+ }
77
+ }
@@ -1,3 +1,4 @@
1
+ @use 'sass:map';
1
2
  @use '../core/theming/theming';
2
3
  @use '../core/theming/inspection';
3
4
  @use '../core/typography/typography';
@@ -16,53 +17,80 @@
16
17
  }
17
18
 
18
19
  @mixin color($theme) {
19
- @include sass-utils.current-selector-or-root() {
20
- @include token-utils.create-token-values(tokens-mat-toolbar.$prefix,
21
- tokens-mat-toolbar.get-color-tokens($theme));
20
+ @if inspection.get-theme-version($theme) == 1 {
21
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, color));
22
22
  }
23
-
24
- .mat-toolbar {
25
- &.mat-primary {
26
- @include _palette-styles($theme, primary);
23
+ @else {
24
+ @include sass-utils.current-selector-or-root() {
25
+ @include token-utils.create-token-values(tokens-mat-toolbar.$prefix,
26
+ tokens-mat-toolbar.get-color-tokens($theme));
27
27
  }
28
28
 
29
- &.mat-accent {
30
- @include _palette-styles($theme, accent);
31
- }
29
+ .mat-toolbar {
30
+ &.mat-primary {
31
+ @include _palette-styles($theme, primary);
32
+ }
33
+
34
+ &.mat-accent {
35
+ @include _palette-styles($theme, accent);
36
+ }
32
37
 
33
- &.mat-warn {
34
- @include _palette-styles($theme, warn);
38
+ &.mat-warn {
39
+ @include _palette-styles($theme, warn);
40
+ }
35
41
  }
36
42
  }
37
43
  }
38
44
 
39
45
  @mixin typography($theme) {
40
- // TODO(mmalerba): Stop calling this and resolve resulting screen diffs.
41
- $theme: inspection.private-get-typography-back-compat-theme($theme);
46
+ @if inspection.get-theme-version($theme) == 1 {
47
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, typography));
48
+ }
49
+ @else {
50
+ // TODO(mmalerba): Stop calling this and resolve resulting screen diffs.
51
+ $theme: inspection.private-get-typography-back-compat-theme($theme);
42
52
 
43
- @include sass-utils.current-selector-or-root() {
44
- @include token-utils.create-token-values(tokens-mat-toolbar.$prefix,
45
- tokens-mat-toolbar.get-typography-tokens($theme));
53
+ @include sass-utils.current-selector-or-root() {
54
+ @include token-utils.create-token-values(tokens-mat-toolbar.$prefix,
55
+ tokens-mat-toolbar.get-typography-tokens($theme));
56
+ }
46
57
  }
47
58
  }
48
59
 
49
60
  @mixin density($theme) {
50
- @include sass-utils.current-selector-or-root() {
51
- @include token-utils.create-token-values(tokens-mat-toolbar.$prefix,
52
- tokens-mat-toolbar.get-density-tokens($theme));
61
+ @if inspection.get-theme-version($theme) == 1 {
62
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, density));
63
+ }
64
+ @else {
65
+ @include sass-utils.current-selector-or-root() {
66
+ @include token-utils.create-token-values(tokens-mat-toolbar.$prefix,
67
+ tokens-mat-toolbar.get-density-tokens($theme));
68
+ }
53
69
  }
54
70
  }
55
71
 
56
72
  @mixin theme($theme) {
57
73
  @include theming.private-check-duplicate-theme-styles($theme, 'mat-toolbar') {
58
- @if inspection.theme-has($theme, color) {
59
- @include color($theme);
74
+ @if inspection.get-theme-version($theme) == 1 {
75
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme));
60
76
  }
61
- @if inspection.theme-has($theme, density) {
62
- @include density($theme);
63
- }
64
- @if inspection.theme-has($theme, typography) {
65
- @include typography($theme);
77
+ @else {
78
+ @if inspection.theme-has($theme, color) {
79
+ @include color($theme);
80
+ }
81
+ @if inspection.theme-has($theme, density) {
82
+ @include density($theme);
83
+ }
84
+ @if inspection.theme-has($theme, typography) {
85
+ @include typography($theme);
86
+ }
66
87
  }
67
88
  }
68
89
  }
90
+
91
+ @mixin _theme-from-tokens($tokens) {
92
+ @if ($tokens != ()) {
93
+ @include token-utils.create-token-values(tokens-mat-toolbar.$prefix,
94
+ map.get($tokens, tokens-mat-toolbar.$prefix));
95
+ }
96
+ }
@@ -1,55 +1,87 @@
1
+ @use 'sass:map';
1
2
  @use '@material/tooltip/plain-tooltip-theme' as mdc-plain-tooltip-theme;
2
3
  @use '../core/style/sass-utils';
3
4
  @use '../core/theming/theming';
4
5
  @use '../core/theming/inspection';
5
6
  @use '../core/typography/typography';
6
- @use '../core/tokens/m2/mdc/plain-tooltip' as m2-mdc-plain-tooltip;
7
+ @use '../core/tokens/m2/mdc/plain-tooltip' as tokens-mdc-plain-tooltip;
7
8
 
8
9
  @mixin base($theme) {
9
- // Add default values for tokens not related to color, typography, or density.
10
- @include sass-utils.current-selector-or-root() {
11
- @include mdc-plain-tooltip-theme.theme(m2-mdc-plain-tooltip.get-unthemable-tokens());
10
+ @if inspection.get-theme-version($theme) == 1 {
11
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, base));
12
+ }
13
+ @else {
14
+ // Add default values for tokens not related to color, typography, or density.
15
+ @include sass-utils.current-selector-or-root() {
16
+ @include mdc-plain-tooltip-theme.theme(tokens-mdc-plain-tooltip.get-unthemable-tokens());
17
+ }
12
18
  }
13
19
  }
14
20
 
15
21
  @mixin color($theme) {
16
- $mdc-tooltip-color-tokens: m2-mdc-plain-tooltip.get-color-tokens($theme);
22
+ @if inspection.get-theme-version($theme) == 1 {
23
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, color));
24
+ }
25
+ @else {
26
+ $mdc-tooltip-color-tokens: tokens-mdc-plain-tooltip.get-color-tokens($theme);
17
27
 
18
- // Add values for MDC tooltip tokens.
19
- @include sass-utils.current-selector-or-root() {
20
- @include mdc-plain-tooltip-theme.theme($mdc-tooltip-color-tokens);
28
+ // Add values for MDC tooltip tokens.
29
+ @include sass-utils.current-selector-or-root() {
30
+ @include mdc-plain-tooltip-theme.theme($mdc-tooltip-color-tokens);
31
+ }
21
32
  }
22
33
  }
23
34
 
24
35
  @mixin typography($theme) {
25
- $mdc-tooltip-typography-tokens: m2-mdc-plain-tooltip.get-typography-tokens($theme);
36
+ @if inspection.get-theme-version($theme) == 1 {
37
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, typography));
38
+ }
39
+ @else {
40
+ $mdc-tooltip-typography-tokens: tokens-mdc-plain-tooltip.get-typography-tokens($theme);
26
41
 
27
- // Add values for MDC tooltip tokens.
28
- @include sass-utils.current-selector-or-root() {
29
- @include mdc-plain-tooltip-theme.theme($mdc-tooltip-typography-tokens);
42
+ // Add values for MDC tooltip tokens.
43
+ @include sass-utils.current-selector-or-root() {
44
+ @include mdc-plain-tooltip-theme.theme($mdc-tooltip-typography-tokens);
45
+ }
30
46
  }
31
47
  }
32
48
 
33
49
  @mixin density($theme) {
34
- $mdc-tooltip-density-tokens: m2-mdc-plain-tooltip.get-density-tokens($theme);
50
+ @if inspection.get-theme-version($theme) == 1 {
51
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme, density));
52
+ }
53
+ @else {
54
+ $mdc-tooltip-density-tokens: tokens-mdc-plain-tooltip.get-density-tokens($theme);
35
55
 
36
- // Add values for MDC tooltip tokens.
37
- @include sass-utils.current-selector-or-root() {
38
- @include mdc-plain-tooltip-theme.theme($mdc-tooltip-density-tokens);
56
+ // Add values for MDC tooltip tokens.
57
+ @include sass-utils.current-selector-or-root() {
58
+ @include mdc-plain-tooltip-theme.theme($mdc-tooltip-density-tokens);
59
+ }
39
60
  }
40
61
  }
41
62
 
42
63
  @mixin theme($theme) {
43
64
  @include theming.private-check-duplicate-theme-styles($theme, 'mat-tooltip') {
44
- @include base($theme);
45
- @if inspection.theme-has($theme, color) {
46
- @include color($theme);
47
- }
48
- @if inspection.theme-has($theme, density) {
49
- @include density($theme);
65
+ @if inspection.get-theme-version($theme) == 1 {
66
+ @include _theme-from-tokens(inspection.get-theme-tokens($theme));
50
67
  }
51
- @if inspection.theme-has($theme, typography) {
52
- @include typography($theme);
68
+ @else {
69
+ @include base($theme);
70
+ @if inspection.theme-has($theme, color) {
71
+ @include color($theme);
72
+ }
73
+ @if inspection.theme-has($theme, density) {
74
+ @include density($theme);
75
+ }
76
+ @if inspection.theme-has($theme, typography) {
77
+ @include typography($theme);
78
+ }
53
79
  }
54
80
  }
55
81
  }
82
+
83
+ @mixin _theme-from-tokens($tokens) {
84
+ @if $tokens != () {
85
+ @include mdc-plain-tooltip-theme.theme(map.get($tokens, tokens-mdc-plain-tooltip.$prefix));
86
+ }
87
+ }