@angular/material 14.0.0-next.1 → 14.0.0-next.10

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 (534) hide show
  1. package/_index.scss +20 -1
  2. package/autocomplete/autocomplete-trigger.d.ts +14 -3
  3. package/autocomplete/autocomplete.d.ts +7 -1
  4. package/badge/_badge-theme.scss +11 -2
  5. package/button-toggle/_button-toggle-theme.scss +14 -2
  6. package/checkbox/_checkbox-theme.scss +1 -1
  7. package/checkbox/checkbox.d.ts +1 -1
  8. package/checkbox/testing/checkbox-harness-filters.d.ts +2 -0
  9. package/chips/chip-input.d.ts +2 -5
  10. package/chips/chip-list.d.ts +20 -5
  11. package/chips/chip.d.ts +3 -1
  12. package/core/_core.scss +5 -7
  13. package/core/common-behaviors/error-state.d.ts +1 -2
  14. package/core/datetime/index.d.ts +1 -2
  15. package/core/ripple/_ripple.scss +2 -2
  16. package/core/ripple/index.d.ts +1 -2
  17. package/core/ripple/ripple-ref.d.ts +2 -1
  18. package/core/ripple/ripple-renderer.d.ts +16 -3
  19. package/core/style/_menu-common.scss +3 -2
  20. package/core/style/_vendor-prefixes.scss +1 -17
  21. package/core/theming/_theming.scss +9 -0
  22. package/core/typography/_typography.scss +51 -14
  23. package/datepicker/calendar-body.d.ts +34 -4
  24. package/datepicker/date-range-input-parts.d.ts +4 -1
  25. package/datepicker/datepicker-base.d.ts +2 -0
  26. package/datepicker/month-view.d.ts +18 -0
  27. package/datepicker/multi-year-view.d.ts +18 -0
  28. package/datepicker/year-view.d.ts +18 -0
  29. package/dialog/dialog-animations.d.ts +10 -0
  30. package/dialog/dialog-config.d.ts +12 -1
  31. package/dialog/dialog-container.d.ts +12 -4
  32. package/dialog/dialog-content-directives.d.ts +5 -1
  33. package/dialog/dialog.d.ts +12 -6
  34. package/dialog/public-api.d.ts +1 -1
  35. package/dialog/testing/dialog-opener.d.ts +33 -0
  36. package/dialog/testing/public-api.d.ts +1 -0
  37. package/esm2020/autocomplete/autocomplete-module.mjs +5 -5
  38. package/esm2020/autocomplete/autocomplete-origin.mjs +7 -7
  39. package/esm2020/autocomplete/autocomplete-trigger.mjs +96 -49
  40. package/esm2020/autocomplete/autocomplete.mjs +19 -9
  41. package/esm2020/autocomplete/testing/autocomplete-harness.mjs +7 -1
  42. package/esm2020/badge/badge-module.mjs +5 -5
  43. package/esm2020/badge/badge.mjs +4 -4
  44. package/esm2020/bottom-sheet/bottom-sheet-animations.mjs +10 -4
  45. package/esm2020/bottom-sheet/bottom-sheet-container.mjs +12 -7
  46. package/esm2020/bottom-sheet/bottom-sheet-module.mjs +5 -5
  47. package/esm2020/bottom-sheet/bottom-sheet.mjs +4 -4
  48. package/esm2020/button/button-module.mjs +5 -5
  49. package/esm2020/button/button.mjs +10 -10
  50. package/esm2020/button-toggle/button-toggle-module.mjs +5 -5
  51. package/esm2020/button-toggle/button-toggle.mjs +8 -8
  52. package/esm2020/card/card-module.mjs +5 -5
  53. package/esm2020/card/card.mjs +44 -44
  54. package/esm2020/checkbox/checkbox-module.mjs +9 -9
  55. package/esm2020/checkbox/checkbox-required-validator.mjs +4 -4
  56. package/esm2020/checkbox/checkbox.mjs +12 -8
  57. package/esm2020/checkbox/testing/checkbox-harness-filters.mjs +1 -1
  58. package/esm2020/checkbox/testing/checkbox-harness.mjs +3 -2
  59. package/esm2020/chips/chip-input.mjs +4 -4
  60. package/esm2020/chips/chip-list.mjs +34 -9
  61. package/esm2020/chips/chip.mjs +19 -14
  62. package/esm2020/chips/chips-module.mjs +5 -5
  63. package/esm2020/core/common-behaviors/common-module.mjs +5 -5
  64. package/esm2020/core/common-behaviors/error-state.mjs +1 -8
  65. package/esm2020/core/datetime/index.mjs +9 -11
  66. package/esm2020/core/datetime/native-date-adapter.mjs +4 -4
  67. package/esm2020/core/error/error-options.mjs +7 -7
  68. package/esm2020/core/line/line.mjs +8 -8
  69. package/esm2020/core/option/index.mjs +5 -5
  70. package/esm2020/core/option/optgroup.mjs +8 -8
  71. package/esm2020/core/option/option.mjs +8 -8
  72. package/esm2020/core/ripple/index.mjs +6 -7
  73. package/esm2020/core/ripple/ripple-ref.mjs +5 -2
  74. package/esm2020/core/ripple/ripple-renderer.mjs +112 -54
  75. package/esm2020/core/ripple/ripple.mjs +4 -4
  76. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +5 -5
  77. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +5 -5
  78. package/esm2020/core/version.mjs +1 -1
  79. package/esm2020/datepicker/calendar-body.mjs +57 -12
  80. package/esm2020/datepicker/calendar.mjs +26 -15
  81. package/esm2020/datepicker/date-range-input-parts.mjs +10 -10
  82. package/esm2020/datepicker/date-range-input.mjs +6 -6
  83. package/esm2020/datepicker/date-range-picker.mjs +4 -4
  84. package/esm2020/datepicker/date-range-selection-strategy.mjs +4 -4
  85. package/esm2020/datepicker/date-selection-model.mjs +10 -10
  86. package/esm2020/datepicker/datepicker-actions.mjs +12 -12
  87. package/esm2020/datepicker/datepicker-base.mjs +9 -17
  88. package/esm2020/datepicker/datepicker-input-base.mjs +12 -7
  89. package/esm2020/datepicker/datepicker-input.mjs +4 -4
  90. package/esm2020/datepicker/datepicker-intl.mjs +4 -4
  91. package/esm2020/datepicker/datepicker-module.mjs +5 -5
  92. package/esm2020/datepicker/datepicker-toggle.mjs +8 -8
  93. package/esm2020/datepicker/datepicker.mjs +4 -4
  94. package/esm2020/datepicker/month-view.mjs +36 -9
  95. package/esm2020/datepicker/multi-year-view.mjs +42 -10
  96. package/esm2020/datepicker/year-view.mjs +41 -10
  97. package/esm2020/dialog/dialog-animations.mjs +17 -4
  98. package/esm2020/dialog/dialog-config.mjs +8 -1
  99. package/esm2020/dialog/dialog-container.mjs +44 -26
  100. package/esm2020/dialog/dialog-content-directives.mjs +31 -15
  101. package/esm2020/dialog/dialog-module.mjs +5 -5
  102. package/esm2020/dialog/dialog.mjs +24 -40
  103. package/esm2020/dialog/public-api.mjs +2 -2
  104. package/esm2020/dialog/testing/dialog-opener.mjs +67 -0
  105. package/esm2020/dialog/testing/public-api.mjs +2 -1
  106. package/esm2020/divider/divider-module.mjs +5 -5
  107. package/esm2020/divider/divider.mjs +5 -5
  108. package/esm2020/expansion/accordion.mjs +4 -4
  109. package/esm2020/expansion/expansion-module.mjs +5 -5
  110. package/esm2020/expansion/expansion-panel-base.mjs +14 -0
  111. package/esm2020/expansion/expansion-panel-content.mjs +14 -7
  112. package/esm2020/expansion/expansion-panel-header.mjs +11 -11
  113. package/esm2020/expansion/expansion-panel.mjs +13 -10
  114. package/esm2020/expansion/public-api.mjs +2 -1
  115. package/esm2020/form-field/error.mjs +4 -4
  116. package/esm2020/form-field/form-field-control.mjs +4 -4
  117. package/esm2020/form-field/form-field-module.mjs +5 -5
  118. package/esm2020/form-field/form-field.mjs +22 -14
  119. package/esm2020/form-field/hint.mjs +4 -4
  120. package/esm2020/form-field/label.mjs +4 -4
  121. package/esm2020/form-field/placeholder.mjs +4 -4
  122. package/esm2020/form-field/prefix.mjs +4 -4
  123. package/esm2020/form-field/suffix.mjs +4 -4
  124. package/esm2020/form-field/testing/public-api.mjs +4 -4
  125. package/esm2020/grid-list/grid-list-module.mjs +5 -5
  126. package/esm2020/grid-list/grid-list.mjs +6 -6
  127. package/esm2020/grid-list/grid-tile.mjs +17 -17
  128. package/esm2020/icon/icon-module.mjs +5 -5
  129. package/esm2020/icon/icon-registry.mjs +12 -14
  130. package/esm2020/icon/icon.mjs +31 -28
  131. package/esm2020/icon/testing/fake-icon-registry.mjs +9 -9
  132. package/esm2020/input/input-module.mjs +5 -5
  133. package/esm2020/input/input.mjs +41 -24
  134. package/esm2020/list/list-module.mjs +5 -5
  135. package/esm2020/list/list.mjs +21 -23
  136. package/esm2020/list/selection-list.mjs +15 -38
  137. package/esm2020/list/testing/list-item-harness-base.mjs +1 -9
  138. package/esm2020/menu/menu-content.mjs +7 -7
  139. package/esm2020/menu/menu-errors.mjs +1 -12
  140. package/esm2020/menu/menu-item.mjs +8 -4
  141. package/esm2020/menu/menu-module.mjs +5 -5
  142. package/esm2020/menu/menu-trigger.mjs +73 -66
  143. package/esm2020/menu/menu.mjs +35 -14
  144. package/esm2020/paginator/paginator-intl.mjs +4 -4
  145. package/esm2020/paginator/paginator-module.mjs +5 -5
  146. package/esm2020/paginator/paginator.mjs +12 -8
  147. package/esm2020/progress-bar/progress-bar-module.mjs +5 -5
  148. package/esm2020/progress-bar/progress-bar.mjs +8 -5
  149. package/esm2020/progress-spinner/progress-spinner-module.mjs +8 -8
  150. package/esm2020/progress-spinner/progress-spinner.mjs +14 -51
  151. package/esm2020/progress-spinner/public-api.mjs +10 -2
  152. package/esm2020/radio/radio-module.mjs +5 -5
  153. package/esm2020/radio/radio.mjs +42 -14
  154. package/esm2020/radio/testing/radio-harness-filters.mjs +1 -1
  155. package/esm2020/radio/testing/radio-harness.mjs +3 -2
  156. package/esm2020/select/select-module.mjs +5 -5
  157. package/esm2020/select/select.mjs +55 -24
  158. package/esm2020/sidenav/drawer.mjs +19 -14
  159. package/esm2020/sidenav/sidenav-module.mjs +7 -8
  160. package/esm2020/sidenav/sidenav.mjs +12 -12
  161. package/esm2020/slide-toggle/slide-toggle-module.mjs +9 -9
  162. package/esm2020/slide-toggle/slide-toggle-required-validator.mjs +4 -4
  163. package/esm2020/slide-toggle/slide-toggle.mjs +6 -5
  164. package/esm2020/slide-toggle/testing/slide-toggle-harness-filters.mjs +1 -1
  165. package/esm2020/slide-toggle/testing/slide-toggle-harness.mjs +4 -2
  166. package/esm2020/slider/slider-module.mjs +5 -5
  167. package/esm2020/slider/slider.mjs +5 -5
  168. package/esm2020/snack-bar/simple-snack-bar.mjs +5 -5
  169. package/esm2020/snack-bar/snack-bar-container.mjs +24 -18
  170. package/esm2020/snack-bar/snack-bar-module.mjs +5 -5
  171. package/esm2020/snack-bar/snack-bar.mjs +7 -7
  172. package/esm2020/sort/sort-header-intl.mjs +4 -4
  173. package/esm2020/sort/sort-header.mjs +16 -8
  174. package/esm2020/sort/sort-module.mjs +5 -5
  175. package/esm2020/sort/sort.mjs +4 -4
  176. package/esm2020/stepper/public-api.mjs +2 -2
  177. package/esm2020/stepper/step-content.mjs +4 -4
  178. package/esm2020/stepper/step-header.mjs +5 -5
  179. package/esm2020/stepper/step-label.mjs +4 -4
  180. package/esm2020/stepper/stepper-animations.mjs +9 -3
  181. package/esm2020/stepper/stepper-button.mjs +7 -7
  182. package/esm2020/stepper/stepper-icon.mjs +4 -4
  183. package/esm2020/stepper/stepper-intl.mjs +4 -4
  184. package/esm2020/stepper/stepper-module.mjs +6 -10
  185. package/esm2020/stepper/stepper.mjs +39 -63
  186. package/esm2020/table/cell.mjs +22 -22
  187. package/esm2020/table/row.mjs +22 -22
  188. package/esm2020/table/table-module.mjs +5 -5
  189. package/esm2020/table/table.mjs +9 -9
  190. package/esm2020/table/text-column.mjs +4 -4
  191. package/esm2020/tabs/ink-bar.mjs +11 -22
  192. package/esm2020/tabs/paginated-tab-header.mjs +27 -13
  193. package/esm2020/tabs/tab-body.mjs +11 -11
  194. package/esm2020/tabs/tab-content.mjs +4 -4
  195. package/esm2020/tabs/tab-group.mjs +52 -11
  196. package/esm2020/tabs/tab-header.mjs +8 -8
  197. package/esm2020/tabs/tab-label-wrapper.mjs +4 -4
  198. package/esm2020/tabs/tab-label.mjs +4 -4
  199. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +18 -18
  200. package/esm2020/tabs/tab.mjs +4 -4
  201. package/esm2020/tabs/tabs-module.mjs +5 -5
  202. package/esm2020/toolbar/toolbar-module.mjs +5 -5
  203. package/esm2020/toolbar/toolbar.mjs +8 -8
  204. package/esm2020/tooltip/testing/tooltip-harness.mjs +12 -7
  205. package/esm2020/tooltip/tooltip-module.mjs +5 -5
  206. package/esm2020/tooltip/tooltip.mjs +126 -51
  207. package/esm2020/tree/node.mjs +10 -10
  208. package/esm2020/tree/outlet.mjs +4 -4
  209. package/esm2020/tree/padding.mjs +4 -4
  210. package/esm2020/tree/toggle.mjs +4 -4
  211. package/esm2020/tree/tree-module.mjs +5 -5
  212. package/esm2020/tree/tree.mjs +5 -5
  213. package/expansion/expansion-panel-base.d.ts +22 -0
  214. package/expansion/expansion-panel-content.d.ts +4 -2
  215. package/expansion/public-api.d.ts +1 -0
  216. package/fesm2015/autocomplete/testing.mjs +6 -0
  217. package/fesm2015/autocomplete/testing.mjs.map +1 -1
  218. package/fesm2015/autocomplete.mjs +125 -67
  219. package/fesm2015/autocomplete.mjs.map +1 -1
  220. package/fesm2015/badge/testing.mjs.map +1 -1
  221. package/fesm2015/badge.mjs +7 -7
  222. package/fesm2015/badge.mjs.map +1 -1
  223. package/fesm2015/bottom-sheet/testing.mjs.map +1 -1
  224. package/fesm2015/bottom-sheet.mjs +27 -16
  225. package/fesm2015/bottom-sheet.mjs.map +1 -1
  226. package/fesm2015/button/testing.mjs.map +1 -1
  227. package/fesm2015/button-toggle/testing.mjs.map +1 -1
  228. package/fesm2015/button-toggle.mjs +11 -11
  229. package/fesm2015/button-toggle.mjs.map +1 -1
  230. package/fesm2015/button.mjs +13 -13
  231. package/fesm2015/button.mjs.map +1 -1
  232. package/fesm2015/card/testing.mjs.map +1 -1
  233. package/fesm2015/card.mjs +47 -47
  234. package/fesm2015/card.mjs.map +1 -1
  235. package/fesm2015/checkbox/testing.mjs +2 -1
  236. package/fesm2015/checkbox/testing.mjs.map +1 -1
  237. package/fesm2015/checkbox.mjs +22 -18
  238. package/fesm2015/checkbox.mjs.map +1 -1
  239. package/fesm2015/chips/testing.mjs.map +1 -1
  240. package/fesm2015/chips.mjs +58 -28
  241. package/fesm2015/chips.mjs.map +1 -1
  242. package/fesm2015/core/testing.mjs.map +1 -1
  243. package/fesm2015/core.mjs +181 -126
  244. package/fesm2015/core.mjs.map +1 -1
  245. package/fesm2015/datepicker/testing.mjs.map +1 -1
  246. package/fesm2015/datepicker.mjs +273 -130
  247. package/fesm2015/datepicker.mjs.map +1 -1
  248. package/fesm2015/dialog/testing.mjs +65 -2
  249. package/fesm2015/dialog/testing.mjs.map +1 -1
  250. package/fesm2015/dialog.mjs +144 -106
  251. package/fesm2015/dialog.mjs.map +1 -1
  252. package/fesm2015/divider/testing.mjs.map +1 -1
  253. package/fesm2015/divider.mjs +8 -8
  254. package/fesm2015/divider.mjs.map +1 -1
  255. package/fesm2015/expansion/testing.mjs.map +1 -1
  256. package/fesm2015/expansion.mjs +56 -33
  257. package/fesm2015/expansion.mjs.map +1 -1
  258. package/fesm2015/form-field/testing/control.mjs.map +1 -1
  259. package/fesm2015/form-field/testing.mjs +1 -1
  260. package/fesm2015/form-field/testing.mjs.map +1 -1
  261. package/fesm2015/form-field.mjs +47 -38
  262. package/fesm2015/form-field.mjs.map +1 -1
  263. package/fesm2015/grid-list/testing.mjs.map +1 -1
  264. package/fesm2015/grid-list.mjs +25 -25
  265. package/fesm2015/grid-list.mjs.map +1 -1
  266. package/fesm2015/icon/testing.mjs +8 -8
  267. package/fesm2015/icon/testing.mjs.map +1 -1
  268. package/fesm2015/icon.mjs +45 -44
  269. package/fesm2015/icon.mjs.map +1 -1
  270. package/fesm2015/input/testing.mjs.map +1 -1
  271. package/fesm2015/input.mjs +45 -28
  272. package/fesm2015/input.mjs.map +1 -1
  273. package/fesm2015/list/testing.mjs +0 -10
  274. package/fesm2015/list/testing.mjs.map +1 -1
  275. package/fesm2015/list.mjs +41 -67
  276. package/fesm2015/list.mjs.map +1 -1
  277. package/fesm2015/material.mjs.map +1 -1
  278. package/fesm2015/menu/testing.mjs.map +1 -1
  279. package/fesm2015/menu.mjs +124 -99
  280. package/fesm2015/menu.mjs.map +1 -1
  281. package/fesm2015/paginator/testing.mjs.map +1 -1
  282. package/fesm2015/paginator.mjs +18 -14
  283. package/fesm2015/paginator.mjs.map +1 -1
  284. package/fesm2015/progress-bar/testing.mjs.map +1 -1
  285. package/fesm2015/progress-bar.mjs +11 -8
  286. package/fesm2015/progress-bar.mjs.map +1 -1
  287. package/fesm2015/progress-spinner/testing.mjs.map +1 -1
  288. package/fesm2015/progress-spinner.mjs +31 -63
  289. package/fesm2015/progress-spinner.mjs.map +1 -1
  290. package/fesm2015/radio/testing.mjs +2 -1
  291. package/fesm2015/radio/testing.mjs.map +1 -1
  292. package/fesm2015/radio.mjs +46 -17
  293. package/fesm2015/radio.mjs.map +1 -1
  294. package/fesm2015/select/testing.mjs.map +1 -1
  295. package/fesm2015/select.mjs +58 -27
  296. package/fesm2015/select.mjs.map +1 -1
  297. package/fesm2015/sidenav/testing.mjs.map +1 -1
  298. package/fesm2015/sidenav.mjs +36 -32
  299. package/fesm2015/sidenav.mjs.map +1 -1
  300. package/fesm2015/slide-toggle/testing.mjs +3 -1
  301. package/fesm2015/slide-toggle/testing.mjs.map +1 -1
  302. package/fesm2015/slide-toggle.mjs +16 -15
  303. package/fesm2015/slide-toggle.mjs.map +1 -1
  304. package/fesm2015/slider/testing.mjs.map +1 -1
  305. package/fesm2015/slider.mjs +8 -8
  306. package/fesm2015/slider.mjs.map +1 -1
  307. package/fesm2015/snack-bar/testing.mjs.map +1 -1
  308. package/fesm2015/snack-bar.mjs +37 -31
  309. package/fesm2015/snack-bar.mjs.map +1 -1
  310. package/fesm2015/sort/testing.mjs.map +1 -1
  311. package/fesm2015/sort.mjs +128 -120
  312. package/fesm2015/sort.mjs.map +1 -1
  313. package/fesm2015/stepper/testing.mjs.map +1 -1
  314. package/fesm2015/stepper.mjs +72 -93
  315. package/fesm2015/stepper.mjs.map +1 -1
  316. package/fesm2015/table/testing.mjs.map +1 -1
  317. package/fesm2015/table.mjs +57 -57
  318. package/fesm2015/table.mjs.map +1 -1
  319. package/fesm2015/tabs/testing.mjs.map +1 -1
  320. package/fesm2015/tabs.mjs +137 -93
  321. package/fesm2015/tabs.mjs.map +1 -1
  322. package/fesm2015/toolbar/testing.mjs.map +1 -1
  323. package/fesm2015/toolbar.mjs +11 -11
  324. package/fesm2015/toolbar.mjs.map +1 -1
  325. package/fesm2015/tooltip/testing.mjs +11 -8
  326. package/fesm2015/tooltip/testing.mjs.map +1 -1
  327. package/fesm2015/tooltip.mjs +154 -79
  328. package/fesm2015/tooltip.mjs.map +1 -1
  329. package/fesm2015/tree/testing.mjs.map +1 -1
  330. package/fesm2015/tree.mjs +26 -26
  331. package/fesm2015/tree.mjs.map +1 -1
  332. package/fesm2020/autocomplete/testing.mjs +6 -0
  333. package/fesm2020/autocomplete/testing.mjs.map +1 -1
  334. package/fesm2020/autocomplete.mjs +124 -67
  335. package/fesm2020/autocomplete.mjs.map +1 -1
  336. package/fesm2020/badge/testing.mjs.map +1 -1
  337. package/fesm2020/badge.mjs +7 -7
  338. package/fesm2020/badge.mjs.map +1 -1
  339. package/fesm2020/bottom-sheet/testing.mjs.map +1 -1
  340. package/fesm2020/bottom-sheet.mjs +27 -16
  341. package/fesm2020/bottom-sheet.mjs.map +1 -1
  342. package/fesm2020/button/testing.mjs.map +1 -1
  343. package/fesm2020/button-toggle/testing.mjs.map +1 -1
  344. package/fesm2020/button-toggle.mjs +11 -11
  345. package/fesm2020/button-toggle.mjs.map +1 -1
  346. package/fesm2020/button.mjs +13 -13
  347. package/fesm2020/button.mjs.map +1 -1
  348. package/fesm2020/card/testing.mjs.map +1 -1
  349. package/fesm2020/card.mjs +47 -47
  350. package/fesm2020/card.mjs.map +1 -1
  351. package/fesm2020/checkbox/testing.mjs +2 -1
  352. package/fesm2020/checkbox/testing.mjs.map +1 -1
  353. package/fesm2020/checkbox.mjs +22 -18
  354. package/fesm2020/checkbox.mjs.map +1 -1
  355. package/fesm2020/chips/testing.mjs.map +1 -1
  356. package/fesm2020/chips.mjs +58 -28
  357. package/fesm2020/chips.mjs.map +1 -1
  358. package/fesm2020/core/testing.mjs.map +1 -1
  359. package/fesm2020/core.mjs +180 -126
  360. package/fesm2020/core.mjs.map +1 -1
  361. package/fesm2020/datepicker/testing.mjs.map +1 -1
  362. package/fesm2020/datepicker.mjs +273 -130
  363. package/fesm2020/datepicker.mjs.map +1 -1
  364. package/fesm2020/dialog/testing.mjs +65 -1
  365. package/fesm2020/dialog/testing.mjs.map +1 -1
  366. package/fesm2020/dialog.mjs +143 -106
  367. package/fesm2020/dialog.mjs.map +1 -1
  368. package/fesm2020/divider/testing.mjs.map +1 -1
  369. package/fesm2020/divider.mjs +8 -8
  370. package/fesm2020/divider.mjs.map +1 -1
  371. package/fesm2020/expansion/testing.mjs.map +1 -1
  372. package/fesm2020/expansion.mjs +54 -33
  373. package/fesm2020/expansion.mjs.map +1 -1
  374. package/fesm2020/form-field/testing/control.mjs.map +1 -1
  375. package/fesm2020/form-field/testing.mjs +1 -1
  376. package/fesm2020/form-field/testing.mjs.map +1 -1
  377. package/fesm2020/form-field.mjs +46 -38
  378. package/fesm2020/form-field.mjs.map +1 -1
  379. package/fesm2020/grid-list/testing.mjs.map +1 -1
  380. package/fesm2020/grid-list.mjs +25 -25
  381. package/fesm2020/grid-list.mjs.map +1 -1
  382. package/fesm2020/icon/testing.mjs +8 -8
  383. package/fesm2020/icon/testing.mjs.map +1 -1
  384. package/fesm2020/icon.mjs +45 -44
  385. package/fesm2020/icon.mjs.map +1 -1
  386. package/fesm2020/input/testing.mjs.map +1 -1
  387. package/fesm2020/input.mjs +44 -27
  388. package/fesm2020/input.mjs.map +1 -1
  389. package/fesm2020/list/testing.mjs +0 -8
  390. package/fesm2020/list/testing.mjs.map +1 -1
  391. package/fesm2020/list.mjs +38 -63
  392. package/fesm2020/list.mjs.map +1 -1
  393. package/fesm2020/material.mjs.map +1 -1
  394. package/fesm2020/menu/testing.mjs.map +1 -1
  395. package/fesm2020/menu.mjs +120 -99
  396. package/fesm2020/menu.mjs.map +1 -1
  397. package/fesm2020/paginator/testing.mjs.map +1 -1
  398. package/fesm2020/paginator.mjs +18 -14
  399. package/fesm2020/paginator.mjs.map +1 -1
  400. package/fesm2020/progress-bar/testing.mjs.map +1 -1
  401. package/fesm2020/progress-bar.mjs +11 -8
  402. package/fesm2020/progress-bar.mjs.map +1 -1
  403. package/fesm2020/progress-spinner/testing.mjs.map +1 -1
  404. package/fesm2020/progress-spinner.mjs +31 -61
  405. package/fesm2020/progress-spinner.mjs.map +1 -1
  406. package/fesm2020/radio/testing.mjs +2 -1
  407. package/fesm2020/radio/testing.mjs.map +1 -1
  408. package/fesm2020/radio.mjs +45 -17
  409. package/fesm2020/radio.mjs.map +1 -1
  410. package/fesm2020/select/testing.mjs.map +1 -1
  411. package/fesm2020/select.mjs +58 -27
  412. package/fesm2020/select.mjs.map +1 -1
  413. package/fesm2020/sidenav/testing.mjs.map +1 -1
  414. package/fesm2020/sidenav.mjs +36 -32
  415. package/fesm2020/sidenav.mjs.map +1 -1
  416. package/fesm2020/slide-toggle/testing.mjs +3 -1
  417. package/fesm2020/slide-toggle/testing.mjs.map +1 -1
  418. package/fesm2020/slide-toggle.mjs +16 -15
  419. package/fesm2020/slide-toggle.mjs.map +1 -1
  420. package/fesm2020/slider/testing.mjs.map +1 -1
  421. package/fesm2020/slider.mjs +8 -8
  422. package/fesm2020/slider.mjs.map +1 -1
  423. package/fesm2020/snack-bar/testing.mjs.map +1 -1
  424. package/fesm2020/snack-bar.mjs +37 -31
  425. package/fesm2020/snack-bar.mjs.map +1 -1
  426. package/fesm2020/sort/testing.mjs.map +1 -1
  427. package/fesm2020/sort.mjs +24 -16
  428. package/fesm2020/sort.mjs.map +1 -1
  429. package/fesm2020/stepper/testing.mjs.map +1 -1
  430. package/fesm2020/stepper.mjs +72 -93
  431. package/fesm2020/stepper.mjs.map +1 -1
  432. package/fesm2020/table/testing.mjs.map +1 -1
  433. package/fesm2020/table.mjs +57 -57
  434. package/fesm2020/table.mjs.map +1 -1
  435. package/fesm2020/tabs/testing.mjs.map +1 -1
  436. package/fesm2020/tabs.mjs +136 -93
  437. package/fesm2020/tabs.mjs.map +1 -1
  438. package/fesm2020/toolbar/testing.mjs.map +1 -1
  439. package/fesm2020/toolbar.mjs +11 -11
  440. package/fesm2020/toolbar.mjs.map +1 -1
  441. package/fesm2020/tooltip/testing.mjs +11 -6
  442. package/fesm2020/tooltip/testing.mjs.map +1 -1
  443. package/fesm2020/tooltip.mjs +147 -71
  444. package/fesm2020/tooltip.mjs.map +1 -1
  445. package/fesm2020/tree/testing.mjs.map +1 -1
  446. package/fesm2020/tree.mjs +26 -26
  447. package/fesm2020/tree.mjs.map +1 -1
  448. package/form-field/form-field-control.d.ts +3 -3
  449. package/form-field/form-field.d.ts +15 -8
  450. package/form-field/testing/public-api.d.ts +1 -1
  451. package/icon/icon-registry.d.ts +7 -9
  452. package/icon/icon.d.ts +12 -3
  453. package/icon/testing/fake-icon-registry.d.ts +1 -1
  454. package/input/input.d.ts +12 -1
  455. package/list/selection-list.d.ts +4 -21
  456. package/list/testing/list-item-harness-base.d.ts +1 -7
  457. package/menu/menu-errors.d.ts +0 -5
  458. package/menu/menu-item.d.ts +3 -2
  459. package/menu/menu-trigger.d.ts +21 -11
  460. package/menu/menu.d.ts +7 -2
  461. package/package.json +7 -7
  462. package/paginator/paginator.d.ts +12 -1
  463. package/prebuilt-themes/deeppurple-amber.css +1 -1
  464. package/prebuilt-themes/indigo-pink.css +1 -1
  465. package/prebuilt-themes/pink-bluegrey.css +1 -1
  466. package/prebuilt-themes/purple-green.css +1 -1
  467. package/progress-spinner/progress-spinner-module.d.ts +1 -1
  468. package/progress-spinner/progress-spinner.d.ts +4 -19
  469. package/progress-spinner/public-api.d.ts +8 -1
  470. package/radio/radio.d.ts +7 -2
  471. package/radio/testing/radio-harness-filters.d.ts +2 -0
  472. package/schematics/collection.json +4 -2
  473. package/schematics/migration.json +5 -0
  474. package/schematics/ng-add/fonts/material-fonts.js +4 -13
  475. package/schematics/ng-add/fonts/material-fonts.mjs +4 -13
  476. package/schematics/ng-add/index.js +2 -2
  477. package/schematics/ng-add/index.mjs +2 -2
  478. package/schematics/ng-add/schema.d.ts +2 -2
  479. package/schematics/ng-add/schema.js +1 -1
  480. package/schematics/ng-add/schema.json +29 -9
  481. package/schematics/ng-add/schema.mjs +1 -1
  482. package/schematics/ng-add/setup-project.js +16 -23
  483. package/schematics/ng-add/setup-project.mjs +16 -23
  484. package/schematics/ng-add/theming/theming.js +28 -39
  485. package/schematics/ng-add/theming/theming.mjs +28 -39
  486. package/schematics/ng-generate/address-form/index.js +5 -14
  487. package/schematics/ng-generate/address-form/index.mjs +5 -14
  488. package/schematics/ng-generate/address-form/schema.json +1 -1
  489. package/schematics/ng-generate/dashboard/index.js +5 -14
  490. package/schematics/ng-generate/dashboard/index.mjs +5 -14
  491. package/schematics/ng-generate/dashboard/schema.json +1 -1
  492. package/schematics/ng-generate/navigation/index.js +5 -14
  493. package/schematics/ng-generate/navigation/index.mjs +5 -14
  494. package/schematics/ng-generate/navigation/schema.json +1 -1
  495. package/schematics/ng-generate/table/index.js +5 -14
  496. package/schematics/ng-generate/table/index.mjs +5 -14
  497. package/schematics/ng-generate/table/schema.json +1 -1
  498. package/schematics/ng-generate/tree/index.js +5 -14
  499. package/schematics/ng-generate/tree/index.mjs +5 -14
  500. package/schematics/ng-generate/tree/schema.json +1 -1
  501. package/schematics/ng-update/data/constructor-checks.js +11 -1
  502. package/schematics/ng-update/data/constructor-checks.mjs +11 -1
  503. package/schematics/ng-update/data/css-selectors.js +7 -1
  504. package/schematics/ng-update/data/css-selectors.mjs +7 -1
  505. package/schematics/ng-update/data/index.js +6 -2
  506. package/schematics/ng-update/data/index.mjs +6 -2
  507. package/schematics/ng-update/index.d.ts +2 -0
  508. package/schematics/ng-update/index.js +7 -2
  509. package/schematics/ng-update/index.mjs +7 -2
  510. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.js +4 -4
  511. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.mjs +4 -4
  512. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.js +14 -23
  513. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.mjs +14 -23
  514. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.js +3 -15
  515. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.mjs +3 -15
  516. package/schematics/ng-update/migrations/theming-api-v12/migration.js +5 -5
  517. package/schematics/ng-update/migrations/theming-api-v12/migration.mjs +5 -5
  518. package/schematics/tsconfig.json +1 -4
  519. package/select/select.d.ts +19 -1
  520. package/sidenav/sidenav-module.d.ts +2 -3
  521. package/slide-toggle/testing/slide-toggle-harness-filters.d.ts +4 -0
  522. package/snack-bar/snack-bar.d.ts +1 -1
  523. package/sort/sort-header.d.ts +4 -4
  524. package/sort/sort.d.ts +4 -0
  525. package/stepper/public-api.d.ts +1 -1
  526. package/stepper/stepper-animations.d.ts +2 -0
  527. package/stepper/stepper-module.d.ts +1 -1
  528. package/stepper/stepper.d.ts +15 -38
  529. package/tabs/_tabs-common.scss +6 -5
  530. package/tabs/ink-bar.d.ts +0 -5
  531. package/tabs/paginated-tab-header.d.ts +4 -2
  532. package/tabs/tab-group.d.ts +9 -3
  533. package/tooltip/testing/tooltip-harness.d.ts +6 -0
  534. package/tooltip/tooltip.d.ts +36 -8
