@angular/material 13.3.3 → 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 (439) hide show
  1. package/_index.scss +20 -1
  2. package/autocomplete/autocomplete-trigger.d.ts +13 -3
  3. package/autocomplete/autocomplete.d.ts +7 -1
  4. package/badge/_badge-theme.scss +3 -2
  5. package/checkbox/testing/checkbox-harness-filters.d.ts +2 -0
  6. package/chips/chip-input.d.ts +2 -5
  7. package/chips/chip-list.d.ts +20 -5
  8. package/chips/chip.d.ts +3 -1
  9. package/core/_core.scss +5 -7
  10. package/core/common-behaviors/error-state.d.ts +1 -2
  11. package/core/ripple/_ripple.scss +6 -3
  12. package/core/ripple/ripple-ref.d.ts +2 -1
  13. package/core/ripple/ripple-renderer.d.ts +16 -3
  14. package/core/style/_menu-common.scss +3 -2
  15. package/core/style/_vendor-prefixes.scss +1 -1
  16. package/datepicker/calendar-body.d.ts +12 -3
  17. package/datepicker/date-range-input-parts.d.ts +4 -1
  18. package/datepicker/month-view.d.ts +18 -0
  19. package/datepicker/multi-year-view.d.ts +18 -0
  20. package/datepicker/year-view.d.ts +18 -0
  21. package/dialog/dialog-animations.d.ts +10 -0
  22. package/dialog/dialog-config.d.ts +10 -1
  23. package/dialog/dialog-container.d.ts +12 -1
  24. package/dialog/dialog-content-directives.d.ts +5 -1
  25. package/dialog/public-api.d.ts +1 -1
  26. package/esm2020/autocomplete/autocomplete-module.mjs +5 -5
  27. package/esm2020/autocomplete/autocomplete-origin.mjs +7 -7
  28. package/esm2020/autocomplete/autocomplete-trigger.mjs +68 -39
  29. package/esm2020/autocomplete/autocomplete.mjs +19 -9
  30. package/esm2020/autocomplete/testing/autocomplete-harness.mjs +7 -1
  31. package/esm2020/badge/badge-module.mjs +5 -5
  32. package/esm2020/badge/badge.mjs +4 -4
  33. package/esm2020/bottom-sheet/bottom-sheet-container.mjs +5 -5
  34. package/esm2020/bottom-sheet/bottom-sheet-module.mjs +5 -5
  35. package/esm2020/bottom-sheet/bottom-sheet.mjs +4 -4
  36. package/esm2020/button/button-module.mjs +5 -5
  37. package/esm2020/button/button.mjs +9 -9
  38. package/esm2020/button-toggle/button-toggle-module.mjs +5 -5
  39. package/esm2020/button-toggle/button-toggle.mjs +8 -8
  40. package/esm2020/card/card-module.mjs +5 -5
  41. package/esm2020/card/card.mjs +44 -44
  42. package/esm2020/checkbox/checkbox-module.mjs +9 -9
  43. package/esm2020/checkbox/checkbox-required-validator.mjs +4 -4
  44. package/esm2020/checkbox/checkbox.mjs +5 -5
  45. package/esm2020/checkbox/testing/checkbox-harness-filters.mjs +1 -1
  46. package/esm2020/checkbox/testing/checkbox-harness.mjs +3 -2
  47. package/esm2020/chips/chip-input.mjs +4 -4
  48. package/esm2020/chips/chip-list.mjs +34 -9
  49. package/esm2020/chips/chip.mjs +18 -14
  50. package/esm2020/chips/chips-module.mjs +5 -5
  51. package/esm2020/core/common-behaviors/common-module.mjs +5 -5
  52. package/esm2020/core/common-behaviors/error-state.mjs +1 -8
  53. package/esm2020/core/datetime/index.mjs +9 -9
  54. package/esm2020/core/datetime/native-date-adapter.mjs +4 -4
  55. package/esm2020/core/error/error-options.mjs +7 -7
  56. package/esm2020/core/line/line.mjs +8 -8
  57. package/esm2020/core/option/index.mjs +5 -5
  58. package/esm2020/core/option/optgroup.mjs +8 -8
  59. package/esm2020/core/option/option.mjs +8 -8
  60. package/esm2020/core/ripple/index.mjs +5 -5
  61. package/esm2020/core/ripple/ripple-ref.mjs +5 -2
  62. package/esm2020/core/ripple/ripple-renderer.mjs +113 -53
  63. package/esm2020/core/ripple/ripple.mjs +4 -4
  64. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +5 -5
  65. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +5 -5
  66. package/esm2020/core/version.mjs +1 -1
  67. package/esm2020/datepicker/calendar-body.mjs +27 -5
  68. package/esm2020/datepicker/calendar.mjs +8 -8
  69. package/esm2020/datepicker/date-range-input-parts.mjs +10 -10
  70. package/esm2020/datepicker/date-range-input.mjs +6 -6
  71. package/esm2020/datepicker/date-range-picker.mjs +4 -4
  72. package/esm2020/datepicker/date-range-selection-strategy.mjs +4 -4
  73. package/esm2020/datepicker/date-selection-model.mjs +10 -10
  74. package/esm2020/datepicker/datepicker-actions.mjs +12 -12
  75. package/esm2020/datepicker/datepicker-base.mjs +8 -8
  76. package/esm2020/datepicker/datepicker-input-base.mjs +4 -4
  77. package/esm2020/datepicker/datepicker-input.mjs +4 -4
  78. package/esm2020/datepicker/datepicker-intl.mjs +4 -4
  79. package/esm2020/datepicker/datepicker-module.mjs +5 -5
  80. package/esm2020/datepicker/datepicker-toggle.mjs +8 -8
  81. package/esm2020/datepicker/datepicker.mjs +4 -4
  82. package/esm2020/datepicker/month-view.mjs +36 -9
  83. package/esm2020/datepicker/multi-year-view.mjs +42 -10
  84. package/esm2020/datepicker/year-view.mjs +41 -10
  85. package/esm2020/dialog/dialog-animations.mjs +12 -5
  86. package/esm2020/dialog/dialog-config.mjs +6 -1
  87. package/esm2020/dialog/dialog-container.mjs +32 -19
  88. package/esm2020/dialog/dialog-content-directives.mjs +31 -15
  89. package/esm2020/dialog/dialog-module.mjs +5 -5
  90. package/esm2020/dialog/dialog.mjs +10 -10
  91. package/esm2020/dialog/public-api.mjs +2 -2
  92. package/esm2020/divider/divider-module.mjs +5 -5
  93. package/esm2020/divider/divider.mjs +5 -5
  94. package/esm2020/expansion/accordion.mjs +4 -4
  95. package/esm2020/expansion/expansion-module.mjs +5 -5
  96. package/esm2020/expansion/expansion-panel-base.mjs +14 -0
  97. package/esm2020/expansion/expansion-panel-content.mjs +14 -7
  98. package/esm2020/expansion/expansion-panel-header.mjs +11 -11
  99. package/esm2020/expansion/expansion-panel.mjs +13 -10
  100. package/esm2020/expansion/public-api.mjs +2 -1
  101. package/esm2020/form-field/error.mjs +4 -4
  102. package/esm2020/form-field/form-field-control.mjs +4 -4
  103. package/esm2020/form-field/form-field-module.mjs +5 -5
  104. package/esm2020/form-field/form-field.mjs +22 -14
  105. package/esm2020/form-field/hint.mjs +4 -4
  106. package/esm2020/form-field/label.mjs +4 -4
  107. package/esm2020/form-field/placeholder.mjs +4 -4
  108. package/esm2020/form-field/prefix.mjs +4 -4
  109. package/esm2020/form-field/suffix.mjs +4 -4
  110. package/esm2020/form-field/testing/public-api.mjs +4 -4
  111. package/esm2020/grid-list/grid-list-module.mjs +5 -5
  112. package/esm2020/grid-list/grid-list.mjs +6 -6
  113. package/esm2020/grid-list/grid-tile.mjs +17 -17
  114. package/esm2020/icon/icon-module.mjs +5 -5
  115. package/esm2020/icon/icon-registry.mjs +12 -14
  116. package/esm2020/icon/icon.mjs +31 -21
  117. package/esm2020/icon/testing/fake-icon-registry.mjs +9 -9
  118. package/esm2020/input/input-module.mjs +5 -5
  119. package/esm2020/input/input.mjs +20 -7
  120. package/esm2020/list/list-module.mjs +5 -5
  121. package/esm2020/list/list.mjs +21 -23
  122. package/esm2020/list/selection-list.mjs +14 -37
  123. package/esm2020/list/testing/list-item-harness-base.mjs +1 -9
  124. package/esm2020/menu/menu-content.mjs +7 -7
  125. package/esm2020/menu/menu-errors.mjs +1 -12
  126. package/esm2020/menu/menu-item.mjs +4 -4
  127. package/esm2020/menu/menu-module.mjs +5 -5
  128. package/esm2020/menu/menu-trigger.mjs +62 -64
  129. package/esm2020/menu/menu.mjs +8 -8
  130. package/esm2020/paginator/paginator-intl.mjs +4 -4
  131. package/esm2020/paginator/paginator-module.mjs +5 -5
  132. package/esm2020/paginator/paginator.mjs +12 -8
  133. package/esm2020/progress-bar/progress-bar-module.mjs +5 -5
  134. package/esm2020/progress-bar/progress-bar.mjs +5 -5
  135. package/esm2020/progress-spinner/progress-spinner-module.mjs +5 -5
  136. package/esm2020/progress-spinner/progress-spinner.mjs +8 -5
  137. package/esm2020/radio/radio-module.mjs +5 -5
  138. package/esm2020/radio/radio.mjs +14 -14
  139. package/esm2020/radio/testing/radio-harness-filters.mjs +1 -1
  140. package/esm2020/radio/testing/radio-harness.mjs +3 -2
  141. package/esm2020/select/select-module.mjs +5 -5
  142. package/esm2020/select/select.mjs +25 -13
  143. package/esm2020/sidenav/drawer.mjs +12 -12
  144. package/esm2020/sidenav/sidenav-module.mjs +5 -5
  145. package/esm2020/sidenav/sidenav.mjs +12 -12
  146. package/esm2020/slide-toggle/slide-toggle-module.mjs +9 -9
  147. package/esm2020/slide-toggle/slide-toggle-required-validator.mjs +4 -4
  148. package/esm2020/slide-toggle/slide-toggle.mjs +5 -5
  149. package/esm2020/slide-toggle/testing/slide-toggle-harness-filters.mjs +1 -1
  150. package/esm2020/slide-toggle/testing/slide-toggle-harness.mjs +4 -2
  151. package/esm2020/slider/slider-module.mjs +5 -5
  152. package/esm2020/slider/slider.mjs +5 -5
  153. package/esm2020/snack-bar/simple-snack-bar.mjs +5 -5
  154. package/esm2020/snack-bar/snack-bar-container.mjs +5 -5
  155. package/esm2020/snack-bar/snack-bar-module.mjs +5 -5
  156. package/esm2020/snack-bar/snack-bar.mjs +7 -7
  157. package/esm2020/sort/sort-header-intl.mjs +4 -4
  158. package/esm2020/sort/sort-header.mjs +15 -7
  159. package/esm2020/sort/sort-module.mjs +5 -5
  160. package/esm2020/sort/sort.mjs +4 -4
  161. package/esm2020/stepper/public-api.mjs +2 -2
  162. package/esm2020/stepper/step-content.mjs +4 -4
  163. package/esm2020/stepper/step-header.mjs +5 -5
  164. package/esm2020/stepper/step-label.mjs +4 -4
  165. package/esm2020/stepper/stepper-animations.mjs +9 -3
  166. package/esm2020/stepper/stepper-button.mjs +7 -7
  167. package/esm2020/stepper/stepper-icon.mjs +4 -4
  168. package/esm2020/stepper/stepper-intl.mjs +4 -4
  169. package/esm2020/stepper/stepper-module.mjs +6 -10
  170. package/esm2020/stepper/stepper.mjs +39 -63
  171. package/esm2020/table/cell.mjs +22 -22
  172. package/esm2020/table/row.mjs +22 -22
  173. package/esm2020/table/table-module.mjs +5 -5
  174. package/esm2020/table/table.mjs +9 -9
  175. package/esm2020/table/text-column.mjs +4 -4
  176. package/esm2020/tabs/ink-bar.mjs +4 -4
  177. package/esm2020/tabs/paginated-tab-header.mjs +16 -10
  178. package/esm2020/tabs/tab-body.mjs +18 -12
  179. package/esm2020/tabs/tab-config.mjs +1 -1
  180. package/esm2020/tabs/tab-content.mjs +4 -4
  181. package/esm2020/tabs/tab-group.mjs +36 -9
  182. package/esm2020/tabs/tab-header.mjs +8 -8
  183. package/esm2020/tabs/tab-label-wrapper.mjs +4 -4
  184. package/esm2020/tabs/tab-label.mjs +4 -4
  185. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +18 -18
  186. package/esm2020/tabs/tab.mjs +4 -4
  187. package/esm2020/tabs/tabs-animations.mjs +16 -6
  188. package/esm2020/tabs/tabs-module.mjs +5 -5
  189. package/esm2020/toolbar/toolbar-module.mjs +5 -5
  190. package/esm2020/toolbar/toolbar.mjs +8 -8
  191. package/esm2020/tooltip/tooltip-module.mjs +5 -5
  192. package/esm2020/tooltip/tooltip.mjs +14 -14
  193. package/esm2020/tree/node.mjs +10 -10
  194. package/esm2020/tree/outlet.mjs +4 -4
  195. package/esm2020/tree/padding.mjs +4 -4
  196. package/esm2020/tree/toggle.mjs +4 -4
  197. package/esm2020/tree/tree-module.mjs +5 -5
  198. package/esm2020/tree/tree.mjs +5 -5
  199. package/expansion/expansion-panel-base.d.ts +22 -0
  200. package/expansion/expansion-panel-content.d.ts +4 -2
  201. package/expansion/public-api.d.ts +1 -0
  202. package/fesm2015/autocomplete/testing.mjs +6 -0
  203. package/fesm2015/autocomplete/testing.mjs.map +1 -1
  204. package/fesm2015/autocomplete.mjs +96 -56
  205. package/fesm2015/autocomplete.mjs.map +1 -1
  206. package/fesm2015/badge.mjs +7 -7
  207. package/fesm2015/badge.mjs.map +1 -1
  208. package/fesm2015/bottom-sheet.mjs +11 -11
  209. package/fesm2015/bottom-sheet.mjs.map +1 -1
  210. package/fesm2015/button-toggle.mjs +11 -11
  211. package/fesm2015/button-toggle.mjs.map +1 -1
  212. package/fesm2015/button.mjs +12 -12
  213. package/fesm2015/button.mjs.map +1 -1
  214. package/fesm2015/card.mjs +47 -47
  215. package/fesm2015/card.mjs.map +1 -1
  216. package/fesm2015/checkbox/testing.mjs +2 -1
  217. package/fesm2015/checkbox/testing.mjs.map +1 -1
  218. package/fesm2015/checkbox.mjs +15 -15
  219. package/fesm2015/checkbox.mjs.map +1 -1
  220. package/fesm2015/chips.mjs +57 -28
  221. package/fesm2015/chips.mjs.map +1 -1
  222. package/fesm2015/core.mjs +180 -122
  223. package/fesm2015/core.mjs.map +1 -1
  224. package/fesm2015/datepicker.mjs +219 -107
  225. package/fesm2015/datepicker.mjs.map +1 -1
  226. package/fesm2015/dialog.mjs +116 -75
  227. package/fesm2015/dialog.mjs.map +1 -1
  228. package/fesm2015/divider.mjs +8 -8
  229. package/fesm2015/divider.mjs.map +1 -1
  230. package/fesm2015/expansion.mjs +56 -33
  231. package/fesm2015/expansion.mjs.map +1 -1
  232. package/fesm2015/form-field/testing.mjs +1 -1
  233. package/fesm2015/form-field/testing.mjs.map +1 -1
  234. package/fesm2015/form-field.mjs +47 -38
  235. package/fesm2015/form-field.mjs.map +1 -1
  236. package/fesm2015/grid-list.mjs +25 -25
  237. package/fesm2015/grid-list.mjs.map +1 -1
  238. package/fesm2015/icon/testing.mjs +8 -8
  239. package/fesm2015/icon/testing.mjs.map +1 -1
  240. package/fesm2015/icon.mjs +45 -37
  241. package/fesm2015/icon.mjs.map +1 -1
  242. package/fesm2015/input.mjs +24 -11
  243. package/fesm2015/input.mjs.map +1 -1
  244. package/fesm2015/list/testing.mjs +0 -10
  245. package/fesm2015/list/testing.mjs.map +1 -1
  246. package/fesm2015/list.mjs +40 -66
  247. package/fesm2015/list.mjs.map +1 -1
  248. package/fesm2015/menu.mjs +82 -93
  249. package/fesm2015/menu.mjs.map +1 -1
  250. package/fesm2015/paginator.mjs +18 -14
  251. package/fesm2015/paginator.mjs.map +1 -1
  252. package/fesm2015/progress-bar.mjs +8 -8
  253. package/fesm2015/progress-bar.mjs.map +1 -1
  254. package/fesm2015/progress-spinner.mjs +11 -8
  255. package/fesm2015/progress-spinner.mjs.map +1 -1
  256. package/fesm2015/radio/testing.mjs +2 -1
  257. package/fesm2015/radio/testing.mjs.map +1 -1
  258. package/fesm2015/radio.mjs +17 -17
  259. package/fesm2015/radio.mjs.map +1 -1
  260. package/fesm2015/select.mjs +28 -16
  261. package/fesm2015/select.mjs.map +1 -1
  262. package/fesm2015/sidenav.mjs +26 -26
  263. package/fesm2015/sidenav.mjs.map +1 -1
  264. package/fesm2015/slide-toggle/testing.mjs +3 -1
  265. package/fesm2015/slide-toggle/testing.mjs.map +1 -1
  266. package/fesm2015/slide-toggle.mjs +15 -15
  267. package/fesm2015/slide-toggle.mjs.map +1 -1
  268. package/fesm2015/slider.mjs +8 -8
  269. package/fesm2015/slider.mjs.map +1 -1
  270. package/fesm2015/snack-bar.mjs +18 -18
  271. package/fesm2015/snack-bar.mjs.map +1 -1
  272. package/fesm2015/sort.mjs +127 -119
  273. package/fesm2015/sort.mjs.map +1 -1
  274. package/fesm2015/stepper.mjs +72 -93
  275. package/fesm2015/stepper.mjs.map +1 -1
  276. package/fesm2015/table.mjs +57 -57
  277. package/fesm2015/table.mjs.map +1 -1
  278. package/fesm2015/tabs.mjs +125 -76
  279. package/fesm2015/tabs.mjs.map +1 -1
  280. package/fesm2015/toolbar.mjs +11 -11
  281. package/fesm2015/toolbar.mjs.map +1 -1
  282. package/fesm2015/tooltip.mjs +17 -17
  283. package/fesm2015/tooltip.mjs.map +1 -1
  284. package/fesm2015/tree.mjs +26 -26
  285. package/fesm2015/tree.mjs.map +1 -1
  286. package/fesm2020/autocomplete/testing.mjs +6 -0
  287. package/fesm2020/autocomplete/testing.mjs.map +1 -1
  288. package/fesm2020/autocomplete.mjs +95 -56
  289. package/fesm2020/autocomplete.mjs.map +1 -1
  290. package/fesm2020/badge.mjs +7 -7
  291. package/fesm2020/badge.mjs.map +1 -1
  292. package/fesm2020/bottom-sheet.mjs +11 -11
  293. package/fesm2020/bottom-sheet.mjs.map +1 -1
  294. package/fesm2020/button-toggle.mjs +11 -11
  295. package/fesm2020/button-toggle.mjs.map +1 -1
  296. package/fesm2020/button.mjs +12 -12
  297. package/fesm2020/button.mjs.map +1 -1
  298. package/fesm2020/card.mjs +47 -47
  299. package/fesm2020/card.mjs.map +1 -1
  300. package/fesm2020/checkbox/testing.mjs +2 -1
  301. package/fesm2020/checkbox/testing.mjs.map +1 -1
  302. package/fesm2020/checkbox.mjs +15 -15
  303. package/fesm2020/checkbox.mjs.map +1 -1
  304. package/fesm2020/chips.mjs +57 -28
  305. package/fesm2020/chips.mjs.map +1 -1
  306. package/fesm2020/core.mjs +179 -122
  307. package/fesm2020/core.mjs.map +1 -1
  308. package/fesm2020/datepicker.mjs +219 -107
  309. package/fesm2020/datepicker.mjs.map +1 -1
  310. package/fesm2020/dialog.mjs +115 -75
  311. package/fesm2020/dialog.mjs.map +1 -1
  312. package/fesm2020/divider.mjs +8 -8
  313. package/fesm2020/divider.mjs.map +1 -1
  314. package/fesm2020/expansion.mjs +54 -33
  315. package/fesm2020/expansion.mjs.map +1 -1
  316. package/fesm2020/form-field/testing.mjs +1 -1
  317. package/fesm2020/form-field/testing.mjs.map +1 -1
  318. package/fesm2020/form-field.mjs +46 -38
  319. package/fesm2020/form-field.mjs.map +1 -1
  320. package/fesm2020/grid-list.mjs +25 -25
  321. package/fesm2020/grid-list.mjs.map +1 -1
  322. package/fesm2020/icon/testing.mjs +8 -8
  323. package/fesm2020/icon/testing.mjs.map +1 -1
  324. package/fesm2020/icon.mjs +45 -37
  325. package/fesm2020/icon.mjs.map +1 -1
  326. package/fesm2020/input.mjs +23 -10
  327. package/fesm2020/input.mjs.map +1 -1
  328. package/fesm2020/list/testing.mjs +0 -8
  329. package/fesm2020/list/testing.mjs.map +1 -1
  330. package/fesm2020/list.mjs +37 -62
  331. package/fesm2020/list.mjs.map +1 -1
  332. package/fesm2020/menu.mjs +80 -93
  333. package/fesm2020/menu.mjs.map +1 -1
  334. package/fesm2020/paginator.mjs +18 -14
  335. package/fesm2020/paginator.mjs.map +1 -1
  336. package/fesm2020/progress-bar.mjs +8 -8
  337. package/fesm2020/progress-bar.mjs.map +1 -1
  338. package/fesm2020/progress-spinner.mjs +11 -8
  339. package/fesm2020/progress-spinner.mjs.map +1 -1
  340. package/fesm2020/radio/testing.mjs +2 -1
  341. package/fesm2020/radio/testing.mjs.map +1 -1
  342. package/fesm2020/radio.mjs +17 -17
  343. package/fesm2020/radio.mjs.map +1 -1
  344. package/fesm2020/select.mjs +28 -16
  345. package/fesm2020/select.mjs.map +1 -1
  346. package/fesm2020/sidenav.mjs +26 -26
  347. package/fesm2020/sidenav.mjs.map +1 -1
  348. package/fesm2020/slide-toggle/testing.mjs +3 -1
  349. package/fesm2020/slide-toggle/testing.mjs.map +1 -1
  350. package/fesm2020/slide-toggle.mjs +15 -15
  351. package/fesm2020/slide-toggle.mjs.map +1 -1
  352. package/fesm2020/slider.mjs +8 -8
  353. package/fesm2020/slider.mjs.map +1 -1
  354. package/fesm2020/snack-bar.mjs +18 -18
  355. package/fesm2020/snack-bar.mjs.map +1 -1
  356. package/fesm2020/sort.mjs +23 -15
  357. package/fesm2020/sort.mjs.map +1 -1
  358. package/fesm2020/stepper.mjs +72 -93
  359. package/fesm2020/stepper.mjs.map +1 -1
  360. package/fesm2020/table.mjs +57 -57
  361. package/fesm2020/table.mjs.map +1 -1
  362. package/fesm2020/tabs.mjs +125 -76
  363. package/fesm2020/tabs.mjs.map +1 -1
  364. package/fesm2020/toolbar.mjs +11 -11
  365. package/fesm2020/toolbar.mjs.map +1 -1
  366. package/fesm2020/tooltip.mjs +17 -17
  367. package/fesm2020/tooltip.mjs.map +1 -1
  368. package/fesm2020/tree.mjs +26 -26
  369. package/fesm2020/tree.mjs.map +1 -1
  370. package/form-field/form-field-control.d.ts +3 -3
  371. package/form-field/form-field.d.ts +15 -8
  372. package/form-field/testing/public-api.d.ts +1 -1
  373. package/icon/icon-registry.d.ts +7 -9
  374. package/icon/icon.d.ts +12 -3
  375. package/icon/testing/fake-icon-registry.d.ts +1 -1
  376. package/input/input.d.ts +11 -1
  377. package/list/selection-list.d.ts +4 -21
  378. package/list/testing/list-item-harness-base.d.ts +1 -7
  379. package/menu/menu-errors.d.ts +0 -5
  380. package/menu/menu-trigger.d.ts +14 -10
  381. package/package.json +7 -7
  382. package/paginator/paginator.d.ts +12 -1
  383. package/prebuilt-themes/deeppurple-amber.css +1 -1
  384. package/prebuilt-themes/indigo-pink.css +1 -1
  385. package/prebuilt-themes/pink-bluegrey.css +1 -1
  386. package/prebuilt-themes/purple-green.css +1 -1
  387. package/progress-spinner/progress-spinner.d.ts +3 -1
  388. package/radio/testing/radio-harness-filters.d.ts +2 -0
  389. package/schematics/migration.json +5 -0
  390. package/schematics/ng-add/fonts/material-fonts.js +4 -13
  391. package/schematics/ng-add/fonts/material-fonts.mjs +4 -13
  392. package/schematics/ng-add/index.js +2 -2
  393. package/schematics/ng-add/index.mjs +2 -2
  394. package/schematics/ng-add/schema.d.ts +2 -2
  395. package/schematics/ng-add/schema.js +1 -1
  396. package/schematics/ng-add/schema.json +12 -4
  397. package/schematics/ng-add/schema.mjs +1 -1
  398. package/schematics/ng-add/setup-project.js +16 -23
  399. package/schematics/ng-add/setup-project.mjs +16 -23
  400. package/schematics/ng-add/theming/theming.js +28 -39
  401. package/schematics/ng-add/theming/theming.mjs +28 -39
  402. package/schematics/ng-generate/address-form/index.js +5 -14
  403. package/schematics/ng-generate/address-form/index.mjs +5 -14
  404. package/schematics/ng-generate/dashboard/index.js +5 -14
  405. package/schematics/ng-generate/dashboard/index.mjs +5 -14
  406. package/schematics/ng-generate/navigation/index.js +5 -14
  407. package/schematics/ng-generate/navigation/index.mjs +5 -14
  408. package/schematics/ng-generate/table/index.js +5 -14
  409. package/schematics/ng-generate/table/index.mjs +5 -14
  410. package/schematics/ng-generate/tree/index.js +5 -14
  411. package/schematics/ng-generate/tree/index.mjs +5 -14
  412. package/schematics/ng-update/data/constructor-checks.js +11 -1
  413. package/schematics/ng-update/data/constructor-checks.mjs +11 -1
  414. package/schematics/ng-update/data/css-selectors.js +7 -1
  415. package/schematics/ng-update/data/css-selectors.mjs +7 -1
  416. package/schematics/ng-update/index.d.ts +2 -0
  417. package/schematics/ng-update/index.js +7 -2
  418. package/schematics/ng-update/index.mjs +7 -2
  419. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.js +4 -4
  420. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.mjs +4 -4
  421. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.js +14 -23
  422. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.mjs +14 -23
  423. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.js +3 -15
  424. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.mjs +3 -15
  425. package/schematics/ng-update/migrations/theming-api-v12/migration.js +5 -5
  426. package/schematics/ng-update/migrations/theming-api-v12/migration.mjs +5 -5
  427. package/select/select.d.ts +11 -0
  428. package/slide-toggle/testing/slide-toggle-harness-filters.d.ts +4 -0
  429. package/sort/sort-header.d.ts +4 -4
  430. package/sort/sort.d.ts +4 -0
  431. package/stepper/public-api.d.ts +1 -1
  432. package/stepper/stepper-animations.d.ts +2 -0
  433. package/stepper/stepper-module.d.ts +1 -1
  434. package/stepper/stepper.d.ts +15 -38
  435. package/tabs/_tabs-common.scss +6 -5
  436. package/tabs/paginated-tab-header.d.ts +4 -2
  437. package/tabs/tab-body.d.ts +3 -1
  438. package/tabs/tab-config.d.ts +6 -0
  439. package/tabs/tab-group.d.ts +12 -2
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;
@@ -160,7 +167,8 @@ export declare abstract class _MatAutocompleteTriggerBase implements ControlValu
160
167
  private _subscribeToClosingActions;
