@angular/material-experimental 13.2.0-next.0 → 14.0.0-next.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 (328) hide show
  1. package/LICENSE +1 -1
  2. package/esm2020/column-resize/column-resize-directives/column-resize-flex.mjs +4 -4
  3. package/esm2020/column-resize/column-resize-directives/column-resize.mjs +4 -4
  4. package/esm2020/column-resize/column-resize-directives/default-enabled-column-resize-flex.mjs +4 -4
  5. package/esm2020/column-resize/column-resize-directives/default-enabled-column-resize.mjs +4 -4
  6. package/esm2020/column-resize/column-resize-module.mjs +13 -13
  7. package/esm2020/column-resize/overlay-handle.mjs +4 -4
  8. package/esm2020/column-resize/resizable-directives/default-enabled-resizable.mjs +4 -4
  9. package/esm2020/column-resize/resizable-directives/resizable.mjs +4 -4
  10. package/esm2020/column-resize/resize-strategy.mjs +4 -4
  11. package/esm2020/mdc-autocomplete/autocomplete-origin.mjs +4 -4
  12. package/esm2020/mdc-autocomplete/autocomplete-trigger.mjs +4 -4
  13. package/esm2020/mdc-autocomplete/autocomplete.mjs +4 -4
  14. package/esm2020/mdc-autocomplete/module.mjs +5 -5
  15. package/esm2020/mdc-button/button-base.mjs +24 -21
  16. package/esm2020/mdc-button/button.mjs +9 -9
  17. package/esm2020/mdc-button/fab.mjs +18 -18
  18. package/esm2020/mdc-button/icon-button.mjs +11 -13
  19. package/esm2020/mdc-button/module.mjs +5 -5
  20. package/esm2020/mdc-card/card.mjs +43 -43
  21. package/esm2020/mdc-card/module.mjs +5 -5
  22. package/esm2020/mdc-checkbox/checkbox.mjs +9 -16
  23. package/esm2020/mdc-checkbox/module.mjs +6 -7
  24. package/esm2020/mdc-chips/chip-action.mjs +123 -0
  25. package/esm2020/mdc-chips/chip-edit-input.mjs +5 -5
  26. package/esm2020/mdc-chips/chip-grid.mjs +49 -99
  27. package/esm2020/mdc-chips/chip-icons.mjs +39 -101
  28. package/esm2020/mdc-chips/chip-input.mjs +6 -13
  29. package/esm2020/mdc-chips/chip-listbox.mjs +51 -156
  30. package/esm2020/mdc-chips/chip-option.mjs +84 -95
  31. package/esm2020/mdc-chips/chip-row.mjs +82 -90
  32. package/esm2020/mdc-chips/chip-set.mjs +119 -120
  33. package/esm2020/mdc-chips/chip.mjs +188 -180
  34. package/esm2020/mdc-chips/emit-event.mjs +27 -0
  35. package/esm2020/mdc-chips/module.mjs +8 -10
  36. package/esm2020/mdc-chips/testing/chip-harness.mjs +5 -1
  37. package/esm2020/mdc-chips/testing/chip-option-harness.mjs +2 -2
  38. package/esm2020/mdc-chips/testing/chip-row-harness.mjs +10 -1
  39. package/esm2020/mdc-core/option/index.mjs +5 -5
  40. package/esm2020/mdc-core/option/optgroup.mjs +4 -4
  41. package/esm2020/mdc-core/option/option.mjs +5 -5
  42. package/esm2020/mdc-core/public-api.mjs +2 -2
  43. package/esm2020/mdc-dialog/dialog-container.mjs +5 -5
  44. package/esm2020/mdc-dialog/dialog-content-directives.mjs +13 -13
  45. package/esm2020/mdc-dialog/dialog.mjs +4 -4
  46. package/esm2020/mdc-dialog/module.mjs +5 -5
  47. package/esm2020/mdc-form-field/directives/error.mjs +4 -4
  48. package/esm2020/mdc-form-field/directives/floating-label.mjs +4 -4
  49. package/esm2020/mdc-form-field/directives/hint.mjs +4 -4
  50. package/esm2020/mdc-form-field/directives/label.mjs +4 -4
  51. package/esm2020/mdc-form-field/directives/line-ripple.mjs +4 -4
  52. package/esm2020/mdc-form-field/directives/notched-outline.mjs +4 -4
  53. package/esm2020/mdc-form-field/directives/prefix.mjs +4 -4
  54. package/esm2020/mdc-form-field/directives/suffix.mjs +4 -4
  55. package/esm2020/mdc-form-field/form-field.mjs +21 -5
  56. package/esm2020/mdc-form-field/module.mjs +5 -5
  57. package/esm2020/mdc-input/input.mjs +5 -4
  58. package/esm2020/mdc-input/module.mjs +5 -5
  59. package/esm2020/mdc-list/action-list.mjs +5 -5
  60. package/esm2020/mdc-list/interactive-list-base.mjs +4 -4
  61. package/esm2020/mdc-list/list-base.mjs +138 -41
  62. package/esm2020/mdc-list/list-item-sections.mjs +138 -0
  63. package/esm2020/mdc-list/list-option.mjs +25 -17
  64. package/esm2020/mdc-list/list.mjs +24 -18
  65. package/esm2020/mdc-list/module.mjs +46 -23
  66. package/esm2020/mdc-list/nav-list.mjs +5 -5
  67. package/esm2020/mdc-list/public-api.mjs +3 -2
  68. package/esm2020/mdc-list/selection-list.mjs +8 -8
  69. package/esm2020/mdc-list/subheader.mjs +27 -0
  70. package/esm2020/mdc-list/testing/list-harness-filters.mjs +1 -1
  71. package/esm2020/mdc-list/testing/list-item-harness-base.mjs +100 -12
  72. package/esm2020/mdc-list/testing/public-api.mjs +2 -1
  73. package/esm2020/mdc-list/testing/selection-list-harness.mjs +1 -5
  74. package/esm2020/mdc-menu/directives.mjs +7 -7
  75. package/esm2020/mdc-menu/menu-item.mjs +4 -4
  76. package/esm2020/mdc-menu/menu.mjs +4 -4
  77. package/esm2020/mdc-menu/module.mjs +5 -5
  78. package/esm2020/mdc-paginator/module.mjs +5 -5
  79. package/esm2020/mdc-paginator/paginator.mjs +4 -4
  80. package/esm2020/mdc-progress-bar/module.mjs +5 -5
  81. package/esm2020/mdc-progress-bar/progress-bar.mjs +4 -4
  82. package/esm2020/mdc-progress-spinner/module.mjs +5 -5
  83. package/esm2020/mdc-progress-spinner/progress-spinner.mjs +4 -4
  84. package/esm2020/mdc-radio/module.mjs +5 -5
  85. package/esm2020/mdc-radio/radio.mjs +8 -8
  86. package/esm2020/mdc-select/module.mjs +5 -5
  87. package/esm2020/mdc-select/select.mjs +9 -9
  88. package/esm2020/mdc-sidenav/module.mjs +5 -5
  89. package/esm2020/mdc-slide-toggle/module.mjs +5 -5
  90. package/esm2020/mdc-slide-toggle/slide-toggle.mjs +5 -5
  91. package/esm2020/mdc-slider/global-change-and-input-listener.mjs +4 -4
  92. package/esm2020/mdc-slider/module.mjs +5 -5
  93. package/esm2020/mdc-slider/slider.mjs +33 -12
  94. package/esm2020/mdc-snack-bar/module.mjs +7 -7
  95. package/esm2020/mdc-snack-bar/public-api.mjs +2 -2
  96. package/esm2020/mdc-snack-bar/simple-snack-bar.mjs +7 -7
  97. package/esm2020/mdc-snack-bar/snack-bar-container.mjs +4 -4
  98. package/esm2020/mdc-snack-bar/snack-bar-content.mjs +10 -10
  99. package/esm2020/mdc-snack-bar/snack-bar.mjs +26 -12
  100. package/esm2020/mdc-table/cell.mjs +22 -22
  101. package/esm2020/mdc-table/module.mjs +5 -5
  102. package/esm2020/mdc-table/row.mjs +22 -22
  103. package/esm2020/mdc-table/table.mjs +9 -9
  104. package/esm2020/mdc-table/text-column.mjs +4 -4
  105. package/esm2020/mdc-tabs/module.mjs +10 -6
  106. package/esm2020/mdc-tabs/public-api.mjs +2 -2
  107. package/esm2020/mdc-tabs/tab-body.mjs +8 -8
  108. package/esm2020/mdc-tabs/tab-content.mjs +4 -4
  109. package/esm2020/mdc-tabs/tab-group.mjs +7 -7
  110. package/esm2020/mdc-tabs/tab-header.mjs +5 -5
  111. package/esm2020/mdc-tabs/tab-label-wrapper.mjs +4 -4
  112. package/esm2020/mdc-tabs/tab-label.mjs +4 -4
  113. package/esm2020/mdc-tabs/tab-nav-bar/tab-nav-bar.mjs +48 -11
  114. package/esm2020/mdc-tabs/tab.mjs +5 -5
  115. package/esm2020/mdc-tabs/testing/tab-harness-filters.mjs +1 -1
  116. package/esm2020/mdc-tabs/testing/tab-nav-bar-harness.mjs +13 -1
  117. package/esm2020/mdc-tabs/testing/tab-nav-panel-harness.mjs +27 -0
  118. package/esm2020/mdc-tooltip/module.mjs +5 -5
  119. package/esm2020/mdc-tooltip/tooltip.mjs +7 -7
  120. package/esm2020/menubar/menubar-item.mjs +4 -4
  121. package/esm2020/menubar/menubar-module.mjs +5 -5
  122. package/esm2020/menubar/menubar.mjs +4 -4
  123. package/esm2020/popover-edit/lens-directives.mjs +10 -10
  124. package/esm2020/popover-edit/popover-edit-module.mjs +5 -5
  125. package/esm2020/popover-edit/table-directives.mjs +13 -13
  126. package/esm2020/selection/row-selection.mjs +4 -4
  127. package/esm2020/selection/select-all.mjs +4 -4
  128. package/esm2020/selection/selection-column.mjs +4 -4
  129. package/esm2020/selection/selection-module.mjs +5 -5
  130. package/esm2020/selection/selection-toggle.mjs +4 -4
  131. package/esm2020/selection/selection.mjs +4 -4
  132. package/esm2020/version.mjs +1 -1
  133. package/fesm2015/column-resize.mjs +36 -36
  134. package/fesm2015/column-resize.mjs.map +1 -1
  135. package/fesm2015/material-experimental.mjs +1 -1
  136. package/fesm2015/material-experimental.mjs.map +1 -1
  137. package/fesm2015/mdc-autocomplete.mjs +13 -13
  138. package/fesm2015/mdc-autocomplete.mjs.map +1 -1
  139. package/fesm2015/mdc-button.mjs +61 -60
  140. package/fesm2015/mdc-button.mjs.map +1 -1
  141. package/fesm2015/mdc-card.mjs +46 -46
  142. package/fesm2015/mdc-card.mjs.map +1 -1
  143. package/fesm2015/mdc-checkbox.mjs +13 -21
  144. package/fesm2015/mdc-checkbox.mjs.map +1 -1
  145. package/fesm2015/mdc-chips/testing.mjs +18 -8
  146. package/fesm2015/mdc-chips/testing.mjs.map +1 -1
  147. package/fesm2015/mdc-chips.mjs +753 -1063
  148. package/fesm2015/mdc-chips.mjs.map +1 -1
  149. package/fesm2015/mdc-core.mjs +12 -12
  150. package/fesm2015/mdc-core.mjs.map +1 -1
  151. package/fesm2015/mdc-dialog.mjs +23 -23
  152. package/fesm2015/mdc-dialog.mjs.map +1 -1
  153. package/fesm2015/mdc-form-field.mjs +50 -32
  154. package/fesm2015/mdc-form-field.mjs.map +1 -1
  155. package/fesm2015/mdc-input.mjs +8 -7
  156. package/fesm2015/mdc-input.mjs.map +1 -1
  157. package/fesm2015/mdc-list/testing.mjs +110 -18
  158. package/fesm2015/mdc-list/testing.mjs.map +1 -1
  159. package/fesm2015/mdc-list.mjs +353 -148
  160. package/fesm2015/mdc-list.mjs.map +1 -1
  161. package/fesm2015/mdc-menu.mjs +16 -16
  162. package/fesm2015/mdc-menu.mjs.map +1 -1
  163. package/fesm2015/mdc-paginator.mjs +7 -7
  164. package/fesm2015/mdc-paginator.mjs.map +1 -1
  165. package/fesm2015/mdc-progress-bar.mjs +7 -7
  166. package/fesm2015/mdc-progress-bar.mjs.map +1 -1
  167. package/fesm2015/mdc-progress-spinner.mjs +7 -7
  168. package/fesm2015/mdc-progress-spinner.mjs.map +1 -1
  169. package/fesm2015/mdc-radio.mjs +11 -11
  170. package/fesm2015/mdc-radio.mjs.map +1 -1
  171. package/fesm2015/mdc-select.mjs +12 -12
  172. package/fesm2015/mdc-select.mjs.map +1 -1
  173. package/fesm2015/mdc-sidenav.mjs +4 -4
  174. package/fesm2015/mdc-sidenav.mjs.map +1 -1
  175. package/fesm2015/mdc-slide-toggle.mjs +8 -8
  176. package/fesm2015/mdc-slide-toggle.mjs.map +1 -1
  177. package/fesm2015/mdc-slider.mjs +39 -18
  178. package/fesm2015/mdc-slider.mjs.map +1 -1
  179. package/fesm2015/mdc-snack-bar.mjs +46 -41
  180. package/fesm2015/mdc-snack-bar.mjs.map +1 -1
  181. package/fesm2015/mdc-table.mjs +57 -57
  182. package/fesm2015/mdc-table.mjs.map +1 -1
  183. package/fesm2015/mdc-tabs/testing.mjs +34 -0
  184. package/fesm2015/mdc-tabs/testing.mjs.map +1 -1
  185. package/fesm2015/mdc-tabs.mjs +86 -45
  186. package/fesm2015/mdc-tabs.mjs.map +1 -1
  187. package/fesm2015/mdc-tooltip.mjs +10 -10
  188. package/fesm2015/mdc-tooltip.mjs.map +1 -1
  189. package/fesm2015/menubar.mjs +10 -10
  190. package/fesm2015/menubar.mjs.map +1 -1
  191. package/fesm2015/popover-edit.mjs +25 -25
  192. package/fesm2015/popover-edit.mjs.map +1 -1
  193. package/fesm2015/selection.mjs +19 -19
  194. package/fesm2015/selection.mjs.map +1 -1
  195. package/fesm2020/column-resize.mjs +36 -36
  196. package/fesm2020/column-resize.mjs.map +1 -1
  197. package/fesm2020/material-experimental.mjs +1 -1
  198. package/fesm2020/material-experimental.mjs.map +1 -1
  199. package/fesm2020/mdc-autocomplete.mjs +13 -13
  200. package/fesm2020/mdc-autocomplete.mjs.map +1 -1
  201. package/fesm2020/mdc-button.mjs +62 -61
  202. package/fesm2020/mdc-button.mjs.map +1 -1
  203. package/fesm2020/mdc-card.mjs +46 -46
  204. package/fesm2020/mdc-card.mjs.map +1 -1
  205. package/fesm2020/mdc-checkbox.mjs +13 -21
  206. package/fesm2020/mdc-checkbox.mjs.map +1 -1
  207. package/fesm2020/mdc-chips/testing.mjs +14 -1
  208. package/fesm2020/mdc-chips/testing.mjs.map +1 -1
  209. package/fesm2020/mdc-chips.mjs +733 -1068
  210. package/fesm2020/mdc-chips.mjs.map +1 -1
  211. package/fesm2020/mdc-core.mjs +12 -12
  212. package/fesm2020/mdc-core.mjs.map +1 -1
  213. package/fesm2020/mdc-dialog.mjs +23 -23
  214. package/fesm2020/mdc-dialog.mjs.map +1 -1
  215. package/fesm2020/mdc-form-field.mjs +48 -32
  216. package/fesm2020/mdc-form-field.mjs.map +1 -1
  217. package/fesm2020/mdc-input.mjs +8 -7
  218. package/fesm2020/mdc-input.mjs.map +1 -1
  219. package/fesm2020/mdc-list/testing.mjs +100 -16
  220. package/fesm2020/mdc-list/testing.mjs.map +1 -1
  221. package/fesm2020/mdc-list.mjs +351 -148
  222. package/fesm2020/mdc-list.mjs.map +1 -1
  223. package/fesm2020/mdc-menu.mjs +16 -16
  224. package/fesm2020/mdc-menu.mjs.map +1 -1
  225. package/fesm2020/mdc-paginator.mjs +7 -7
  226. package/fesm2020/mdc-paginator.mjs.map +1 -1
  227. package/fesm2020/mdc-progress-bar.mjs +7 -7
  228. package/fesm2020/mdc-progress-bar.mjs.map +1 -1
  229. package/fesm2020/mdc-progress-spinner.mjs +7 -7
  230. package/fesm2020/mdc-progress-spinner.mjs.map +1 -1
  231. package/fesm2020/mdc-radio.mjs +11 -11
  232. package/fesm2020/mdc-radio.mjs.map +1 -1
  233. package/fesm2020/mdc-select.mjs +12 -12
  234. package/fesm2020/mdc-select.mjs.map +1 -1
  235. package/fesm2020/mdc-sidenav.mjs +4 -4
  236. package/fesm2020/mdc-sidenav.mjs.map +1 -1
  237. package/fesm2020/mdc-slide-toggle.mjs +8 -8
  238. package/fesm2020/mdc-slide-toggle.mjs.map +1 -1
  239. package/fesm2020/mdc-slider.mjs +39 -18
  240. package/fesm2020/mdc-slider.mjs.map +1 -1
  241. package/fesm2020/mdc-snack-bar.mjs +44 -34
  242. package/fesm2020/mdc-snack-bar.mjs.map +1 -1
  243. package/fesm2020/mdc-table.mjs +57 -57
  244. package/fesm2020/mdc-table.mjs.map +1 -1
  245. package/fesm2020/mdc-tabs/testing.mjs +37 -0
  246. package/fesm2020/mdc-tabs/testing.mjs.map +1 -1
  247. package/fesm2020/mdc-tabs.mjs +86 -45
  248. package/fesm2020/mdc-tabs.mjs.map +1 -1
  249. package/fesm2020/mdc-tooltip.mjs +10 -10
  250. package/fesm2020/mdc-tooltip.mjs.map +1 -1
  251. package/fesm2020/menubar.mjs +10 -10
  252. package/fesm2020/menubar.mjs.map +1 -1
  253. package/fesm2020/popover-edit.mjs +25 -25
  254. package/fesm2020/popover-edit.mjs.map +1 -1
  255. package/fesm2020/selection.mjs +19 -19
  256. package/fesm2020/selection.mjs.map +1 -1
  257. package/mdc-button/_button-base.scss +28 -15
  258. package/mdc-button/_button-theme-private.scss +35 -28
  259. package/mdc-button/_button-theme.scss +115 -80
  260. package/mdc-button/_fab-theme.scss +31 -37
  261. package/mdc-button/_icon-button-theme.scss +15 -22
  262. package/mdc-button/button-base.d.ts +7 -5
  263. package/mdc-button/fab.d.ts +1 -1
  264. package/mdc-button/icon-button.d.ts +2 -2
  265. package/mdc-checkbox/_checkbox-theme.scss +39 -41
  266. package/mdc-checkbox/checkbox.d.ts +0 -6
  267. package/mdc-checkbox/module.d.ts +2 -3
  268. package/mdc-chips/_chips-theme.scss +53 -53
  269. package/mdc-chips/chip-action.d.ts +40 -0
  270. package/mdc-chips/chip-grid.d.ts +6 -24
  271. package/mdc-chips/chip-icons.d.ts +14 -37
  272. package/mdc-chips/chip-listbox.d.ts +4 -40
  273. package/mdc-chips/chip-option.d.ts +15 -11
  274. package/mdc-chips/chip-row.d.ts +13 -28
  275. package/mdc-chips/chip-set.d.ts +25 -42
  276. package/mdc-chips/chip.d.ts +37 -36
  277. package/mdc-chips/emit-event.d.ts +16 -0
  278. package/mdc-chips/module.d.ts +13 -12
  279. package/mdc-chips/testing/chip-harness.d.ts +1 -0
  280. package/mdc-chips/testing/chip-row-harness.d.ts +4 -0
  281. package/mdc-core/option/_option-theme.scss +3 -3
  282. package/mdc-core/option/option.d.ts +3 -3
  283. package/mdc-core/public-api.d.ts +1 -1
  284. package/mdc-form-field/_form-field-subscript.scss +11 -0
  285. package/mdc-form-field/form-field.d.ts +12 -1
  286. package/mdc-helpers/_focus-indicators.scss +15 -3
  287. package/mdc-list/_interactive-list-theme.scss +17 -11
  288. package/mdc-list/_list-option-theme.scss +2 -2
  289. package/mdc-list/_list-theme.scss +7 -3
  290. package/mdc-list/list-base.d.ts +56 -11
  291. package/mdc-list/list-item-sections.d.ts +77 -0
  292. package/mdc-list/list-option.d.ts +11 -8
  293. package/mdc-list/list.d.ts +6 -2
  294. package/mdc-list/module.d.ts +7 -5
  295. package/mdc-list/public-api.d.ts +2 -1
  296. package/mdc-list/subheader.d.ts +9 -0
  297. package/mdc-list/testing/list-harness-filters.d.ts +8 -0
  298. package/mdc-list/testing/list-item-harness-base.d.ts +36 -3
  299. package/mdc-list/testing/public-api.d.ts +1 -1
  300. package/mdc-list/testing/selection-list-harness.d.ts +0 -2
  301. package/mdc-radio/_radio-theme.scss +0 -6
  302. package/mdc-select/_select-theme.scss +6 -27
  303. package/mdc-slider/slider.d.ts +13 -1
  304. package/mdc-snack-bar/module.d.ts +1 -1
  305. package/mdc-snack-bar/public-api.d.ts +1 -1
  306. package/mdc-snack-bar/simple-snack-bar.d.ts +4 -4
  307. package/mdc-snack-bar/snack-bar.d.ts +17 -5
  308. package/mdc-table/_table-theme.scss +1 -1
  309. package/mdc-tabs/_tabs-common.scss +8 -1
  310. package/mdc-tabs/_tabs-theme.scss +8 -55
  311. package/mdc-tabs/module.d.ts +1 -1
  312. package/mdc-tabs/public-api.d.ts +1 -1
  313. package/mdc-tabs/tab-nav-bar/tab-nav-bar.d.ts +11 -0
  314. package/mdc-tabs/testing/tab-harness-filters.d.ts +3 -0
  315. package/mdc-tabs/testing/tab-nav-bar-harness.d.ts +3 -0
  316. package/mdc-tabs/testing/tab-nav-panel-harness.d.ts +23 -0
  317. package/mdc-theming/prebuilt/deeppurple-amber.css +1 -0
  318. package/mdc-theming/prebuilt/indigo-pink.css +1 -1
  319. package/mdc-theming/prebuilt/pink-bluegrey.css +1 -0
  320. package/mdc-theming/prebuilt/purple-green.css +1 -0
  321. package/mdc-tooltip/_tooltip-theme.scss +1 -1
  322. package/package.json +16 -2
  323. package/esm2020/mdc-chips/grid-focus-key-manager.mjs +0 -21
  324. package/esm2020/mdc-chips/grid-key-manager.mjs +0 -218
  325. package/esm2020/mdc-list/list-styling.mjs +0 -92
  326. package/mdc-chips/grid-focus-key-manager.d.ts +0 -28
  327. package/mdc-chips/grid-key-manager.d.ts +0 -116
  328. package/mdc-list/list-styling.d.ts +0 -40