package/_index.scss CHANGED
@@ -14,6 +14,25 @@
14
14
  @forward './core/typography/typography-utils' show typography-level,
15
15
  font-size, line-height, font-weight, letter-spacing, font-family, font-shorthand;
16
16
 
17
+ // Private/Internal
18
+ @forward './core/density/private/all-density' as private-* show private-all-component-densities;
19
+ @forward './core/theming/theming' show private-check-duplicate-theme-styles,
20
+ private-legacy-get-theme, private-is-theme-object;
21
+ @forward './core/style/layout-common' as private-* show private-fill;
22
+ @forward './core/style/private' show private-theme-elevation, private-animation-noop;
23
+ @forward './core/style/vendor-prefixes' as private-* show private-user-select,
24
+ private-position-sticky, private-color-adjust;
25
+ @forward './core/theming/palette' as private-* show $private-dark-primary-text,
26
+ $private-dark-disabled-text;
27
+ @forward './core/style/variables' as private-* show $private-swift-ease-in-duration,
28
+ $private-swift-ease-in-timing-function, $private-swift-ease-out-timing-function,
29
+ $private-ease-in-out-curve-function, $private-swift-ease-out-duration, $private-xsmall;
30
+ @forward './core/typography/typography' show private-typography-to-2014-config,
31
+ private-typography-to-2018-config;
32
+ @forward './table/table-flex-styles' show private-table-flex-styles;
33
+ @forward './core/style/menu-common' as private-menu-common-*;
34
+ @forward './core/style/button-common' as private-button-common-*;
35
+
17
36
  // Structural