161
168
  /** Destroys the autocomplete suggestion panel. */
162
169
  private _destroyPanel;
163
- private _setTriggerValue;
170
+ private _assignOptionValue;
171
+ private _updateNativeInputValue;
164
172
  /**
165
173
  * This method closes the panel, and if a value is specified, also sets the associated
166
174
  * control to that value. It will also mark the control as dirty if this interaction
@@ -191,6 +199,8 @@ export declare abstract class _MatAutocompleteTriggerBase implements ControlValu
191
199
  private _getWindow;
192
200
  /** Scrolls to a particular option in the list. */
193
201
  private _scrollToOption;
202
+ /** Handles keyboard events coming from the overlay panel. */
203
+ private _handleOverlayEvents;
194
204
  static ɵfac: i0.ɵɵFactoryDeclaration<_MatAutocompleteTriggerBase, [null, null, null, null, null, null, { optional: true; }, { optional: true; host: true; }, { optional: true; }, null, { optional: true; }]>;
195
205
  static ɵdir: i0.ɵɵDirectiveDeclaration<_MatAutocompleteTriggerBase, never, never, { "autocomplete": "matAutocomplete"; "position": "matAutocompletePosition"; "connectedTo": "matAutocompleteConnectedTo"; "autocompleteAttribute": "autocomplete"; "autocompleteDisabled": "matAutocompleteDisabled"; }, {}, never>;