@@ -1,146 +1,181 @@
1
+ @use 'sass:map';
1
2
  @use '@material/button/button' as mdc-button;
2
3
  @use '@material/button/button-theme' as mdc-button-theme;
3
- @use '@material/ripple/ripple-theme' as mdc-ripple-theme;
4
+ @use '@material/button/button-text-theme' as mdc-button-text-theme;
5
+ @use '@material/button/button-filled-theme' as mdc-button-filled-theme;
6
+ @use '@material/button/button-protected-theme' as mdc-button-protected-theme;
7
+ @use '@material/button/button-outlined-theme' as mdc-button-outlined-theme;
4
8
  @use '@material/theme/theme-color' as mdc-theme-color;
5
- @use '@material/theme/theme' as mdc-theme;
6
- @use '@material/elevation/elevation-theme' as mdc-elevation-theme;
7
- @use '../../material/core/ripple/ripple-theme';
8
9
  @use '../../material/core/typography/typography';
9
10
  @use '../mdc-helpers/mdc-helpers';
10
11
  @use '../../material/core/theming/theming';
11
12
  @use './button-theme-private';
12
13
 
14
+ @mixin _button-variant($color) {
15
+ @include mdc-button-text-theme.theme((
16
+ label-text-color: $color,
17
+ ));
18
+ }
19
+
20
+ @mixin _unelevated-button-variant($foreground, $background) {
21
+ @include mdc-button-filled-theme.theme((
22
+ container-color: $background,
23
+ label-text-color: $foreground,
24
+ ));
25
+ }
26
+
27
+ @mixin _raised-button-variant($foreground, $background) {
28
+ @include mdc-button-protected-theme.theme((
29
+ container-color: $background,
30
+ label-text-color: $foreground,
31
+ ));
32
+ }
33
+
34
+ @mixin _outlined-button-variant($color) {
35
+ @include mdc-button-outlined-theme.theme((
36
+ label-text-color: $color,
37
+ outline-color: $color,
38
+ ));
39
+ }
40
+
13
41
  @mixin color($config-or-theme) {
14
42
  $config: theming.get-color-config($config-or-theme);
15
43
  @include mdc-helpers.mat-using-mdc-theme($config) {
16
- // Add state interactions for hover, focus, press, active. Colors are changed based on
17
- // the mixin mdc-states-base-color
18
- .mat-mdc-button, .mat-mdc-raised-button, .mat-mdc-unelevated-button, .mat-mdc-outlined-button {
19
- @include mdc-ripple-theme.states(
20
- $query: mdc-helpers.$mat-theme-styles-query,
21
- $ripple-target: button-theme-private.$button-state-target);
22
- }
23
-
24
- .mat-mdc-button, .mat-mdc-outlined-button {
44
+ $is-dark: map.get($config, is-dark);
45
+ $on-surface: mdc-theme-color.prop-value(on-surface);
46
+ $surface: mdc-theme-color.prop-value(surface);
47
+ $disabled-ink-color: rgba($on-surface, if($is-dark, 0.5, 0.38));
48
+ $disabled-container-color: rgba($on-surface, 0.12);
49
+ $primary: mdc-theme-color.prop-value(primary);
50
+ $on-primary: mdc-theme-color.prop-value(on-primary);
51
+ $secondary: mdc-theme-color.prop-value(secondary);
52
+ $on-secondary: mdc-theme-color.prop-value(on-secondary);
53
+ $error: mdc-theme-color.prop-value(error);
54
+ $on-error: mdc-theme-color.prop-value(on-error);
55
+
56
+ .mat-mdc-button {
25
57
  &.mat-unthemed {
26
- @include mdc-button-theme.ink-color(mdc-theme-color.$on-surface,
27
- $query: mdc-helpers.$mat-theme-styles-query);
58
+ @include _button-variant($on-surface);
28
59
  }
29
60
 
30
61
  &.mat-primary {
31
- @include mdc-button-theme.ink-color(primary, $query: mdc-helpers.$mat-theme-styles-query);
32
- @include mdc-ripple-theme.states-base-color(primary,
33
- $query: mdc-helpers.$mat-theme-styles-query,
34
- $ripple-target: button-theme-private.$button-state-target);
35
- @include button-theme-private.ripple-ink-color(primary);
62
+ @include _button-variant($primary);
36
63
  }
37
64
 
38
65
  &.mat-accent {
39
- @include mdc-button-theme.ink-color(secondary, $query: mdc-helpers.$mat-theme-styles-query);
40
- @include mdc-ripple-theme.states-base-color(secondary,
41
- $query: mdc-helpers.$mat-theme-styles-query,
42
- $ripple-target: button-theme-private.$button-state-target);
43
- @include button-theme-private.ripple-ink-color(secondary);
66
+ @include _button-variant($secondary);
44
67
  }
45
68
 
46
69
  &.mat-warn {
47
- @include mdc-button-theme.ink-color(error, $query: mdc-helpers.$mat-theme-styles-query);
48
- @include mdc-ripple-theme.states-base-color(error,
49
- $query: mdc-helpers.$mat-theme-styles-query,
50
- $ripple-target: button-theme-private.$button-state-target);
51
- @include button-theme-private.ripple-ink-color(error);
70
+ @include _button-variant($error);
71
+ }
72
+
73
+ @include button-theme-private.apply-disabled-style() {
74
+ @include mdc-button-text-theme.theme((
75
+ // We need to pass both the disabled and enabled values, because the enabled
76
+ // ones apply to anchors while the disabled ones are for buttons.
77
+ disabled-label-text-color: $disabled-ink-color,
78
+ label-text-color: $disabled-ink-color
79
+ ));
52
80
  }
53
81
  }
54
82
 
55
- .mat-mdc-raised-button,
56
83
  .mat-mdc-unelevated-button {
57
84
  &.mat-unthemed {
58
- @include mdc-button-theme.container-fill-color(mdc-theme-color.$surface,
59
- $query: mdc-helpers.$mat-theme-styles-query);
60
- @include mdc-button-theme.ink-color(mdc-theme-color.$on-surface,
61
- $query: mdc-helpers.$mat-theme-styles-query);
62
- @include mdc-ripple-theme.states-base-color(mdc-theme-color.$on-surface,
63
- $query: mdc-helpers.$mat-theme-styles-query,
64
- $ripple-target: button-theme-private.$button-state-target);
85
+ @include _unelevated-button-variant($on-surface, $surface);
65
86
  }
66
87
 
67
88
  &.mat-primary {
68
- @include mdc-button-theme.container-fill-color(primary,
69
- $query: mdc-helpers.$mat-theme-styles-query);
70
- @include mdc-button-theme.ink-color(on-primary,
71
- $query: mdc-helpers.$mat-theme-styles-query);
72
- @include mdc-ripple-theme.states-base-color(on-primary,
73
- $query: mdc-helpers.$mat-theme-styles-query,
74
- $ripple-target: button-theme-private.$button-state-target);
75
- @include button-theme-private.ripple-ink-color(on-primary);
89
+ @include _unelevated-button-variant($on-primary, $primary);
76
90
  }
77
91
 
78
92
  &.mat-accent {
79
- @include mdc-button-theme.container-fill-color(secondary,
80
- $query: mdc-helpers.$mat-theme-styles-query);
81
- @include mdc-button-theme.ink-color(on-secondary,
82
- $query: mdc-helpers.$mat-theme-styles-query);
83
- @include mdc-ripple-theme.states-base-color(on-secondary,
84
- $query: mdc-helpers.$mat-theme-styles-query,
85
- $ripple-target: button-theme-private.$button-state-target);
86
- @include button-theme-private.ripple-ink-color(on-secondary);
93
+ @include _unelevated-button-variant($on-secondary, $secondary);
87
94
  }
88
95
 
89
96
  &.mat-warn {
90
- @include mdc-button-theme.container-fill-color(error,
91
- $query: mdc-helpers.$mat-theme-styles-query);
92
- @include mdc-button-theme.ink-color(on-error, $query: mdc-helpers.$mat-theme-styles-query);
93
- @include mdc-ripple-theme.states-base-color(on-error,
94
- $query: mdc-helpers.$mat-theme-styles-query,
95
- $ripple-target: button-theme-private.$button-state-target);
96
- @include button-theme-private.ripple-ink-color(on-error);
97
+ @include _unelevated-button-variant($on-error, $error);
97
98
  }
98
99
 
99
100
  @include button-theme-private.apply-disabled-style() {
100
- @include button-theme-private.apply-disabled-background();
101
+ @include mdc-button-filled-theme.theme((
102
+ // We need to pass both the disabled and enabled values, because the enabled
103
+ // ones apply to anchors while the disabled ones are for buttons.
104
+ disabled-container-color: $disabled-container-color,
105
+ disabled-label-text-color: $disabled-ink-color,
106
+ container-color: $disabled-container-color,
107
+ label-text-color: $disabled-ink-color,
108
+ ));
101
109
  }
102
110
  }
103
111
 
104
- .mat-mdc-outlined-button {
112
+ .mat-mdc-raised-button {
105
113
  &.mat-unthemed {
106
- @include mdc-button-theme.outline-color(mdc-theme-color.$on-surface,
107
- $query: mdc-helpers.$mat-theme-styles-query);
114
+ @include _raised-button-variant($on-surface, $surface);
108
115
  }
109
116
 
110
117
  &.mat-primary {
111
- @include mdc-button-theme.outline-color(primary,
112
- $query: mdc-helpers.$mat-theme-styles-query);
118
+ @include _raised-button-variant($on-primary, $primary);
113
119
  }
114
120
 
115
121
  &.mat-accent {
116
- @include mdc-button-theme.outline-color(secondary,
117
- $query: mdc-helpers.$mat-theme-styles-query);
122
+ @include _raised-button-variant($on-secondary, $secondary);
118
123
  }
119
124
 
120
125
  &.mat-warn {
121
- @include mdc-button-theme.outline-color(error,
122
- $query: mdc-helpers.$mat-theme-styles-query);
126
+ @include _raised-button-variant($on-error, $error);
123
127
  }
124
128
 
125
129
  @include button-theme-private.apply-disabled-style() {
126
- @include mdc-theme.prop(border-color,
127
- mdc-theme-color.ink-color-for-fill_(disabled, mdc-theme-color.$background));
130
+ @include mdc-button-protected-theme.theme((
131
+ // We need to pass both the disabled and enabled values, because the enabled
132
+ // ones apply to anchors while the disabled ones are for buttons.
133
+ disabled-container-color: $disabled-container-color,
134
+ disabled-label-text-color: $disabled-ink-color,
135
+ container-color: $disabled-container-color,
136
+ label-text-color: $disabled-ink-color,
137
+ container-elevation: 0,
138
+ ));
128
139
  }
129
140
  }
130
141
 
131
- .mat-mdc-raised-button {
132
- @include button-theme-private.apply-disabled-style() {
133
- @include mdc-elevation-theme.elevation(0, $query: mdc-helpers.$mat-theme-styles-query);
142
+ .mat-mdc-outlined-button {
143
+ &.mat-unthemed {
144
+ @include _outlined-button-variant($on-surface);
145
+ }
146
+
147
+ &.mat-primary {
148
+ @include _outlined-button-variant($primary);
149
+ }
150
+
151
+ &.mat-accent {
152
+ @include _outlined-button-variant($secondary);
153
+ }
154
+
155
+ &.mat-warn {
156
+ @include _outlined-button-variant($error);
134
157
  }
135
- }
136
158
 
137
- .mat-mdc-button, .mat-mdc-raised-button, .mat-mdc-unelevated-button, .mat-mdc-outlined-button {
138
159
  @include button-theme-private.apply-disabled-style() {
139
- @include button-theme-private.apply-disabled-color();
160
+ @include mdc-button-outlined-theme.theme((
161
+ // We need to pass both the disabled and enabled values, because the enabled
162
+ // ones apply to anchors while the disabled ones are for buttons.
163
+ label-text-color: $disabled-ink-color,
164
+ outline-color: $disabled-ink-color,
165
+ disabled-label-text-color: $disabled-ink-color,
166
+ disabled-outline-color: $disabled-ink-color,
167
+ ));
140
168
  }
141
169
  }
142
170
 
143
- @include mdc-button.without-ripple($query: mdc-helpers.$mat-theme-styles-query);
171
+ // Ripple colors
172
+ .mat-mdc-button, .mat-mdc-outlined-button {
173
+ @include button-theme-private.ripple-theme-styles($config, false);
174
+ }
175
+
176
+ .mat-mdc-raised-button, .mat-mdc-unelevated-button {
177
+ @include button-theme-private.ripple-theme-styles($config, true);
178
+ }
144
179
  }
145
180
  }
146
181
 
@@ -1,68 +1,62 @@
1
+ @use 'sass:map';
1
2
  @use '@material/fab/fab' as mdc-fab;
2
3
  @use '@material/fab/fab-theme' as mdc-fab-theme;
3
- @use '@material/ripple/ripple-theme' as mdc-ripple-theme;
4
- @use '@material/elevation/elevation-theme' as mdc-elevation-theme;
5
4
  @use '@material/theme/theme-color' as mdc-theme-color;
6
5
  @use '../mdc-helpers/mdc-helpers';
7
6
  @use '../../material/core/theming/theming';
8
7
  @use '../../material/core/typography/typography';
9
8
  @use './button-theme-private';
10
9
 
10
+ @mixin _fab-variant($foreground, $background) {
11
+ @include mdc-fab-theme.theme((
12
+ container-color: $background,
13
+ icon-color: $foreground,
14
+ ));
15
+
16
+ --mat-mdc-fab-color: #{$foreground};
17
+ }
18
+
11
19
  @mixin color($config-or-theme) {
12
20
  $config: theming.get-color-config($config-or-theme);
13
21
  @include mdc-helpers.mat-using-mdc-theme($config) {
22
+ $on-surface: mdc-theme-color.prop-value(on-surface);
23
+ $is-dark: map.get($config, is-dark);
24
+
14
25
  .mat-mdc-fab, .mat-mdc-mini-fab {
15
- @include mdc-ripple-theme.states(
16
- $query: mdc-helpers.$mat-theme-styles-query,
17
- $ripple-target: button-theme-private.$fab-state-target);
26
+ @include button-theme-private.ripple-theme-styles($config, true);
18
27
 
19
28
  &.mat-unthemed {
20
- @include mdc-ripple-theme.states-base-color(mdc-theme-color.$on-surface,
21
- $query: mdc-helpers.$mat-theme-styles-query,
22
- $ripple-target: button-theme-private.$fab-state-target);
23
- @include mdc-fab-theme.container-color(mdc-theme-color.$on-surface,
24
- $query: mdc-helpers.$mat-theme-styles-query);
25
- @include mdc-fab-theme.ink-color(mdc-theme-color.$on-surface,
26
- $query: mdc-helpers.$mat-theme-styles-query);
29
+ @include _fab-variant($on-surface, mdc-theme-color.prop-value(surface));
27
30
  }
28
31
 
29
32
  &.mat-primary {
30
- @include mdc-ripple-theme.states-base-color(on-primary,
31
- $query: mdc-helpers.$mat-theme-styles-query,
32
- $ripple-target: button-theme-private.$fab-state-target);
33
- @include mdc-fab-theme.container-color(primary,
34
- $query: mdc-helpers.$mat-theme-styles-query);
35
- @include mdc-fab-theme.ink-color(on-primary, $query: mdc-helpers.$mat-theme-styles-query);
36
- @include button-theme-private.ripple-ink-color(on-primary);
33
+ @include _fab-variant(
34
+ mdc-theme-color.prop-value(on-primary),
35
+ mdc-theme-color.prop-value(primary)
36
+ );
37
37
  }
38
38
 
39
39
  &.mat-accent {
40
- @include mdc-ripple-theme.states-base-color(on-secondary,
41
- $query: mdc-helpers.$mat-theme-styles-query,
42
- $ripple-target: button-theme-private.$fab-state-target);
43
- @include mdc-fab-theme.container-color(secondary,
44
- $query: mdc-helpers.$mat-theme-styles-query);
45
- @include mdc-fab-theme.ink-color(on-secondary, $query: mdc-helpers.$mat-theme-styles-query);
46
- @include button-theme-private.ripple-ink-color(on-secondary);
40
+ @include _fab-variant(
41
+ mdc-theme-color.prop-value(on-secondary),
42
+ mdc-theme-color.prop-value(secondary)
43
+ );
47
44
  }
48
45
 
49
46
  &.mat-warn {
50
- @include mdc-ripple-theme.states-base-color(on-error,
51
- $query: mdc-helpers.$mat-theme-styles-query,
52
- $ripple-target: button-theme-private.$fab-state-target);
53
- @include mdc-fab-theme.container-color(error, $query: mdc-helpers.$mat-theme-styles-query);
54
- @include mdc-fab-theme.ink-color(on-error, $query: mdc-helpers.$mat-theme-styles-query);
55
- @include button-theme-private.ripple-ink-color(on-error);
47
+ @include _fab-variant(
48
+ mdc-theme-color.prop-value(on-error),
49
+ mdc-theme-color.prop-value(error)
50
+ );
56
51
  }
57
52
 
58
53
  @include button-theme-private.apply-disabled-style() {
59
- @include button-theme-private.apply-disabled-color();
60
- @include button-theme-private.apply-disabled-background();
61
- @include mdc-elevation-theme.elevation(0, $query: mdc-helpers.$mat-theme-styles-query);
54
+ @include _fab-variant(
55
+ rgba($on-surface, if(map.get($config, is-dark), 0.5, 0.38)),
56
+ rgba($on-surface, 0.12)
57
+ );
62
58
  }
63
59
  }
64
-
65
- @include mdc-fab.without-ripple($query: mdc-helpers.$mat-theme-styles-query);
66
60
  }
67
61
  }
68
62
 
@@ -1,5 +1,7 @@
1
+ @use 'sass:map';
1
2
  @use '@material/icon-button/mixins' as mdc-icon-button;
2
- @use '@material/ripple/ripple-theme' as mdc-ripple-theme;
3
+ @use '@material/icon-button/icon-button-theme' as mdc-icon-button-theme;
4
+ @use '@material/theme/theme-color' as mdc-theme-color;
3
5
  @use '../mdc-helpers/mdc-helpers';
4
6
  @use '../../material/core/theming/theming';
5
7
  @use '../../material/core/typography/typography';
@@ -8,41 +10,32 @@
8
10
  @mixin color($config-or-theme) {
9
11
  $config: theming.get-color-config($config-or-theme);
10
12
  @include mdc-helpers.mat-using-mdc-theme($config) {
13
+ $is-dark: map.get($config, is-dark);
14
+ $on-surface: mdc-theme-color.prop-value(on-surface);
15
+ $disabled-color: rgba($on-surface, if($is-dark, 0.5, 0.38));
16
+
11
17
  .mat-mdc-icon-button {
12
- @include mdc-ripple-theme.states(
13
- $query: mdc-helpers.$mat-theme-styles-query,
14
- $ripple-target: button-theme-private.$button-state-target);
18
+ @include button-theme-private.ripple-theme-styles($config, false);
15
19
 
16
20
  &.mat-primary {
17
- @include mdc-ripple-theme.states-base-color(primary,
18
- $query: mdc-helpers.$mat-theme-styles-query,
19
- $ripple-target: button-theme-private.$button-state-target);
20
- @include mdc-icon-button.ink-color(primary, $query: mdc-helpers.$mat-theme-styles-query);
21
- @include button-theme-private.ripple-ink-color(primary);
21
+ @include mdc-icon-button-theme.theme((icon-color: mdc-theme-color.prop-value(primary)));
22
22
  }
23
23
 
24
24
  &.mat-accent {
25
- @include mdc-ripple-theme.states-base-color(secondary,
26
- $query: mdc-helpers.$mat-theme-styles-query,
27
- $ripple-target: button-theme-private.$button-state-target);
28
- @include mdc-icon-button.ink-color(secondary, $query: mdc-helpers.$mat-theme-styles-query);
29
- @include button-theme-private.ripple-ink-color(secondary);
25
+ @include mdc-icon-button-theme.theme((icon-color: mdc-theme-color.prop-value(secondary)));
30
26
  }
31
27
 
32
28
  &.mat-warn {
33
- @include mdc-ripple-theme.states-base-color(error,
34
- $query: mdc-helpers.$mat-theme-styles-query,
35
- $ripple-target: button-theme-private.$button-state-target);
36
- @include mdc-icon-button.ink-color(error, $query: mdc-helpers.$mat-theme-styles-query);
37
- @include button-theme-private.ripple-ink-color(error);
29
+ @include mdc-icon-button-theme.theme((icon-color: (mdc-theme-color.prop-value(error))));
38
30
  }
39
31
 
40
32
  @include button-theme-private.apply-disabled-style() {
41
- @include button-theme-private.apply-disabled-color();
33
+ @include mdc-icon-button-theme.theme((
34
+ icon-color: $disabled-color,
35
+ disabled-icon-color: $disabled-color,
36
+ ));
42
37
  }
43
38
  }
44
-
45
- @include mdc-icon-button.without-ripple($query: mdc-helpers.$mat-theme-styles-query);
46
39
  }
47
40
  }
48
41
 
@@ -6,7 +6,7 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  import { Platform } from '@angular/cdk/platform';
9
- import { ElementRef, NgZone } from '@angular/core';
9
+ import { ElementRef, NgZone, OnDestroy, OnInit } from '@angular/core';
10
10
  import { CanColor, CanDisable, CanDisableRipple, MatRipple } from '@angular/material-experimental/mdc-core';
11
11
  import { FocusOrigin } from '@angular/cdk/a11y';
12
12
  import * as i0 from "@angular/core";
@@ -30,10 +30,10 @@ export declare class MatButtonBase extends _MatButtonMixin implements CanDisable
30
30
  _platform: Platform;
31
31
  _ngZone: NgZone;
32
32
  _animationMode?: string | undefined;
33
- /** Whether the ripple is centered on the button. */
34
- _isRippleCentered: boolean;
35
33
  /** Whether this button is a FAB. Used to apply the correct class on the ripple. */
36
34
  _isFab: boolean;
35
+ /** Whether this button is an icon button. Used to apply the correct class on the ripple. */
36
+ _isIconButton: boolean;
37
37
  /** Reference to the MatRipple instance of the button. */
38
38
  ripple: MatRipple;
39
39
  constructor(elementRef: ElementRef, _platform: Platform, _ngZone: NgZone, _animationMode?: string | undefined);
@@ -59,10 +59,12 @@ export declare const MAT_ANCHOR_HOST: {
59
59
  /**
60
60
  * Anchor button base.
61
61
  */
62
- export declare class MatAnchorBase extends MatButtonBase {
62
+ export declare class MatAnchorBase extends MatButtonBase implements OnInit, OnDestroy {
63
63
  tabIndex: number;
64
64
  constructor(elementRef: ElementRef, platform: Platform, ngZone: NgZone, animationMode?: string);
65
- _haltDisabledEvents(event: Event): void;
65
+ ngOnInit(): void;
66
+ ngOnDestroy(): void;
67
+ _haltDisabledEvents: (event: Event) => void;
66
68
  static ɵfac: i0.ɵɵFactoryDeclaration<MatAnchorBase, never>;
67
69
  static ɵdir: i0.ɵɵDirectiveDeclaration<MatAnchorBase, never, never, {}, {}, never>;
68
70
  }
@@ -64,7 +64,7 @@ export declare class MatFabAnchor extends MatAnchor {
64
64
  private _extended;
65
65
  constructor(elementRef: ElementRef, platform: Platform, ngZone: NgZone, animationMode?: string, _options?: MatFabDefaultOptions | undefined);
66
66
  static ɵfac: i0.ɵɵFactoryDeclaration<MatFabAnchor, [null, null, null, { optional: true; }, { optional: true; }]>;
67
- static ɵcmp: i0.ɵɵComponentDeclaration<MatFabAnchor, "a[mat-fab]", ["matButton", "matAnchor"], { "disabled": "disabled"; "disableRipple": "disableRipple"; "color": "color"; "extended": "extended"; }, {}, never, [".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd])", "*", ".material-icons[iconPositionEnd], mat-icon[iconPositionEnd]"]>;
67
+ static ɵcmp: i0.ɵɵComponentDeclaration<MatFabAnchor, "a[mat-fab]", ["matButton", "matAnchor"], { "disabled": "disabled"; "disableRipple": "disableRipple"; "color": "color"; "tabIndex": "tabIndex"; "extended": "extended"; }, {}, never, [".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd])", "*", ".material-icons[iconPositionEnd], mat-icon[iconPositionEnd]"]>;
68
68
  }
69
69
  /**
70
70
  * Material Design mini floating action button (FAB) component for anchor elements. Anchor elements
@@ -15,7 +15,7 @@ import * as i0 from "@angular/core";
15
15
  * See https://material.io/develop/web/components/buttons/icon-buttons/
16
16
  */
17
17
  export declare class MatIconButton extends MatButtonBase {
18
- _isRippleCentered: boolean;
18
+ _isIconButton: boolean;
19
19
  constructor(elementRef: ElementRef, platform: Platform, ngZone: NgZone, animationMode?: string);
20
20
  static ɵfac: i0.ɵɵFactoryDeclaration<MatIconButton, [null, null, null, { optional: true; }]>;
21
21
  static ɵcmp: i0.ɵɵComponentDeclaration<MatIconButton, "button[mat-icon-button]", ["matButton"], { "disabled": "disabled"; "disableRipple": "disableRipple"; "color": "color"; }, {}, never, [".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd])", "*", ".material-icons[iconPositionEnd], mat-icon[iconPositionEnd]"]>;
@@ -26,7 +26,7 @@ export declare class MatIconButton extends MatButtonBase {
26
26
  * See https://material.io/develop/web/components/buttons/icon-buttons/
27
27
  */
28
28
  export declare class MatIconAnchor extends MatAnchorBase {
29
- _isRippleCentered: boolean;
29
+ _isIconButton: boolean;
30
30
  constructor(elementRef: ElementRef, platform: Platform, ngZone: NgZone, animationMode?: string);
31
31
  static ɵfac: i0.ɵɵFactoryDeclaration<MatIconAnchor, [null, null, null, { optional: true; }]>;
32
32
  static ɵcmp: i0.ɵɵComponentDeclaration<MatIconAnchor, "a[mat-icon-button]", ["matButton", "matAnchor"], { "disabled": "disabled"; "disableRipple": "disableRipple"; "color": "color"; "tabIndex": "tabIndex"; }, {}, never, [".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd])", "*", ".material-icons[iconPositionEnd], mat-icon[iconPositionEnd]"]>;
@@ -4,6 +4,7 @@
4
4
  @use '@material/theme/theme-color' as mdc-theme-color;
5
5
  @use '@material/theme/theme';
6
6
  @use 'sass:map';
7
+ @use 'sass:color';
7
8
  @use '../mdc-helpers/mdc-helpers';
8
9
  @use '../../material/core/typography/typography';
9
10
  @use '../../material/core/theming/theming';
@@ -12,25 +13,37 @@
12
13
 
13
14
  // Mixin that includes the checkbox theme styles with a given palette.
14
15
  // By default, the MDC checkbox always uses the `secondary` palette.
15
- @mixin private-checkbox-styles-with-color($color) {
16
- @include mdc-checkbox-theme.theme-deprecated(
17
- (
18
- checkmark-color: mdc-theme-color.prop-value(on-#{$color}),
19
- container-checked-color: $color,
20
- container-disabled-color: rgba(mdc-theme-color.prop-value(on-surface), 0.38),
21
- outline-color: rgba(mdc-theme-color.prop-value(on-surface), 0.54),
22
- )
23
- );
16
+ @mixin private-checkbox-styles-with-color($color, $mdc-color) {
17
+ $on-surface: mdc-theme-color.prop-value(on-surface);
18
+ $border-color: rgba($on-surface, color.opacity(mdc-checkbox-theme.$border-color));
19
+ $disabled-color: rgba($on-surface, color.opacity(mdc-checkbox-theme.$disabled-color));
20
+
21
+ @include mdc-checkbox-theme.theme((
22
+ selected-checkmark-color: mdc-theme-color.prop-value(on-#{$mdc-color}),
23
+
24
+ selected-focus-icon-color: $color,
25
+ selected-hover-icon-color: $color,
26
+ selected-icon-color: $color,
27
+ selected-pressed-icon-color: $color,
28
+ unselected-focus-icon-color: $color,
29
+ unselected-hover-icon-color: $color,
30
+
31
+ disabled-selected-icon-color: $disabled-color,
32
+ disabled-unselected-icon-color: $disabled-color,
33
+
34
+ unselected-icon-color: $border-color,
35
+ unselected-pressed-icon-color: $border-color,
36
+ ));
24
37
  }
25
38
 
26
39
  // Apply ripple colors to the MatRipple element and the MDC ripple element when the
27
40
  // checkbox is selected.
28
- @mixin _selected-ripple-colors($theme, $mdcColor) {
41
+ @mixin _selected-ripple-colors($theme, $mdc-color) {
29
42
  .mdc-checkbox--selected ~ {
30
43
  .mat-mdc-checkbox-ripple {
31
44
  @include ripple-theme.color((
32
45
  foreground: (
33
- base: mdc-theme-color.prop-value($mdcColor)
46
+ base: mdc-theme-color.prop-value($mdc-color)
34
47
  ),
35
48
  ));
36
49
  }
@@ -47,21 +60,7 @@
47
60
  $accent: theming.get-color-from-palette(map.get($config, accent));
48
61
  $warn: theming.get-color-from-palette(map.get($config, warn));
49
62
 
50
- // Save original values of MDC global variables. We need to save these so we can restore the
51
- // variables to their original values and prevent unintended side effects from using this mixin.
52
- $orig-border-color: mdc-checkbox-theme.$border-color;
53
- $orig-disabled-color: mdc-checkbox-theme.$disabled-color;
54
-
55
63
  @include mdc-helpers.mat-using-mdc-theme($config) {
56
- mdc-checkbox-theme.$border-color: rgba(
57
- mdc-theme-color.prop-value(on-surface),
58
- 0.54
59
- );
60
- mdc-checkbox-theme.$disabled-color: rgba(
61
- mdc-theme-color.prop-value(on-surface),
62
- 0.26
63
- );
64
-
65
64
  .mat-mdc-checkbox {
66
65
  @include mdc-form-field.core-styles($query: mdc-helpers.$mat-theme-styles-query);
67
66
  @include ripple-theme.color((
@@ -78,25 +77,21 @@
78
77
  // class for accent and warn style, and applying the appropriate overrides below. Since we
79
78
  // don't use MDC's ripple, we also need to set the color for our replacement ripple.
80
79
  &.mat-primary {
81
- @include private-checkbox-styles-with-color(primary);
80
+ @include private-checkbox-styles-with-color($primary, primary);
82
81
  @include _selected-ripple-colors($primary, primary);
83
82
  }
84
83
 
85
84
  &.mat-accent {
86
- @include private-checkbox-styles-with-color(secondary);
85
+ @include private-checkbox-styles-with-color($accent, secondary);
87
86
  @include _selected-ripple-colors($accent, secondary);
88
87
  }
89
88
 
90
89
  &.mat-warn {
91
- @include private-checkbox-styles-with-color(error);
90
+ @include private-checkbox-styles-with-color($warn, error);
92
91
  @include _selected-ripple-colors($warn, error);
93
92
  }
94
93
  }
95
94
  }
96
-
97
- // Restore original values of MDC global variables.
98
- mdc-checkbox-theme.$border-color: $orig-border-color;
99
- mdc-checkbox-theme.$disabled-color: $orig-disabled-color;
100
95
  }
101
96
 
102
97
  @mixin typography($config-or-theme) {
@@ -110,16 +105,19 @@
110
105
 
111
106
  @mixin density($config-or-theme) {
112
107
  $density-scale: theming.get-density-config($config-or-theme);
113
- .mat-mdc-checkbox .mdc-checkbox {
114
- @include mdc-checkbox-theme.density(
115
- $density-scale,
116
- $query: mdc-helpers.$mat-base-styles-query
117
- );
118
- }
119
108
 
120
- @if ($density-scale == -2 or $density-scale == 'minimum') {
121
- .mat-mdc-checkbox-touch-target {
122
- display: none;
109
+ @include mdc-helpers.disable-fallback-declarations {
110
+ .mat-mdc-checkbox .mdc-checkbox {
111
+ @include mdc-checkbox-theme.density(
112
+ $density-scale,
113
+ $query: mdc-helpers.$mat-base-styles-query
114
+ );
115
+ }
116
+
117
+ @if ($density-scale == -2 or $density-scale == 'minimum') {
118
+ .mat-mdc-checkbox-touch-target {
119
+ display: none;
120
+ }
123
121
  }
124
122
  }
125
123
  }
@@ -87,10 +87,6 @@ export declare class MatCheckbox extends _MatCheckboxBase implements AfterViewIn
87
87
  get inputId(): string;
88
88
  /** The `MDCCheckboxFoundation` instance for this checkbox. */
89
89
  _checkboxFoundation: MDCCheckboxFoundation;
90
- /** The set of classes that should be applied to the native input. */
91
- _classes: {
92
- [key: string]: boolean;
93
- };
94
90
  /** ControlValueAccessor onChange */
95
91
  private _cvaOnChange;
96
92
  /** ControlValueAccessor onTouch */
@@ -144,8 +140,6 @@ export declare class MatCheckbox extends _MatCheckboxBase implements AfterViewIn
144
140
  _onClick(): void;
145
141
  /** Gets the value for the `aria-checked` attribute of the native input. */
146
142
  _getAriaChecked(): 'true' | 'false' | 'mixed';
147
- /** Sets whether the given CSS class should be applied to the native input. */
148
- private _setClass;
149
143
  /**
150
144
  * Syncs the indeterminate value with the checkbox DOM node.
151
145
  *