18
37
  @forward './core/core' show core;
19
38
  @forward './core/ripple/ripple' show ripple;
@@ -49,7 +68,7 @@
49
68
  checkbox-typography;
50
69
  @forward './chips/chips-theme' as chips-* show chips-theme, chips-color, chips-typography;
51
70
  @forward './datepicker/datepicker-theme' as datepicker-* show datepicker-theme, datepicker-color,
52
- datepicker-typography;
71
+ datepicker-typography, datepicker-date-range-colors;
53
72
  @forward './dialog/dialog-theme' as dialog-* show dialog-theme, dialog-color, dialog-typography;
54
73
  @forward './divider/divider-theme' as divider-* show divider-theme, divider-color,
55
74
  divider-typography;
@@ -11,7 +11,7 @@ import { Overlay, ScrollStrategy } from '@angular/cdk/overlay';
11
11
  import { ViewportRuler } from '@angular/cdk/scrolling';
12
12
  import { AfterViewInit, ChangeDetectorRef, ElementRef, InjectionToken, NgZone, OnDestroy, ViewContainerRef, OnChanges, SimpleChanges } from '@angular/core';
13
13
  import { ControlValueAccessor } from '@angular/forms';
14
- import { MatOption, MatOptionSelectionChange } from '@angular/material/core';
14
+ import { _MatOptionBase, MatOptionSelectionChange } from '@angular/material/core';
15
15
  import { MatFormField } from '@angular/material/form-field';