196
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;
@@ -166,7 +167,7 @@ $_badge-structure-emitted: false !default;
166
167
  color: theming.get-color-from-palette($primary, default-contrast);
167
168
  background: theming.get-color-from-palette($primary);
168
169
 
169
- @include a11y.high-contrast(active, off) {
170
+ @include cdk.high-contrast(active, off) {
170
171
  outline: solid 1px;
171
172
  border-radius: 0;
172
173
  }
@@ -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,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
@@ -30,10 +30,13 @@
30
30
  pointer-events: none;
31
31
 
32
32
  transition: opacity, transform 0ms cubic-bezier(0, 0, 0.2, 1);
33
- transform: scale(0);
33
+
34
+ // We use a 3d transform here in order to avoid an issue in Safari where
35
+ // the ripples aren't clipped when inside the shadow DOM (see #24028).
36
+ transform: scale3d(0, 0, 0);
34
37
 
35
38
  // In high contrast mode the ripple is opaque, causing it to obstruct the content.
36
- @include a11y.high-contrast(active, off) {
39
+ @include cdk.high-contrast(active, off) {
37
40
  display: none;
38
41
  }
39
42
  }
@@ -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
  }
@@ -29,7 +29,7 @@
29
29
  backface-visibility: $value;
30
30
  }
31
31
 
32
- @mixin private-color-adjust($value) {
32
+ @mixin color-adjust($value) {
33
33
  -webkit-print-color-adjust: $value;
34
34
  color-adjust: $value;
35
35
  }
@@ -5,7 +5,7 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- import { ElementRef, EventEmitter, NgZone, OnChanges, SimpleChanges, OnDestroy } from '@angular/core';
8
+ import { ElementRef, EventEmitter, NgZone, OnChanges, SimpleChanges, OnDestroy, AfterViewChecked } from '@angular/core';
9
9
  import * as i0 from "@angular/core";
10
10
  /** Extra CSS classes that can be associated with a calendar cell. */
11
11
  export declare type MatCalendarCellCssClasses = string | string[] | Set<string> | {
@@ -36,7 +36,7 @@ export interface MatCalendarUserEvent<D> {
36
36
  * An internal component used to display calendar data in a table.
37
37
  * @docs-private
38
38
  */
39
- export declare class MatCalendarBody implements OnChanges, OnDestroy {
39
+ export declare class MatCalendarBody implements OnChanges, OnDestroy, AfterViewChecked {
40
40
  private _elementRef;
41
41
  private _ngZone;
42
42
  /**
@@ -44,6 +44,10 @@ export declare class MatCalendarBody implements OnChanges, OnDestroy {
44
44
  * We need a flag like this, because some browsers fire focus events asynchronously.
45
45
  */
46
46
  private _skipNextFocus;
47
+ /**
48
+ * Used to focus the active cell after change detection has run.
49
+ */
50
+ private _focusActiveCellAfterViewChecked;
47
51
  /** The label for the table. (e.g. "Jan 2017"). */
48
52
  label: string;
49
53
  /** The cells to display in the table. */
@@ -60,6 +64,7 @@ export declare class MatCalendarBody implements OnChanges, OnDestroy {
60
64
  numCols: number;
61
65
  /** The cell number of the active cell in the table. */
62
66
  activeCell: number;
67
+ ngAfterViewChecked(): void;
63
68
  /** Whether a range is being selected. */
64
69
  isRange: boolean;
65
70
  /**
@@ -79,6 +84,7 @@ export declare class MatCalendarBody implements OnChanges, OnDestroy {
79
84
  readonly selectedValueChange: EventEmitter<MatCalendarUserEvent<number>>;
80
85
  /** Emits when the preview has changed as a result of a user action. */
81
86
  readonly previewChange: EventEmitter<MatCalendarUserEvent<MatCalendarCell<any> | null>>;
87
+ readonly activeDateChange: EventEmitter<MatCalendarUserEvent<number>>;
82
88
  /** The number of blank cells to put at the beginning for the first row. */
83
89
  _firstRowOffset: number;
84
90
  /** Padding for the individual date cells. */
@@ -88,6 +94,7 @@ export declare class MatCalendarBody implements OnChanges, OnDestroy {
88
94
  constructor(_elementRef: ElementRef<HTMLElement>, _ngZone: NgZone);
89
95
  /** Called when a cell is clicked. */
90
96
  _cellClicked(cell: MatCalendarCell, event: MouseEvent): void;
97
+ _emitActiveDateChange(cell: MatCalendarCell, event: FocusEvent): void;
91
98
  /** Returns whether a cell should be marked as selected. */
92
99
  _isSelected(value: number): boolean;
93
100
  ngOnChanges(changes: SimpleChanges): void;
@@ -117,6 +124,8 @@ export declare class MatCalendarBody implements OnChanges, OnDestroy {
117
124
  * Adding delay also complicates writing tests.
118
125
  */
119
126
  _focusActiveCell(movePreview?: boolean): void;
127
+ /** Focuses the active cell after change detection has run and the microtask queue is empty. */
128
+ _scheduleFocusActiveCellAfterViewChecked(): void;
120
129
  /** Gets whether a value is the start of the main range. */
121
130
  _isRangeStart(value: number): boolean;
122
131
  /** Gets whether a value is the end of the main range. */
@@ -163,5 +172,5 @@ export declare class MatCalendarBody implements OnChanges, OnDestroy {
163
172
  /** Finds the MatCalendarCell that corresponds to a DOM node. */
164
173
  private _getCellFromElement;
165
174
  static ɵfac: i0.ɵɵFactoryDeclaration<MatCalendarBody, never>;
166
- static ɵcmp: i0.ɵɵComponentDeclaration<MatCalendarBody, "[mat-calendar-body]", ["matCalendarBody"], { "label": "label"; "rows": "rows"; "todayValue": "todayValue"; "startValue": "startValue"; "endValue": "endValue"; "labelMinRequiredCells": "labelMinRequiredCells"; "numCols": "numCols"; "activeCell": "activeCell"; "isRange": "isRange"; "cellAspectRatio": "cellAspectRatio"; "comparisonStart": "comparisonStart"; "comparisonEnd": "comparisonEnd"; "previewStart": "previewStart"; "previewEnd": "previewEnd"; }, { "selectedValueChange": "selectedValueChange"; "previewChange": "previewChange"; }, never, never>;
175
+ static ɵcmp: i0.ɵɵComponentDeclaration<MatCalendarBody, "[mat-calendar-body]", ["matCalendarBody"], { "label": "label"; "rows": "rows"; "todayValue": "todayValue"; "startValue": "startValue"; "endValue": "endValue"; "labelMinRequiredCells": "labelMinRequiredCells"; "numCols": "numCols"; "activeCell": "activeCell"; "isRange": "isRange"; "cellAspectRatio": "cellAspectRatio"; "comparisonStart": "comparisonStart"; "comparisonEnd": "comparisonEnd"; "previewStart": "previewStart"; "previewEnd": "previewEnd"; }, { "selectedValueChange": "selectedValueChange"; "previewChange": "previewChange"; "activeDateChange": "activeDateChange"; }, never, never>;
167
176
  }
@@ -41,7 +41,10 @@ declare abstract class MatDateRangeInputPartBase<D> extends MatDatepickerInputBa
41
41
  private _injector;
42
42
  _parentForm: NgForm;
43
43
  _parentFormGroup: FormGroupDirective;
44
- /** @docs-private */
44
+ /**
45
+ * Form control bound to this input part.
46
+ * @docs-private
47
+ */
45
48
  ngControl: NgControl;
46
49
  /** @docs-private */
47
50
  abstract updateErrorState(): void;
@@ -85,6 +85,17 @@ export declare class MatMonthView<D> implements AfterContentInit, OnChanges, OnD
85
85
  ngOnDestroy(): void;
86
86
  /** Handles when a new date is selected. */
87
87
  _dateSelected(event: MatCalendarUserEvent<number>): void;
88
+ /**
89
+ * Takes the index of a calendar body cell wrapped in in an event as argument. For the date that
90
+ * corresponds to the given cell, set `activeDate` to that date and fire `activeDateChange` with
91
+ * that date.
92
+ *
93
+ * This fucntion is used to match each component's model of the active date with the calendar
94
+ * body cell that was focused. It updates its value of `activeDate` synchronously and updates the
95
+ * parent's value asynchonously via the `activeDateChange` event. The child component receives an
96
+ * updated value asynchronously via the `activeCell` Input.
97
+ */
98
+ _updateActiveDate(event: MatCalendarUserEvent<number>): void;
88
99
  /** Handles keydown events on the calendar body when calendar is in month view. */
89
100
  _handleCalendarBodyKeydown(event: KeyboardEvent): void;
90
101
  /** Handles keyup events on the calendar body when calendar is in month view. */
@@ -93,8 +104,15 @@ export declare class MatMonthView<D> implements AfterContentInit, OnChanges, OnD
93
104
  _init(): void;
94
105
  /** Focuses the active cell after the microtask queue is empty. */
95
106
  _focusActiveCell(movePreview?: boolean): void;
107
+ /** Focuses the active cell after change detection has run and the microtask queue is empty. */
108
+ _focusActiveCellAfterViewChecked(): void;
96
109
  /** Called when the user has activated a new cell and the preview needs to be updated. */
97
110
  _previewChanged({ event, value: cell }: MatCalendarUserEvent<MatCalendarCell<D> | null>): void;
111
+ /**
112
+ * Takes a day of the month and returns a new date in the same month and year as the currently
113
+ * active date. The returned date will have the same day of the month as the argument date.
114
+ */
115
+ private _getDateFromDayOfMonth;
98
116
  /** Initializes the weekdays. */
99
117
  private _initWeekdays;
100
118
  /** Creates MatCalendarCells for the dates in this month. */
@@ -58,6 +58,17 @@ export declare class MatMultiYearView<D> implements AfterContentInit, OnDestroy
58
58
  _init(): void;
59
59
  /** Handles when a new year is selected. */
60
60
  _yearSelected(event: MatCalendarUserEvent<number>): void;
61
+ /**
62
+ * Takes the index of a calendar body cell wrapped in in an event as argument. For the date that
63
+ * corresponds to the given cell, set `activeDate` to that date and fire `activeDateChange` with
64
+ * that date.
65
+ *
66
+ * This fucntion is used to match each component's model of the active date with the calendar
67
+ * body cell that was focused. It updates its value of `activeDate` synchronously and updates the
68
+ * parent's value asynchonously via the `activeDateChange` event. The child component receives an
69
+ * updated value asynchronously via the `activeCell` Input.
70
+ */
71
+ _updateActiveDate(event: MatCalendarUserEvent<number>): void;
61
72
  /** Handles keydown events on the calendar body when calendar is in multi-year view. */
62
73
  _handleCalendarBodyKeydown(event: KeyboardEvent): void;
63
74
  /** Handles keyup events on the calendar body when calendar is in multi-year view. */
@@ -65,6 +76,13 @@ export declare class MatMultiYearView<D> implements AfterContentInit, OnDestroy
65
76
  _getActiveCell(): number;
66
77
  /** Focuses the active cell after the microtask queue is empty. */
67
78
  _focusActiveCell(): void;
79
+ /** Focuses the active cell after change detection has run and the microtask queue is empty. */
80
+ _focusActiveCellAfterViewChecked(): void;
81
+ /**
82
+ * Takes a year and returns a new date on the same day and month as the currently active date
83
+ * The returned date will have the same year as the argument date.
84
+ */
85
+ private _getDateFromYear;
68
86
  /** Creates an MatCalendarCell for the given year. */
69
87
  private _createCellForYear;
70
88
  /** Whether the given year is enabled. */
@@ -60,6 +60,17 @@ export declare class MatYearView<D> implements AfterContentInit, OnDestroy {
60
60
  ngOnDestroy(): void;
61
61
  /** Handles when a new month is selected. */
62
62
  _monthSelected(event: MatCalendarUserEvent<number>): void;
63
+ /**
64
+ * Takes the index of a calendar body cell wrapped in in an event as argument. For the date that
65
+ * corresponds to the given cell, set `activeDate` to that date and fire `activeDateChange` with
66
+ * that date.
67
+ *
68
+ * This fucntion is used to match each component's model of the active date with the calendar
69
+ * body cell that was focused. It updates its value of `activeDate` synchronously and updates the
70
+ * parent's value asynchonously via the `activeDateChange` event. The child component receives an
71
+ * updated value asynchronously via the `activeCell` Input.
72
+ */
73
+ _updateActiveDate(event: MatCalendarUserEvent<number>): void;
63
74
  /** Handles keydown events on the calendar body when calendar is in year view. */
64
75
  _handleCalendarBodyKeydown(event: KeyboardEvent): void;
65
76
  /** Handles keyup events on the calendar body when calendar is in year view. */
@@ -68,11 +79,18 @@ export declare class MatYearView<D> implements AfterContentInit, OnDestroy {
68
79
  _init(): void;
69
80
  /** Focuses the active cell after the microtask queue is empty. */
70
81
  _focusActiveCell(): void;
82
+ /** Schedules the matCalendarBody to focus the active cell after change detection has run */
83
+ _focusActiveCellAfterViewChecked(): void;
71
84
  /**
72
85
  * Gets the month in this year that the given Date falls on.
73
86
  * Returns null if the given Date is in another year.
74
87
  */
75
88
  private _getMonthInCurrentYear;
89
+ /**
90
+ * Takes a month and returns a new date in the same day and year as the currently active date.
91
+ * The returned date will have the same month as the argument date.
92
+ */
93
+ private _getDateFromMonth;
76
94
  /** Creates an MatCalendarCell for the given month. */
77
95
  private _createCellForMonth;
78
96
  /** Whether the given month is enabled. */
@@ -6,6 +6,16 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  import { AnimationTriggerMetadata } from '@angular/animations';
9
+ /**
10
+ * Default parameters for the animation for backwards compatibility.
11
+ * @docs-private
12
+ */
13
+ export declare const defaultParams: {
14
+ params: {
15
+ enterAnimationDuration: string;
16
+ exitAnimationDuration: string;
17
+ };
18
+ };
9
19
  /**
10
20
  * Animations used by MatDialog.
11
21
  * @docs-private
@@ -5,7 +5,7 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- import { ViewContainerRef, ComponentFactoryResolver } from '@angular/core';
8
+ import { ViewContainerRef, ComponentFactoryResolver, Injector } from '@angular/core';
9
9
  import { Direction } from '@angular/cdk/bidi';
10
10
  import { ScrollStrategy } from '@angular/cdk/overlay';
11
11
  /** Options for where to set focus to automatically on dialog open */
@@ -34,6 +34,11 @@ export declare class MatDialogConfig<D = any> {
34
34
  * content will be rendered.
35
35
  */
36
36
  viewContainerRef?: ViewContainerRef;
37
+ /**
38
+ * Injector used for the instantiation of the component to be attached. If provided,
39
+ * takes precedence over the injector indirectly provided by `ViewContainerRef`.
40
+ */
41
+ injector?: Injector;
37
42
  /** ID for the dialog. If omitted, a unique one will be generated. */
38
43
  id?: string;
39
44
  /** The ARIA role of the dialog element. */
@@ -93,4 +98,8 @@ export declare class MatDialogConfig<D = any> {
93
98
  closeOnNavigation?: boolean;
94
99
  /** Alternate `ComponentFactoryResolver` to use when resolving the associated component. */
95
100
  componentFactoryResolver?: ComponentFactoryResolver;
101
+ /** Duration of the enter animation. Has to be a valid CSS value (e.g. 100ms). */
102
+ enterAnimationDuration?: string;
103
+ /** Duration of the exit animation. Has to be a valid CSS value (e.g. 50ms). */
104
+ exitAnimationDuration?: string;
96
105
  }