16
16
  import { Observable } from 'rxjs';
17
17
  import { _MatAutocompleteBase, MatAutocompleteDefaultOptions } from './autocomplete';
@@ -70,6 +70,13 @@ export declare abstract class _MatAutocompleteTriggerBase implements ControlValu
70
70
  * comes back.
71
71
  */
72
72
  private _canOpenOnNextFocus;
73
+ /** Value inside the input before we auto-selected an option. */
74
+ private _valueBeforeAutoSelection;
75
+ /**
76
+ * Current option that we have auto-selected as the user is navigating,
77
+ * but which hasn't been propagated to the model value yet.
78
+ */
79
+ private _pendingAutoselectedOption;
73
80
  /** Stream of keyboard events that can close the panel. */
74
81
  private readonly _closeKeyEventStream;
75
82
  /**
@@ -133,7 +140,7 @@ export declare abstract class _MatAutocompleteTriggerBase implements ControlValu
133
140
  /** Stream of changes to the selection state of the autocomplete options. */
134
141
  readonly optionSelections: Observable<MatOptionSelectionChange>;
135
142
  /** The currently active option, coerced to MatOption type. */
136
- get activeOption(): MatOption | null;
143
+ get activeOption(): _MatOptionBase | null;
137
144
  /** Stream of clicks outside of the autocomplete panel. */
138
145
  private _getOutsideClickStream;
139
146
  writeValue(value: any): void;
@@ -143,6 +150,7 @@ export declare abstract class _MatAutocompleteTriggerBase implements ControlValu
143
150
  _handleKeydown(event: KeyboardEvent): void;
144
151
  _handleInput(event: KeyboardEvent): void;
145
152
  _handleFocus(): void;
153
+ _handleClick(): void;
146
154
  /**
147
155
  * In "auto" mode, the label will animate down as soon as focus is lost.
148
156
  * This causes the value to jump when selecting an option with the mouse.
@@ -159,7 +167,8 @@ export declare abstract class _MatAutocompleteTriggerBase implements ControlValu
159
167
  private _subscribeToClosingActions;
160
168
  /** Destroys the autocomplete suggestion panel. */
161
169
  private _destroyPanel;
162
- private _setTriggerValue;
170
+ private _assignOptionValue;
171
+ private _updateNativeInputValue;
163
172
  /**
164
173
  * This method closes the panel, and if a value is specified, also sets the associated
165
174
  * control to that value. It will also mark the control as dirty if this interaction
@@ -190,6 +199,8 @@ export declare abstract class _MatAutocompleteTriggerBase implements ControlValu
190
199
  private _getWindow;
191
200
  /** Scrolls to a particular option in the list. */
192
201
  private _scrollToOption;
202
+ /** Handles keyboard events coming from the overlay panel. */
203
+ private _handleOverlayEvents;
193
204
  static ɵfac: i0.ɵɵFactoryDeclaration<_MatAutocompleteTriggerBase, [null, null, null, null, null, null, { optional: true; }, { optional: true; host: true; }, { optional: true; }, null, { optional: true; }]>;
194
205
  static ɵdir: i0.ɵɵDirectiveDeclaration<_MatAutocompleteTriggerBase, never, never, { "autocomplete": "matAutocomplete"; "position": "matAutocompletePosition"; "connectedTo": "matAutocompleteConnectedTo"; "autocompleteAttribute": "autocomplete"; "autocompleteDisabled": "matAutocompleteDisabled"; }, {}, never>;
195
206
  }
@@ -38,6 +38,8 @@ declare const _MatAutocompleteMixinBase: import("@angular/material/core")._Const
38
38
  export interface MatAutocompleteDefaultOptions {
39
39
  /** Whether the first option should be highlighted when an autocomplete panel is opened. */
40
40
  autoActiveFirstOption?: boolean;
41
+ /** Whether the active option should be selected as the user is navigating. */
42
+ autoSelectActiveOption?: boolean;
41
43
  /** Class or list of classes to be applied to the autocomplete's overlay panel. */
42
44
  overlayPanelClass?: string | string[];
43
45
  }
@@ -82,6 +84,10 @@ export declare abstract class _MatAutocompleteBase extends _MatAutocompleteMixin
82
84
  get autoActiveFirstOption(): boolean;
83
85
  set autoActiveFirstOption(value: BooleanInput);
84
86
  private _autoActiveFirstOption;
87
+ /** Whether the active option should be selected as the user is navigating. */
88
+ get autoSelectActiveOption(): boolean;
89
+ set autoSelectActiveOption(value: BooleanInput);
90
+ private _autoSelectActiveOption;
85
91
  /**
86
92
  * Specify the width of the autocomplete panel. Can be any CSS sizing value, otherwise it will
87
93
  * match the width of its host.
@@ -129,7 +135,7 @@ export declare abstract class _MatAutocompleteBase extends _MatAutocompleteMixin
129
135
  /** Sets the autocomplete visibility classes on a classlist based on the panel is visible. */
130
136
  private _setVisibilityClasses;
131
137
  static ɵfac: i0.ɵɵFactoryDeclaration<_MatAutocompleteBase, never>;
132
- static ɵdir: i0.ɵɵDirectiveDeclaration<_MatAutocompleteBase, never, never, { "ariaLabel": "aria-label"; "ariaLabelledby": "aria-labelledby"; "displayWith": "displayWith"; "autoActiveFirstOption": "autoActiveFirstOption"; "panelWidth": "panelWidth"; "classList": "class"; }, { "optionSelected": "optionSelected"; "opened": "opened"; "closed": "closed"; "optionActivated": "optionActivated"; }, never>;
138
+ static ɵdir: i0.ɵɵDirectiveDeclaration<_MatAutocompleteBase, never, never, { "ariaLabel": "aria-label"; "ariaLabelledby": "aria-labelledby"; "displayWith": "displayWith"; "autoActiveFirstOption": "autoActiveFirstOption"; "autoSelectActiveOption": "autoSelectActiveOption"; "panelWidth": "panelWidth"; "classList": "class"; }, { "optionSelected": "optionSelected"; "opened": "opened"; "closed": "closed"; "optionActivated": "optionActivated"; }, never>;
133
139
  }
134
140
  export declare class MatAutocomplete extends _MatAutocompleteBase {
135
141
  /** Reference to all option groups within the autocomplete. */
@@ -5,10 +5,11 @@
5
5
  @use 'sass:map';
6
6
  @use 'sass:meta';
7
7
  @use 'sass:math';
8
+ @use '@angular/cdk';
9
+
8
10
  @use '../core/theming/theming';
9
11
  @use '../core/typography/typography';
10
12
  @use '../core/typography/typography-utils';
11
- @use '../../cdk/a11y';
12
13
 
13
14
  $font-size: 12px;
14
15
  $font-weight: 600;
@@ -102,6 +103,14 @@ $_badge-structure-emitted: false !default;
102
103
  position: relative;
103
104
  }
104
105
 
106
+ // The badge should make sure its host is overflow visible so that the badge content
107
+ // can be rendered outside of the element. Some components such as <mat-icon> explicitly
108
+ // style `overflow: hidden` so this requires extra specificity so that it does not
109
+ // depend on style load order.
110
+ .mat-badge.mat-badge {
111
+ overflow: visible;
112
+ }
113
+
105
114
  .mat-badge-hidden {
106
115
  .mat-badge-content {
107
116
  display: none;
@@ -158,7 +167,7 @@ $_badge-structure-emitted: false !default;
158
167
  color: theming.get-color-from-palette($primary, default-contrast);
159
168
  background: theming.get-color-from-palette($primary);
160
169
 
161
- @include a11y.high-contrast(active, off) {
170
+ @include cdk.high-contrast(active, off) {
162
171
  outline: solid 1px;
163
172
  border-radius: 0;
164
173
  }
@@ -11,15 +11,27 @@
11
11
  $foreground: map.get($config, foreground);
12
12
  $background: map.get($config, background);
13
13
  $divider-color: theming.get-color-from-palette($foreground, divider);
14
+ $theme-divider-color: map.get($foreground, divider);
15
+
16
+ // By default the theme usually has an rgba color for the dividers, which can
17
+ // stack up with the background of a button toggle. This can cause the border
18
+ // of a selected toggle to look different from an deselected one. We use a solid
19
+ // color to ensure that the border always stays the same.
20
+ $divider-color: if(type-of($theme-divider-color) == color,
21
+ theming.private-rgba-to-hex($theme-divider-color, map.get($background, card)),
22
+ $theme-divider-color
23
+ );
14
24
 
15
25
  .mat-button-toggle-standalone,
16
26
  .mat-button-toggle-group {
17
- @include private.private-theme-elevation(2, $config);
27
+ @include private.private-theme-overridable-elevation(2, $config);
18
28
  }
19
29
 
20
30
  .mat-button-toggle-standalone.mat-button-toggle-appearance-standard,
21
31
  .mat-button-toggle-group-appearance-standard {
22
- box-shadow: none;
32
+ &:not([class*='mat-elevation-z']) {
33
+ box-shadow: none;
34
+ }
23
35
  }
24
36
 
25
37
  .mat-button-toggle {
@@ -71,7 +71,7 @@
71
71
  }
72
72
 
73
73
  .mat-checkbox-label {
74
- color: theming.get-color-from-palette($foreground, secondary-text);
74
+ color: theming.get-color-from-palette($foreground, disabled);
75
75
  }
76
76
  }
77
77
 
@@ -109,7 +109,7 @@ export declare class MatCheckbox extends _MatCheckboxBase implements ControlValu
109
109
  * Whether the checkbox is checked.
110
110
  */
111
111
  get checked(): boolean;
112
- set checked(value: boolean);
112
+ set checked(value: BooleanInput);
113
113
  private _checked;
114
114
  /**
115
115
  * Whether the checkbox is disabled. This fully overrides the implementation provided by
@@ -12,4 +12,6 @@ export interface CheckboxHarnessFilters extends BaseHarnessFilters {
12
12
  label?: string | RegExp;
13
13
  /** Only find instances whose name attribute is the given value. */
14
14
  name?: string;
15
+ /** Only find instances with the given checked value. */
16
+ checked?: boolean;
15
17
  }
@@ -21,11 +21,8 @@ export interface MatChipInputEvent {
21
21
  input: HTMLInputElement;
22
22
  /** The value of the input. */
23
23
  value: string;
24
- /**
25
- * Reference to the chip input that emitted the event.
26
- * @breaking-change 13.0.0 This property will be made required.
27
- */
28
- chipInput?: MatChipInput;
24
+ /** Reference to the chip input that emitted the event. */
25
+ chipInput: MatChipInput;
29
26
  }
30
27
  /**
31
28
  * Directive that adds chip-specific behaviors to an input element inside `<mat-form-field>`.
@@ -13,17 +13,27 @@ import { AfterContentInit, ChangeDetectorRef, DoCheck, ElementRef, EventEmitter,
13
13
  import { ControlValueAccessor, FormGroupDirective, NgControl, NgForm } from '@angular/forms';
14
14
  import { CanUpdateErrorState, ErrorStateMatcher } from '@angular/material/core';
15
15
  import { MatFormFieldControl } from '@angular/material/form-field';
16
- import { Observable } from 'rxjs';
16
+ import { Observable, Subject } from 'rxjs';
17
17
  import { MatChip, MatChipEvent, MatChipSelectionChange } from './chip';
18
18
  import { MatChipTextControl } from './chip-text-control';
19
19
  import * as i0 from "@angular/core";
20
20
  /** @docs-private */
21
21
  declare const _MatChipListBase: import("@angular/material/core")._Constructor<CanUpdateErrorState> & import("@angular/material/core")._AbstractConstructor<CanUpdateErrorState> & {
22
22
  new (_defaultErrorStateMatcher: ErrorStateMatcher, _parentForm: NgForm, _parentFormGroup: FormGroupDirective, ngControl: NgControl): {
23
+ /**
24
+ * Emits whenever the component state changes and should cause the parent
25
+ * form-field to update. Implemented as part of `MatFormFieldControl`.
26
+ * @docs-private
27
+ */
28
+ readonly stateChanges: Subject<void>;
23
29
  _defaultErrorStateMatcher: ErrorStateMatcher;
24
30
  _parentForm: NgForm;
25
31
  _parentFormGroup: FormGroupDirective;
26
- /** @docs-private */
32
+ /**
33
+ * Form control bound to the component.
34
+ * Implemented as part of `MatFormFieldControl`.
35
+ * @docs-private
36
+ */
27
37
  ngControl: NgControl;
28
38
  };
29
39
  };
@@ -71,8 +81,6 @@ export declare class MatChipList extends _MatChipListBase implements MatFormFiel
71
81
  protected _chipInput: MatChipTextControl;
72
82
  /** Uid of the chip list */
73
83
  _uid: string;
74
- /** The aria-describedby attribute on the chip list for improved a11y. */
75
- _ariaDescribedby: string;
76
84
  /** Tab index for the chip list. */
77
85
  _tabIndex: number;
78
86
  /**
@@ -91,6 +99,13 @@ export declare class MatChipList extends _MatChipListBase implements MatFormFiel
91
99
  get selected(): MatChip[] | MatChip;
92
100
  /** The ARIA role applied to the chip list. */
93
101
  get role(): string | null;
102
+ set role(role: string | null);
103
+ private _explicitRole?;
104
+ /**
105
+ * Implemented as part of MatFormFieldControl.
106
+ * @docs-private
107
+ */
108
+ userAriaDescribedBy: string;
94
109
  /** An object used to control when error messages are shown. */
95
110
  errorStateMatcher: ErrorStateMatcher;
96
111
  /** Whether the user should be allowed to select multiple chips. */
@@ -269,6 +284,6 @@ export declare class MatChipList extends _MatChipListBase implements MatFormFiel
269
284
  /** Syncs the list's state with the individual chips. */
270
285
  private _syncChipsState;
271
286
  static ɵfac: i0.ɵɵFactoryDeclaration<MatChipList, [null, null, { optional: true; }, { optional: true; }, { optional: true; }, null, { optional: true; self: true; }]>;
272
- static ɵcmp: i0.ɵɵComponentDeclaration<MatChipList, "mat-chip-list", ["matChipList"], { "errorStateMatcher": "errorStateMatcher"; "multiple": "multiple"; "compareWith": "compareWith"; "value": "value"; "required": "required"; "placeholder": "placeholder"; "disabled": "disabled"; "ariaOrientation": "aria-orientation"; "selectable": "selectable"; "tabIndex": "tabIndex"; }, { "change": "change"; "valueChange": "valueChange"; }, ["chips"], ["*"]>;
287
+ static ɵcmp: i0.ɵɵComponentDeclaration<MatChipList, "mat-chip-list", ["matChipList"], { "role": "role"; "userAriaDescribedBy": "aria-describedby"; "errorStateMatcher": "errorStateMatcher"; "multiple": "multiple"; "compareWith": "compareWith"; "value": "value"; "required": "required"; "placeholder": "placeholder"; "disabled": "disabled"; "ariaOrientation": "aria-orientation"; "selectable": "selectable"; "tabIndex": "tabIndex"; }, { "change": "change"; "valueChange": "valueChange"; }, ["chips"], ["*"]>;
273
288
  }
274
289
  export {};
package/chips/chip.d.ts CHANGED
@@ -116,6 +116,8 @@ export declare class MatChip extends _MatChipMixinBase implements FocusableOptio
116
116
  trailingIcon: MatChipTrailingIcon;
117
117
  /** The chip's remove toggler. */
118
118
  removeIcon: MatChipRemove;
119
+ /** ARIA role that should be applied to the chip. */
120
+ role: string;
119
121
  /** Whether the chip is selected. */
120
122
  get selected(): boolean;
121
123
  set selected(value: BooleanInput);
@@ -182,7 +184,7 @@ export declare class MatChip extends _MatChipMixinBase implements FocusableOptio
182
184
  _blur(): void;
183
185
  private _dispatchSelectionChange;
184
186
  static ɵfac: i0.ɵɵFactoryDeclaration<MatChip, [null, null, null, { optional: true; }, null, null, { optional: true; }, { attribute: "tabindex"; }]>;
185
- static ɵdir: i0.ɵɵDirectiveDeclaration<MatChip, "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", ["matChip"], { "color": "color"; "disableRipple": "disableRipple"; "tabIndex": "tabIndex"; "selected": "selected"; "value": "value"; "selectable": "selectable"; "disabled": "disabled"; "removable": "removable"; }, { "selectionChange": "selectionChange"; "destroyed": "destroyed"; "removed": "removed"; }, ["avatar", "trailingIcon", "removeIcon"]>;
187
+ static ɵdir: i0.ɵɵDirectiveDeclaration<MatChip, "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", ["matChip"], { "color": "color"; "disableRipple": "disableRipple"; "tabIndex": "tabIndex"; "role": "role"; "selected": "selected"; "value": "value"; "selectable": "selectable"; "disabled": "disabled"; "removable": "removable"; }, { "selectionChange": "selectionChange"; "destroyed": "destroyed"; "removed": "removed"; }, ["avatar", "trailingIcon", "removeIcon"]>;
186
188
  }
187
189
  /**
188
190
  * Applies proper (click) support and adds styling for use with the Material Design "cancel" icon
package/core/_core.scss CHANGED
@@ -1,6 +1,4 @@
1
- @use '../../cdk/overlay';
2
- @use '../../cdk/a11y';
3
- @use '../../cdk/text-field';
1
+ @use '@angular/cdk';
4
2
 
5
3
  // Core styles that can be used to apply material design treatments to any element.
6
4
  @use './ripple/ripple';
@@ -11,10 +9,10 @@
11
9
  @mixin core($typography-config: null) {
12
10
  @include all-typography.all-component-typographies($typography-config);
13
11
  @include ripple.ripple();
14
- @include a11y.a11y-visually-hidden();
15
- @include overlay.overlay();
16
- @include text-field.text-field-autosize();
17
- @include text-field.text-field-autofill();
12
+ @include cdk.a11y-visually-hidden();
13
+ @include cdk.overlay();
14
+ @include cdk.text-field-autosize();
15
+ @include cdk.text-field-autofill();
18
16
 
19
17
  @include focus-indicators.private-strong-focus-indicators-positioning();
20
18
  @include _mdc-core();
@@ -11,8 +11,6 @@ import { ErrorStateMatcher } from '../error/error-options';
11
11
  import { AbstractConstructor, Constructor } from './constructor';
12
12
  /** @docs-private */
13
13
  export interface CanUpdateErrorState {
14
- /** Emits whenever the component state changes. */
15
- readonly stateChanges: Subject<void>;
16
14
  /** Updates the error state based on the provided error state matcher. */
17
15
  updateErrorState(): void;
18
16
  /** Whether the component is in an error state. */
@@ -27,6 +25,7 @@ export interface HasErrorState {
27
25
  _parentForm: NgForm;
28
26
  _defaultErrorStateMatcher: ErrorStateMatcher;
29
27
  ngControl: NgControl;
28
+ stateChanges: Subject<void>;
30
29
  }
31
30
  /**
32
31
  * Mixin to augment a directive with updateErrorState method.
@@ -1,12 +1,11 @@
1
1
  import * as i0 from "@angular/core";
2
- import * as i1 from "@angular/cdk/platform";
3
2
  export * from './date-adapter';
4
3
  export * from './date-formats';
5
4
  export * from './native-date-adapter';
6
5
  export * from './native-date-formats';
7
6
  export declare class NativeDateModule {
8
7
  static ɵfac: i0.ɵɵFactoryDeclaration<NativeDateModule, never>;
9
- static ɵmod: i0.ɵɵNgModuleDeclaration<NativeDateModule, never, [typeof i1.PlatformModule], never>;
8
+ static ɵmod: i0.ɵɵNgModuleDeclaration<NativeDateModule, never, never, never>;
10
9
  static ɵinj: i0.ɵɵInjectorDeclaration<NativeDateModule>;
11
10
  }
12
11
  export declare class MatNativeDateModule {
@@ -1,4 +1,4 @@
1
- @use '../../../cdk/a11y';
1
+ @use '@angular/cdk';
2
2
 
3
3
  @mixin ripple() {
4
4
  // The host element of an mat-ripple directive should always have a position of "absolute" or
@@ -36,7 +36,7 @@
36
36
  transform: scale3d(0, 0, 0);
37
37
 
38
38
  // In high contrast mode the ripple is opaque, causing it to obstruct the content.
39
- @include a11y.high-contrast(active, off) {
39
+ @include cdk.high-contrast(active, off) {
40
40
  display: none;
41
41
  }
42
42
  }
@@ -1,12 +1,11 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./ripple";
3
3
  import * as i2 from "../common-behaviors/common-module";
4
- import * as i3 from "@angular/cdk/platform";
5
4
  export * from './ripple';
6
5
  export * from './ripple-ref';
7
6
  export * from './ripple-renderer';
8
7
  export declare class MatRippleModule {
9
8
  static ɵfac: i0.ɵɵFactoryDeclaration<MatRippleModule, never>;
10
- static ɵmod: i0.ɵɵNgModuleDeclaration<MatRippleModule, [typeof i1.MatRipple], [typeof i2.MatCommonModule, typeof i3.PlatformModule], [typeof i1.MatRipple, typeof i2.MatCommonModule]>;
9
+ static ɵmod: i0.ɵɵNgModuleDeclaration<MatRippleModule, [typeof i1.MatRipple], [typeof i2.MatCommonModule], [typeof i1.MatRipple, typeof i2.MatCommonModule]>;
11
10
  static ɵinj: i0.ɵɵInjectorDeclaration<MatRippleModule>;
12
11
  }
@@ -39,6 +39,7 @@ export declare class RippleRef {
39
39
  element: HTMLElement;
40
40
  /** Ripple configuration used for the ripple. */
41
41
  config: RippleConfig;
42
+ _animationForciblyDisabledThroughCss: boolean;
42
43
  /** Current state of the ripple. */
43
44
  state: RippleState;
44
45
  constructor(_renderer: {
@@ -47,7 +48,7 @@ export declare class RippleRef {
47
48
  /** Reference to the ripple HTML element. */
48
49
  element: HTMLElement,
49
50
  /** Ripple configuration used for the ripple. */
50
- config: RippleConfig);
51
+ config: RippleConfig, _animationForciblyDisabledThroughCss?: boolean);
51
52
  /** Fades out the ripple element. */
52
53
  fadeOut(): void;
53
54
  }
@@ -43,7 +43,12 @@ export declare class RippleRenderer implements EventListenerObject {
43
43
  private _triggerElement;
44
44
  /** Whether the pointer is currently down or not. */
45
45
  private _isPointerDown;
46
- /** Set of currently active ripple references. */
46
+ /**
47
+ * Map of currently active ripple references.
48
+ * The ripple reference is mapped to its element event listeners.
49
+ * The reason why `| null` is used is that event listeners are added only
50
+ * when the condition is truthy (see the `_startFadeOutTransition` method).
51
+ */
47
52
  private _activeRipples;
48
53
  /** Latest non-persistent ripple that was triggered. */
49
54
  private _mostRecentTransientRipple;
@@ -77,16 +82,24 @@ export declare class RippleRenderer implements EventListenerObject {
77
82
  * @docs-private
78
83
  */
79
84
  handleEvent(event: Event): void;
85
+ /** Method that will be called if the fade-in or fade-in transition completed. */
86
+ private _finishRippleTransition;
87
+ /**
88
+ * Starts the fade-out transition of the given ripple if it's not persistent and the pointer
89
+ * is not held down anymore.
90
+ */
91
+ private _startFadeOutTransition;
92
+ /** Destroys the given ripple by removing it from the DOM and updating its state. */
93
+ private _destroyRipple;
80
94
  /** Function being called whenever the trigger is being pressed using mouse. */
81
95
  private _onMousedown;
82
96
  /** Function being called whenever the trigger is being pressed using touch. */
83
97
  private _onTouchStart;
84
98
  /** Function being called whenever the trigger is being released. */
85
99
  private _onPointerUp;
86
- /** Runs a timeout outside of the Angular zone to avoid triggering the change detection. */
87
- private _runTimeoutOutsideZone;
88
100
  /** Registers event listeners for a given list of events. */
89
101
  private _registerEvents;
102
+ private _getActiveRipples;
90
103
  /** Removes previously registered event listeners from the trigger element. */
91
104
  _removeTriggerEvents(): void;
92
105
  }
@@ -1,4 +1,5 @@
1
- @use '../../../cdk/a11y';
1
+ @use '@angular/cdk';
2
+
2
3
  @use './list-common';
3
4
  @use './layout-common';
4
5
 
@@ -84,7 +85,7 @@ $icon-margin: 16px !default;
84
85
  }
85
86
 
86
87
  // Fix for Chromium-based browsers blending in the `currentColor` with the background.
87
- @include a11y.high-contrast(active, off) {
88
+ @include cdk.high-contrast(active, off) {
88
89
  fill: CanvasText;
89
90
  }
90
91
  }
@@ -1,7 +1,6 @@
1
1
  // stylelint-disable material/no-prefixes
2
2
  @mixin user-select($value) {
3
3
  -webkit-user-select: $value;
4
- -moz-user-select: $value;
5
4
  user-select: $value;
6
5
  }
7
6
 
@@ -25,27 +24,12 @@
25
24
  }
26
25
  }
27
26
 
28
- @mixin cursor-grab {
29
- cursor: -webkit-grab;
30
- cursor: grab;
31
- }
32
-
33
- @mixin cursor-grabbing {
34
- cursor: -webkit-grabbing;
35
- cursor: grabbing;
36
- }
37
-
38
27
  @mixin backface-visibility($value) {
39
28
  -webkit-backface-visibility: $value;
40
29
  backface-visibility: $value;
41
30
  }
42
31
 
43
- @mixin position-sticky($important: false) {
44
- position: -webkit-sticky #{if($important, '!important', '')};
45
- position: sticky #{if($important, '!important', '')};
46
- }
47
-
48
- @mixin private-color-adjust($value) {
32
+ @mixin color-adjust($value) {
49
33
  -webkit-print-color-adjust: $value;
50
34
  color-adjust: $value;
51
35
  }
@@ -437,3 +437,12 @@ $_emitted-density: () !default;
437
437
  color: $theme-or-color-config
438
438
  ));
439
439
  }
440
+
441
+
442
+ // Approximates an rgba color into a solid hex color, given a background color.
443
+ @function private-rgba-to-hex($color, $background-color) {
444
+ // We convert the rgba color into a solid one by taking the opacity from the rgba
445
+ // value and using it to determine the percentage of the background to put
446
+ // into foreground when mixing the colors together.
447
+ @return mix($background-color, rgba($color, 1), (1 - opacity($color)) * 100%);
448
+ }