@angular/material 13.0.0-next.8 → 13.0.0-rc.3

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 (838) hide show
  1. package/autocomplete/autocomplete_public_index.d.ts +4 -0
  2. package/autocomplete/index.d.ts +5 -1
  3. package/autocomplete/package.json +2 -2
  4. package/autocomplete/testing/autocomplete-harness.d.ts +4 -4
  5. package/badge/badge_public_index.d.ts +4 -0
  6. package/badge/index.d.ts +5 -1
  7. package/badge/package.json +2 -2
  8. package/bottom-sheet/bottom-sheet_public_index.d.ts +4 -0
  9. package/bottom-sheet/index.d.ts +5 -1
  10. package/bottom-sheet/package.json +2 -2
  11. package/button/button_public_index.d.ts +4 -0
  12. package/button/index.d.ts +5 -1
  13. package/button/package.json +2 -2
  14. package/button-toggle/button-toggle_public_index.d.ts +4 -0
  15. package/button-toggle/index.d.ts +5 -1
  16. package/button-toggle/package.json +2 -2
  17. package/card/card_public_index.d.ts +4 -0
  18. package/card/index.d.ts +5 -1
  19. package/card/package.json +2 -2
  20. package/checkbox/checkbox_public_index.d.ts +4 -0
  21. package/checkbox/index.d.ts +5 -1
  22. package/checkbox/package.json +2 -2
  23. package/chips/chips_public_index.d.ts +4 -0
  24. package/chips/index.d.ts +5 -1
  25. package/chips/package.json +2 -2
  26. package/core/common-behaviors/index.d.ts +1 -1
  27. package/core/core_public_index.d.ts +4 -0
  28. package/core/index.d.ts +5 -1
  29. package/core/package.json +2 -2
  30. package/datepicker/datepicker_public_index.d.ts +4 -0
  31. package/datepicker/index.d.ts +5 -1
  32. package/datepicker/package.json +2 -2
  33. package/dialog/dialog_public_index.d.ts +4 -0
  34. package/dialog/index.d.ts +5 -1
  35. package/dialog/package.json +2 -2
  36. package/divider/divider_public_index.d.ts +4 -0
  37. package/divider/index.d.ts +5 -1
  38. package/divider/package.json +2 -2
  39. package/esm2020/autocomplete/autocomplete-module.mjs +6 -19
  40. package/esm2020/autocomplete/autocomplete-origin.mjs +7 -7
  41. package/esm2020/autocomplete/autocomplete-trigger.mjs +36 -31
  42. package/esm2020/autocomplete/autocomplete.mjs +15 -15
  43. package/esm2020/autocomplete/autocomplete_public_index.mjs +5 -0
  44. package/esm2020/autocomplete/index.mjs +6 -2
  45. package/esm2020/autocomplete/testing/autocomplete-harness.mjs +7 -8
  46. package/esm2020/badge/badge-module.mjs +6 -13
  47. package/esm2020/badge/badge.mjs +16 -8
  48. package/esm2020/badge/badge_public_index.mjs +5 -0
  49. package/esm2020/badge/index.mjs +6 -2
  50. package/esm2020/badge/testing/badge-harness.mjs +2 -3
  51. package/esm2020/bottom-sheet/bottom-sheet-animations.mjs +2 -2
  52. package/esm2020/bottom-sheet/bottom-sheet-container.mjs +8 -6
  53. package/esm2020/bottom-sheet/bottom-sheet-module.mjs +6 -16
  54. package/esm2020/bottom-sheet/bottom-sheet-ref.mjs +10 -4
  55. package/esm2020/bottom-sheet/bottom-sheet.mjs +12 -11
  56. package/esm2020/bottom-sheet/bottom-sheet_public_index.mjs +5 -0
  57. package/esm2020/bottom-sheet/index.mjs +6 -2
  58. package/esm2020/bottom-sheet/testing/bottom-sheet-harness.mjs +1 -1
  59. package/esm2020/button/button-module.mjs +8 -25
  60. package/esm2020/button/button.mjs +7 -7
  61. package/esm2020/button/button_public_index.mjs +5 -0
  62. package/esm2020/button/index.mjs +6 -2
  63. package/esm2020/button/public-api.mjs +1 -1
  64. package/esm2020/button/testing/button-harness.mjs +2 -3
  65. package/esm2020/button-toggle/button-toggle-module.mjs +5 -5
  66. package/esm2020/button-toggle/button-toggle.mjs +31 -19
  67. package/esm2020/button-toggle/button-toggle_public_index.mjs +5 -0
  68. package/esm2020/button-toggle/index.mjs +6 -2
  69. package/esm2020/button-toggle/public-api.mjs +1 -1
  70. package/esm2020/button-toggle/testing/button-toggle-group-harness-filters.mjs +1 -1
  71. package/esm2020/button-toggle/testing/button-toggle-group-harness.mjs +3 -3
  72. package/esm2020/button-toggle/testing/button-toggle-harness.mjs +2 -2
  73. package/esm2020/card/card-module.mjs +32 -10
  74. package/esm2020/card/card.mjs +56 -56
  75. package/esm2020/card/card_public_index.mjs +5 -0
  76. package/esm2020/card/index.mjs +6 -2
  77. package/esm2020/card/public-api.mjs +1 -1
  78. package/esm2020/card/testing/card-harness.mjs +1 -1
  79. package/esm2020/checkbox/checkbox-config.mjs +2 -2
  80. package/esm2020/checkbox/checkbox-module.mjs +10 -16
  81. package/esm2020/checkbox/checkbox-required-validator.mjs +7 -7
  82. package/esm2020/checkbox/checkbox.mjs +35 -17
  83. package/esm2020/checkbox/checkbox_public_index.mjs +5 -0
  84. package/esm2020/checkbox/index.mjs +6 -2
  85. package/esm2020/checkbox/public-api.mjs +1 -1
  86. package/esm2020/checkbox/testing/checkbox-harness.mjs +3 -3
  87. package/esm2020/chips/chip-default-options.mjs +1 -1
  88. package/esm2020/chips/chip-input.mjs +21 -11
  89. package/esm2020/chips/chip-list.mjs +32 -17
  90. package/esm2020/chips/chip-text-control.mjs +1 -1
  91. package/esm2020/chips/chip.mjs +40 -31
  92. package/esm2020/chips/chips-module.mjs +12 -12
  93. package/esm2020/chips/chips_public_index.mjs +5 -0
  94. package/esm2020/chips/index.mjs +6 -2
  95. package/esm2020/chips/testing/chip-harness.mjs +2 -2
  96. package/esm2020/chips/testing/chip-input-harness.mjs +2 -2
  97. package/esm2020/chips/testing/chip-list-harness.mjs +5 -5
  98. package/esm2020/chips/testing/chip-listbox-harness.mjs +1 -1
  99. package/esm2020/chips/testing/chip-option-harness.mjs +1 -1
  100. package/esm2020/core/animation/animation.mjs +1 -1
  101. package/esm2020/core/common-behaviors/color.mjs +4 -2
  102. package/esm2020/core/common-behaviors/common-module.mjs +14 -9
  103. package/esm2020/core/common-behaviors/constructor.mjs +1 -1
  104. package/esm2020/core/common-behaviors/disable-ripple.mjs +7 -3
  105. package/esm2020/core/common-behaviors/disabled.mjs +7 -3
  106. package/esm2020/core/common-behaviors/error-state.mjs +1 -1
  107. package/esm2020/core/common-behaviors/index.mjs +1 -1
  108. package/esm2020/core/common-behaviors/initialized.mjs +1 -1
  109. package/esm2020/core/common-behaviors/tabindex.mjs +4 -2
  110. package/esm2020/core/core_public_index.mjs +5 -0
  111. package/esm2020/core/datetime/date-adapter.mjs +4 -4
  112. package/esm2020/core/datetime/date-formats.mjs +1 -1
  113. package/esm2020/core/datetime/index.mjs +10 -14
  114. package/esm2020/core/datetime/native-date-adapter.mjs +6 -6
  115. package/esm2020/core/datetime/native-date-formats.mjs +2 -2
  116. package/esm2020/core/error/error-options.mjs +7 -7
  117. package/esm2020/core/index.mjs +6 -2
  118. package/esm2020/core/line/line.mjs +10 -10
  119. package/esm2020/core/option/index.mjs +6 -6
  120. package/esm2020/core/option/optgroup.mjs +8 -8
  121. package/esm2020/core/option/option-parent.mjs +1 -1
  122. package/esm2020/core/option/option.mjs +22 -12
  123. package/esm2020/core/ripple/index.mjs +5 -5
  124. package/esm2020/core/ripple/ripple-ref.mjs +1 -1
  125. package/esm2020/core/ripple/ripple-renderer.mjs +8 -8
  126. package/esm2020/core/ripple/ripple.mjs +13 -9
  127. package/esm2020/core/selection/index.mjs +6 -6
  128. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  129. package/esm2020/core/testing/optgroup-harness.mjs +2 -3
  130. package/esm2020/core/testing/option-harness.mjs +2 -2
  131. package/esm2020/core/version.mjs +1 -1
  132. package/esm2020/datepicker/calendar-body.mjs +11 -7
  133. package/esm2020/datepicker/calendar.mjs +46 -32
  134. package/esm2020/datepicker/date-range-input-parts.mjs +31 -28
  135. package/esm2020/datepicker/date-range-input.mjs +26 -15
  136. package/esm2020/datepicker/date-range-picker.mjs +5 -5
  137. package/esm2020/datepicker/date-range-selection-strategy.mjs +4 -4
  138. package/esm2020/datepicker/date-selection-model.mjs +15 -14
  139. package/esm2020/datepicker/datepicker-actions.mjs +13 -13
  140. package/esm2020/datepicker/datepicker-animations.mjs +6 -6
  141. package/esm2020/datepicker/datepicker-base.mjs +42 -39
  142. package/esm2020/datepicker/datepicker-errors.mjs +1 -1
  143. package/esm2020/datepicker/datepicker-input-base.mjs +23 -18
  144. package/esm2020/datepicker/datepicker-input.mjs +18 -12
  145. package/esm2020/datepicker/datepicker-intl.mjs +4 -4
  146. package/esm2020/datepicker/datepicker-module.mjs +9 -18
  147. package/esm2020/datepicker/datepicker-toggle.mjs +15 -14
  148. package/esm2020/datepicker/datepicker.mjs +5 -5
  149. package/esm2020/datepicker/datepicker_public_index.mjs +5 -0
  150. package/esm2020/datepicker/index.mjs +6 -2
  151. package/esm2020/datepicker/month-view.mjs +40 -26
  152. package/esm2020/datepicker/multi-year-view.mjs +29 -19
  153. package/esm2020/datepicker/testing/calendar-cell-harness.mjs +1 -1
  154. package/esm2020/datepicker/testing/calendar-harness.mjs +1 -1
  155. package/esm2020/datepicker/testing/date-range-input-harness.mjs +4 -5
  156. package/esm2020/datepicker/testing/datepicker-input-harness-base.mjs +4 -4
  157. package/esm2020/datepicker/testing/datepicker-input-harness.mjs +1 -1
  158. package/esm2020/datepicker/testing/datepicker-toggle-harness.mjs +1 -1
  159. package/esm2020/datepicker/testing/datepicker-trigger-harness-base.mjs +2 -2
  160. package/esm2020/datepicker/year-view.mjs +32 -19
  161. package/esm2020/dialog/dialog-animations.mjs +2 -2
  162. package/esm2020/dialog/dialog-config.mjs +1 -1
  163. package/esm2020/dialog/dialog-container.mjs +14 -11
  164. package/esm2020/dialog/dialog-content-directives.mjs +16 -16
  165. package/esm2020/dialog/dialog-module.mjs +8 -24
  166. package/esm2020/dialog/dialog-ref.mjs +10 -5
  167. package/esm2020/dialog/dialog.mjs +25 -22
  168. package/esm2020/dialog/dialog_public_index.mjs +5 -0
  169. package/esm2020/dialog/index.mjs +6 -2
  170. package/esm2020/dialog/testing/dialog-harness.mjs +3 -3
  171. package/esm2020/divider/divider-module.mjs +5 -5
  172. package/esm2020/divider/divider.mjs +17 -9
  173. package/esm2020/divider/divider_public_index.mjs +5 -0
  174. package/esm2020/divider/index.mjs +6 -2
  175. package/esm2020/divider/testing/divider-harness-filters.mjs +1 -1
  176. package/esm2020/divider/testing/divider-harness.mjs +1 -1
  177. package/esm2020/expansion/accordion-base.mjs +1 -1
  178. package/esm2020/expansion/accordion.mjs +21 -13
  179. package/esm2020/expansion/expansion-animations.mjs +2 -2
  180. package/esm2020/expansion/expansion-module.mjs +5 -5
  181. package/esm2020/expansion/expansion-panel-content.mjs +5 -5
  182. package/esm2020/expansion/expansion-panel-header.mjs +21 -29
  183. package/esm2020/expansion/expansion-panel.mjs +16 -12
  184. package/esm2020/expansion/expansion_public_index.mjs +5 -0
  185. package/esm2020/expansion/index.mjs +6 -2
  186. package/esm2020/expansion/testing/accordion-harness.mjs +1 -1
  187. package/esm2020/expansion/testing/expansion-harness-filters.mjs +1 -1
  188. package/esm2020/expansion/testing/expansion-harness.mjs +3 -3
  189. package/esm2020/form-field/error.mjs +4 -4
  190. package/esm2020/form-field/form-field-animations.mjs +2 -2
  191. package/esm2020/form-field/form-field-control.mjs +4 -4
  192. package/esm2020/form-field/form-field-module.mjs +7 -31
  193. package/esm2020/form-field/form-field.mjs +47 -35
  194. package/esm2020/form-field/form-field_public_index.mjs +5 -0
  195. package/esm2020/form-field/hint.mjs +4 -4
  196. package/esm2020/form-field/index.mjs +6 -2
  197. package/esm2020/form-field/label.mjs +5 -5
  198. package/esm2020/form-field/placeholder.mjs +5 -5
  199. package/esm2020/form-field/prefix.mjs +4 -4
  200. package/esm2020/form-field/suffix.mjs +4 -4
  201. package/esm2020/form-field/testing/form-field-harness.mjs +12 -9
  202. package/esm2020/grid-list/grid-list-module.mjs +8 -8
  203. package/esm2020/grid-list/grid-list.mjs +26 -15
  204. package/esm2020/grid-list/grid-list_public_index.mjs +5 -0
  205. package/esm2020/grid-list/grid-tile.mjs +32 -24
  206. package/esm2020/grid-list/index.mjs +6 -2
  207. package/esm2020/grid-list/testing/grid-list-harness-filters.mjs +1 -1
  208. package/esm2020/grid-list/testing/grid-list-harness.mjs +9 -5
  209. package/esm2020/grid-list/testing/grid-tile-harness.mjs +1 -1
  210. package/esm2020/grid-list/tile-coordinator.mjs +5 -3
  211. package/esm2020/grid-list/tile-styler.mjs +7 -6
  212. package/esm2020/icon/fake-svgs.mjs +2 -2
  213. package/esm2020/icon/icon-module.mjs +5 -5
  214. package/esm2020/icon/icon-registry.mjs +9 -9
  215. package/esm2020/icon/icon.mjs +30 -20
  216. package/esm2020/icon/icon_public_index.mjs +5 -0
  217. package/esm2020/icon/index.mjs +6 -2
  218. package/esm2020/icon/public-api.mjs +1 -1
  219. package/esm2020/icon/testing/fake-icon-registry.mjs +9 -9
  220. package/esm2020/icon/testing/icon-harness-filters.mjs +1 -1
  221. package/esm2020/icon/testing/icon-harness.mjs +2 -2
  222. package/esm2020/icon/testing/index.mjs +6 -2
  223. package/esm2020/icon/testing/testing_public_index.mjs +5 -0
  224. package/esm2020/icon/trusted-types.mjs +1 -1
  225. package/esm2020/input/index.mjs +6 -2
  226. package/esm2020/input/input-module.mjs +6 -16
  227. package/esm2020/input/input-value-accessor.mjs +1 -1
  228. package/esm2020/input/input.mjs +52 -25
  229. package/esm2020/input/input_public_index.mjs +5 -0
  230. package/esm2020/input/public-api.mjs +1 -1
  231. package/esm2020/input/testing/input-harness.mjs +6 -6
  232. package/esm2020/input/testing/native-option-harness.mjs +3 -3
  233. package/esm2020/input/testing/native-select-harness.mjs +4 -4
  234. package/esm2020/list/index.mjs +6 -2
  235. package/esm2020/list/list-module.mjs +7 -7
  236. package/esm2020/list/list.mjs +28 -27
  237. package/esm2020/list/list_public_index.mjs +5 -0
  238. package/esm2020/list/public-api.mjs +1 -1
  239. package/esm2020/list/selection-list.mjs +40 -21
  240. package/esm2020/list/testing/action-list-harness.mjs +1 -1
  241. package/esm2020/list/testing/list-harness-base.mjs +12 -5
  242. package/esm2020/list/testing/list-harness.mjs +1 -1
  243. package/esm2020/list/testing/list-item-harness-base.mjs +5 -7
  244. package/esm2020/list/testing/nav-list-harness.mjs +2 -3
  245. package/esm2020/list/testing/selection-list-harness.mjs +9 -9
  246. package/esm2020/menu/index.mjs +6 -2
  247. package/esm2020/menu/menu-animations.mjs +7 -7
  248. package/esm2020/menu/menu-content.mjs +7 -7
  249. package/esm2020/menu/menu-errors.mjs +1 -1
  250. package/esm2020/menu/menu-item.mjs +4 -4
  251. package/esm2020/menu/menu-module.mjs +8 -21
  252. package/esm2020/menu/menu-panel.mjs +1 -1
  253. package/esm2020/menu/menu-trigger.mjs +31 -22
  254. package/esm2020/menu/menu.mjs +33 -30
  255. package/esm2020/menu/menu_public_index.mjs +5 -0
  256. package/esm2020/menu/public-api.mjs +2 -2
  257. package/esm2020/menu/testing/menu-harness.mjs +4 -5
  258. package/esm2020/paginator/index.mjs +6 -2
  259. package/esm2020/paginator/paginator-intl.mjs +6 -8
  260. package/esm2020/paginator/paginator-module.mjs +6 -22
  261. package/esm2020/paginator/paginator.mjs +30 -19
  262. package/esm2020/paginator/paginator_public_index.mjs +5 -0
  263. package/esm2020/paginator/public-api.mjs +1 -1
  264. package/esm2020/paginator/testing/paginator-harness-filters.mjs +1 -1
  265. package/esm2020/paginator/testing/paginator-harness.mjs +2 -2
  266. package/esm2020/progress-bar/index.mjs +6 -2
  267. package/esm2020/progress-bar/progress-bar-module.mjs +5 -5
  268. package/esm2020/progress-bar/progress-bar.mjs +23 -18
  269. package/esm2020/progress-bar/progress-bar_public_index.mjs +5 -0
  270. package/esm2020/progress-bar/public-api.mjs +1 -1
  271. package/esm2020/progress-bar/testing/progress-bar-harness.mjs +1 -1
  272. package/esm2020/progress-spinner/index.mjs +6 -2
  273. package/esm2020/progress-spinner/progress-spinner-module.mjs +7 -17
  274. package/esm2020/progress-spinner/progress-spinner.mjs +16 -14
  275. package/esm2020/progress-spinner/progress-spinner_public_index.mjs +5 -0
  276. package/esm2020/progress-spinner/testing/progress-spinner-harness.mjs +2 -2
  277. package/esm2020/radio/index.mjs +6 -2
  278. package/esm2020/radio/public-api.mjs +1 -1
  279. package/esm2020/radio/radio-module.mjs +5 -5
  280. package/esm2020/radio/radio.mjs +52 -36
  281. package/esm2020/radio/radio_public_index.mjs +5 -0
  282. package/esm2020/radio/testing/radio-harness.mjs +3 -4
  283. package/esm2020/select/index.mjs +6 -2
  284. package/esm2020/select/public-api.mjs +2 -2
  285. package/esm2020/select/select-animations.mjs +7 -7
  286. package/esm2020/select/select-module.mjs +8 -21
  287. package/esm2020/select/select.mjs +70 -53
  288. package/esm2020/select/select_public_index.mjs +5 -0
  289. package/esm2020/select/testing/select-harness.mjs +9 -6
  290. package/esm2020/sidenav/drawer-animations.mjs +3 -3
  291. package/esm2020/sidenav/drawer.mjs +79 -43
  292. package/esm2020/sidenav/index.mjs +6 -2
  293. package/esm2020/sidenav/sidenav-module.mjs +7 -20
  294. package/esm2020/sidenav/sidenav.mjs +39 -23
  295. package/esm2020/sidenav/sidenav_public_index.mjs +5 -0
  296. package/esm2020/sidenav/testing/drawer-container-harness.mjs +1 -1
  297. package/esm2020/sidenav/testing/drawer-content-harness.mjs +1 -1
  298. package/esm2020/sidenav/testing/drawer-harness.mjs +2 -3
  299. package/esm2020/sidenav/testing/sidenav-container-harness.mjs +1 -1
  300. package/esm2020/sidenav/testing/sidenav-content-harness.mjs +1 -1
  301. package/esm2020/sidenav/testing/sidenav-harness.mjs +2 -3
  302. package/esm2020/slide-toggle/index.mjs +6 -2
  303. package/esm2020/slide-toggle/slide-toggle-config.mjs +2 -2
  304. package/esm2020/slide-toggle/slide-toggle-module.mjs +11 -16
  305. package/esm2020/slide-toggle/slide-toggle-required-validator.mjs +7 -7
  306. package/esm2020/slide-toggle/slide-toggle.mjs +19 -13
  307. package/esm2020/slide-toggle/slide-toggle_public_index.mjs +5 -0
  308. package/esm2020/slide-toggle/testing/slide-toggle-harness.mjs +3 -3
  309. package/esm2020/slider/index.mjs +6 -2
  310. package/esm2020/slider/public-api.mjs +1 -1
  311. package/esm2020/slider/slider-module.mjs +5 -5
  312. package/esm2020/slider/slider.mjs +52 -33
  313. package/esm2020/slider/slider_public_index.mjs +5 -0
  314. package/esm2020/slider/testing/slider-harness.mjs +6 -2
  315. package/esm2020/snack-bar/index.mjs +6 -2
  316. package/esm2020/snack-bar/simple-snack-bar.mjs +4 -4
  317. package/esm2020/snack-bar/snack-bar-animations.mjs +3 -3
  318. package/esm2020/snack-bar/snack-bar-container.mjs +5 -5
  319. package/esm2020/snack-bar/snack-bar-module.mjs +6 -22
  320. package/esm2020/snack-bar/snack-bar-ref.mjs +1 -1
  321. package/esm2020/snack-bar/snack-bar.mjs +14 -11
  322. package/esm2020/snack-bar/snack-bar_public_index.mjs +5 -0
  323. package/esm2020/snack-bar/testing/snack-bar-harness.mjs +5 -6
  324. package/esm2020/sort/index.mjs +6 -2
  325. package/esm2020/sort/sort-animations.mjs +11 -26
  326. package/esm2020/sort/sort-header-intl.mjs +5 -7
  327. package/esm2020/sort/sort-header.mjs +74 -34
  328. package/esm2020/sort/sort-module.mjs +6 -6
  329. package/esm2020/sort/sort.mjs +19 -12
  330. package/esm2020/sort/sort_public_index.mjs +5 -0
  331. package/esm2020/sort/testing/sort-harness-filters.mjs +1 -1
  332. package/esm2020/sort/testing/sort-harness.mjs +1 -1
  333. package/esm2020/sort/testing/sort-header-harness.mjs +1 -1
  334. package/esm2020/stepper/index.mjs +6 -2
  335. package/esm2020/stepper/step-content.mjs +5 -5
  336. package/esm2020/stepper/step-header.mjs +5 -5
  337. package/esm2020/stepper/step-label.mjs +4 -4
  338. package/esm2020/stepper/stepper-animations.mjs +4 -4
  339. package/esm2020/stepper/stepper-button.mjs +9 -9
  340. package/esm2020/stepper/stepper-icon.mjs +4 -4
  341. package/esm2020/stepper/stepper-intl.mjs +5 -5
  342. package/esm2020/stepper/stepper-module.mjs +5 -5
  343. package/esm2020/stepper/stepper.mjs +25 -21
  344. package/esm2020/stepper/stepper_public_index.mjs +5 -0
  345. package/esm2020/stepper/testing/step-harness-filters.mjs +1 -1
  346. package/esm2020/stepper/testing/step-harness.mjs +1 -1
  347. package/esm2020/stepper/testing/stepper-button-harnesses.mjs +3 -5
  348. package/esm2020/stepper/testing/stepper-harness.mjs +5 -5
  349. package/esm2020/table/cell.mjs +33 -29
  350. package/esm2020/table/index.mjs +6 -2
  351. package/esm2020/table/row.mjs +23 -23
  352. package/esm2020/table/table-data-source.mjs +30 -21
  353. package/esm2020/table/table-module.mjs +8 -15
  354. package/esm2020/table/table.mjs +10 -14
  355. package/esm2020/table/table_public_index.mjs +5 -0
  356. package/esm2020/table/testing/cell-harness.mjs +6 -3
  357. package/esm2020/table/testing/row-harness.mjs +2 -2
  358. package/esm2020/table/testing/table-harness-filters.mjs +1 -1
  359. package/esm2020/table/testing/table-harness.mjs +3 -3
  360. package/esm2020/table/text-column.mjs +4 -4
  361. package/esm2020/tabs/index.mjs +6 -2
  362. package/esm2020/tabs/ink-bar.mjs +5 -5
  363. package/esm2020/tabs/paginated-tab-header.mjs +19 -12
  364. package/esm2020/tabs/public-api.mjs +2 -2
  365. package/esm2020/tabs/tab-body.mjs +16 -16
  366. package/esm2020/tabs/tab-content.mjs +5 -6
  367. package/esm2020/tabs/tab-group.mjs +48 -33
  368. package/esm2020/tabs/tab-header.mjs +13 -9
  369. package/esm2020/tabs/tab-label-wrapper.mjs +5 -5
  370. package/esm2020/tabs/tab-label.mjs +4 -4
  371. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +31 -21
  372. package/esm2020/tabs/tab.mjs +10 -6
  373. package/esm2020/tabs/tabs-animations.mjs +5 -5
  374. package/esm2020/tabs/tabs-module.mjs +5 -5
  375. package/esm2020/tabs/tabs_public_index.mjs +5 -0
  376. package/esm2020/tabs/testing/tab-group-harness.mjs +2 -3
  377. package/esm2020/tabs/testing/tab-harness.mjs +2 -3
  378. package/esm2020/tabs/testing/tab-link-harness.mjs +2 -3
  379. package/esm2020/toolbar/index.mjs +6 -2
  380. package/esm2020/toolbar/public-api.mjs +1 -1
  381. package/esm2020/toolbar/testing/toolbar-harness.mjs +3 -4
  382. package/esm2020/toolbar/toolbar-module.mjs +5 -5
  383. package/esm2020/toolbar/toolbar.mjs +7 -7
  384. package/esm2020/toolbar/toolbar_public_index.mjs +5 -0
  385. package/esm2020/tooltip/index.mjs +6 -2
  386. package/esm2020/tooltip/tooltip-animations.mjs +3 -3
  387. package/esm2020/tooltip/tooltip-module.mjs +7 -20
  388. package/esm2020/tooltip/tooltip.mjs +67 -42
  389. package/esm2020/tooltip/tooltip_public_index.mjs +5 -0
  390. package/esm2020/tree/data-source/flat-data-source.mjs +4 -2
  391. package/esm2020/tree/data-source/nested-data-source.mjs +8 -5
  392. package/esm2020/tree/index.mjs +6 -2
  393. package/esm2020/tree/node.mjs +26 -22
  394. package/esm2020/tree/outlet.mjs +14 -10
  395. package/esm2020/tree/padding.mjs +17 -9
  396. package/esm2020/tree/public-api.mjs +1 -1
  397. package/esm2020/tree/testing/node-harness.mjs +1 -1
  398. package/esm2020/tree/testing/tree-harness-filters.mjs +1 -1
  399. package/esm2020/tree/testing/tree-harness.mjs +2 -2
  400. package/esm2020/tree/toggle.mjs +8 -6
  401. package/esm2020/tree/tree-module.mjs +6 -6
  402. package/esm2020/tree/tree.mjs +4 -4
  403. package/esm2020/tree/tree_public_index.mjs +5 -0
  404. package/expansion/expansion_public_index.d.ts +4 -0
  405. package/expansion/index.d.ts +5 -1
  406. package/expansion/package.json +2 -2
  407. package/fesm2015/autocomplete/testing.mjs +2 -3
  408. package/fesm2015/autocomplete/testing.mjs.map +1 -1
  409. package/fesm2015/autocomplete.mjs +67 -67
  410. package/fesm2015/autocomplete.mjs.map +1 -1
  411. package/fesm2015/badge/testing.mjs +1 -2
  412. package/fesm2015/badge/testing.mjs.map +1 -1
  413. package/fesm2015/badge.mjs +28 -19
  414. package/fesm2015/badge.mjs.map +1 -1
  415. package/fesm2015/bottom-sheet/testing.mjs.map +1 -1
  416. package/fesm2015/bottom-sheet.mjs +41 -34
  417. package/fesm2015/bottom-sheet.mjs.map +1 -1
  418. package/fesm2015/button/testing.mjs +1 -2
  419. package/fesm2015/button/testing.mjs.map +1 -1
  420. package/fesm2015/button-toggle/testing.mjs.map +1 -1
  421. package/fesm2015/button-toggle.mjs +41 -21
  422. package/fesm2015/button-toggle.mjs.map +1 -1
  423. package/fesm2015/button.mjs +21 -30
  424. package/fesm2015/button.mjs.map +1 -1
  425. package/fesm2015/card/testing.mjs.map +1 -1
  426. package/fesm2015/card.mjs +94 -64
  427. package/fesm2015/card.mjs.map +1 -1
  428. package/fesm2015/checkbox/testing.mjs +2 -2
  429. package/fesm2015/checkbox/testing.mjs.map +1 -1
  430. package/fesm2015/checkbox.mjs +56 -36
  431. package/fesm2015/checkbox.mjs.map +1 -1
  432. package/fesm2015/chips/testing.mjs +2 -2
  433. package/fesm2015/chips/testing.mjs.map +1 -1
  434. package/fesm2015/chips.mjs +107 -65
  435. package/fesm2015/chips.mjs.map +1 -1
  436. package/fesm2015/core/testing.mjs +1 -2
  437. package/fesm2015/core/testing.mjs.map +1 -1
  438. package/fesm2015/core.mjs +134 -99
  439. package/fesm2015/core.mjs.map +1 -1
  440. package/fesm2015/datepicker/testing.mjs +5 -6
  441. package/fesm2015/datepicker/testing.mjs.map +1 -1
  442. package/fesm2015/datepicker.mjs +355 -271
  443. package/fesm2015/datepicker.mjs.map +1 -1
  444. package/fesm2015/dialog/testing.mjs +2 -2
  445. package/fesm2015/dialog/testing.mjs.map +1 -1
  446. package/fesm2015/dialog.mjs +75 -72
  447. package/fesm2015/dialog.mjs.map +1 -1
  448. package/fesm2015/divider/testing.mjs.map +1 -1
  449. package/fesm2015/divider.mjs +28 -12
  450. package/fesm2015/divider.mjs.map +1 -1
  451. package/fesm2015/expansion/testing.mjs.map +1 -1
  452. package/fesm2015/expansion.mjs +71 -59
  453. package/fesm2015/expansion.mjs.map +1 -1
  454. package/fesm2015/form-field/testing.mjs +5 -2
  455. package/fesm2015/form-field/testing.mjs.map +1 -1
  456. package/fesm2015/form-field.mjs +83 -87
  457. package/fesm2015/form-field.mjs.map +1 -1
  458. package/fesm2015/grid-list/testing.mjs +8 -4
  459. package/fesm2015/grid-list/testing.mjs.map +1 -1
  460. package/fesm2015/grid-list.mjs +80 -50
  461. package/fesm2015/grid-list.mjs.map +1 -1
  462. package/fesm2015/icon/testing.mjs +16 -8
  463. package/fesm2015/icon/testing.mjs.map +1 -1
  464. package/fesm2015/icon.mjs +49 -31
  465. package/fesm2015/icon.mjs.map +1 -1
  466. package/fesm2015/input/testing.mjs +8 -8
  467. package/fesm2015/input/testing.mjs.map +1 -1
  468. package/fesm2015/input.mjs +65 -38
  469. package/fesm2015/input.mjs.map +1 -1
  470. package/fesm2015/list/testing.mjs +17 -13
  471. package/fesm2015/list/testing.mjs.map +1 -1
  472. package/fesm2015/list.mjs +77 -50
  473. package/fesm2015/list.mjs.map +1 -1
  474. package/fesm2015/menu/testing.mjs +1 -2
  475. package/fesm2015/menu/testing.mjs.map +1 -1
  476. package/fesm2015/menu.mjs +92 -85
  477. package/fesm2015/menu.mjs.map +1 -1
  478. package/fesm2015/paginator/testing.mjs +1 -1
  479. package/fesm2015/paginator/testing.mjs.map +1 -1
  480. package/fesm2015/paginator.mjs +46 -45
  481. package/fesm2015/paginator.mjs.map +1 -1
  482. package/fesm2015/progress-bar/testing.mjs.map +1 -1
  483. package/fesm2015/progress-bar.mjs +34 -21
  484. package/fesm2015/progress-bar.mjs.map +1 -1
  485. package/fesm2015/progress-spinner/testing.mjs +1 -1
  486. package/fesm2015/progress-spinner/testing.mjs.map +1 -1
  487. package/fesm2015/progress-spinner.mjs +29 -29
  488. package/fesm2015/progress-spinner.mjs.map +1 -1
  489. package/fesm2015/radio/testing.mjs +1 -2
  490. package/fesm2015/radio/testing.mjs.map +1 -1
  491. package/fesm2015/radio.mjs +63 -39
  492. package/fesm2015/radio.mjs.map +1 -1
  493. package/fesm2015/select/testing.mjs +4 -1
  494. package/fesm2015/select/testing.mjs.map +1 -1
  495. package/fesm2015/select.mjs +89 -77
  496. package/fesm2015/select.mjs.map +1 -1
  497. package/fesm2015/sidenav/testing.mjs +2 -4
  498. package/fesm2015/sidenav/testing.mjs.map +1 -1
  499. package/fesm2015/sidenav.mjs +130 -83
  500. package/fesm2015/sidenav.mjs.map +1 -1
  501. package/fesm2015/slide-toggle/testing.mjs +2 -2
  502. package/fesm2015/slide-toggle/testing.mjs.map +1 -1
  503. package/fesm2015/slide-toggle.mjs +40 -31
  504. package/fesm2015/slide-toggle.mjs.map +1 -1
  505. package/fesm2015/slider/testing.mjs +5 -1
  506. package/fesm2015/slider/testing.mjs.map +1 -1
  507. package/fesm2015/slider.mjs +62 -35
  508. package/fesm2015/slider.mjs.map +1 -1
  509. package/fesm2015/snack-bar/testing.mjs +1 -2
  510. package/fesm2015/snack-bar/testing.mjs.map +1 -1
  511. package/fesm2015/snack-bar.mjs +35 -40
  512. package/fesm2015/snack-bar.mjs.map +1 -1
  513. package/fesm2015/sort/testing.mjs.map +1 -1
  514. package/fesm2015/sort.mjs +115 -82
  515. package/fesm2015/sort.mjs.map +1 -1
  516. package/fesm2015/stepper/testing.mjs +6 -8
  517. package/fesm2015/stepper/testing.mjs.map +1 -1
  518. package/fesm2015/stepper.mjs +65 -53
  519. package/fesm2015/stepper.mjs.map +1 -1
  520. package/fesm2015/table/testing.mjs +7 -4
  521. package/fesm2015/table/testing.mjs.map +1 -1
  522. package/fesm2015/table.mjs +106 -96
  523. package/fesm2015/table.mjs.map +1 -1
  524. package/fesm2015/tabs/testing.mjs +3 -6
  525. package/fesm2015/tabs/testing.mjs.map +1 -1
  526. package/fesm2015/tabs.mjs +161 -114
  527. package/fesm2015/tabs.mjs.map +1 -1
  528. package/fesm2015/toolbar/testing.mjs +2 -3
  529. package/fesm2015/toolbar/testing.mjs.map +1 -1
  530. package/fesm2015/toolbar.mjs +18 -10
  531. package/fesm2015/toolbar.mjs.map +1 -1
  532. package/fesm2015/tooltip.mjs +82 -62
  533. package/fesm2015/tooltip.mjs.map +1 -1
  534. package/fesm2015/tree/testing.mjs +1 -1
  535. package/fesm2015/tree/testing.mjs.map +1 -1
  536. package/fesm2015/tree.mjs +85 -54
  537. package/fesm2015/tree.mjs.map +1 -1
  538. package/fesm2020/autocomplete/testing.mjs +5 -6
  539. package/fesm2020/autocomplete/testing.mjs.map +1 -1
  540. package/fesm2020/autocomplete.mjs +67 -67
  541. package/fesm2020/autocomplete.mjs.map +1 -1
  542. package/fesm2020/badge/testing.mjs +1 -2
  543. package/fesm2020/badge/testing.mjs.map +1 -1
  544. package/fesm2020/badge.mjs +28 -19
  545. package/fesm2020/badge.mjs.map +1 -1
  546. package/fesm2020/bottom-sheet/testing.mjs.map +1 -1
  547. package/fesm2020/bottom-sheet.mjs +41 -34
  548. package/fesm2020/bottom-sheet.mjs.map +1 -1
  549. package/fesm2020/button/testing.mjs +1 -2
  550. package/fesm2020/button/testing.mjs.map +1 -1
  551. package/fesm2020/button-toggle/testing.mjs +3 -3
  552. package/fesm2020/button-toggle/testing.mjs.map +1 -1
  553. package/fesm2020/button-toggle.mjs +41 -21
  554. package/fesm2020/button-toggle.mjs.map +1 -1
  555. package/fesm2020/button.mjs +21 -30
  556. package/fesm2020/button.mjs.map +1 -1
  557. package/fesm2020/card/testing.mjs.map +1 -1
  558. package/fesm2020/card.mjs +94 -64
  559. package/fesm2020/card.mjs.map +1 -1
  560. package/fesm2020/checkbox/testing.mjs +2 -2
  561. package/fesm2020/checkbox/testing.mjs.map +1 -1
  562. package/fesm2020/checkbox.mjs +56 -36
  563. package/fesm2020/checkbox.mjs.map +1 -1
  564. package/fesm2020/chips/testing.mjs +6 -6
  565. package/fesm2020/chips/testing.mjs.map +1 -1
  566. package/fesm2020/chips.mjs +107 -65
  567. package/fesm2020/chips.mjs.map +1 -1
  568. package/fesm2020/core/testing.mjs +2 -3
  569. package/fesm2020/core/testing.mjs.map +1 -1
  570. package/fesm2020/core.mjs +135 -100
  571. package/fesm2020/core.mjs.map +1 -1
  572. package/fesm2020/datepicker/testing.mjs +6 -7
  573. package/fesm2020/datepicker/testing.mjs.map +1 -1
  574. package/fesm2020/datepicker.mjs +355 -271
  575. package/fesm2020/datepicker.mjs.map +1 -1
  576. package/fesm2020/dialog/testing.mjs +2 -2
  577. package/fesm2020/dialog/testing.mjs.map +1 -1
  578. package/fesm2020/dialog.mjs +75 -72
  579. package/fesm2020/dialog.mjs.map +1 -1
  580. package/fesm2020/divider/testing.mjs.map +1 -1
  581. package/fesm2020/divider.mjs +28 -12
  582. package/fesm2020/divider.mjs.map +1 -1
  583. package/fesm2020/expansion/testing.mjs +2 -2
  584. package/fesm2020/expansion/testing.mjs.map +1 -1
  585. package/fesm2020/expansion.mjs +71 -59
  586. package/fesm2020/expansion.mjs.map +1 -1
  587. package/fesm2020/form-field/testing.mjs +10 -7
  588. package/fesm2020/form-field/testing.mjs.map +1 -1
  589. package/fesm2020/form-field.mjs +83 -87
  590. package/fesm2020/form-field.mjs.map +1 -1
  591. package/fesm2020/grid-list/testing.mjs +8 -4
  592. package/fesm2020/grid-list/testing.mjs.map +1 -1
  593. package/fesm2020/grid-list.mjs +80 -50
  594. package/fesm2020/grid-list.mjs.map +1 -1
  595. package/fesm2020/icon/testing.mjs +17 -9
  596. package/fesm2020/icon/testing.mjs.map +1 -1
  597. package/fesm2020/icon.mjs +49 -31
  598. package/fesm2020/icon.mjs.map +1 -1
  599. package/fesm2020/input/testing.mjs +10 -10
  600. package/fesm2020/input/testing.mjs.map +1 -1
  601. package/fesm2020/input.mjs +63 -37
  602. package/fesm2020/input.mjs.map +1 -1
  603. package/fesm2020/list/testing.mjs +23 -19
  604. package/fesm2020/list/testing.mjs.map +1 -1
  605. package/fesm2020/list.mjs +79 -51
  606. package/fesm2020/list.mjs.map +1 -1
  607. package/fesm2020/menu/testing.mjs +3 -4
  608. package/fesm2020/menu/testing.mjs.map +1 -1
  609. package/fesm2020/menu.mjs +92 -85
  610. package/fesm2020/menu.mjs.map +1 -1
  611. package/fesm2020/paginator/testing.mjs +1 -1
  612. package/fesm2020/paginator/testing.mjs.map +1 -1
  613. package/fesm2020/paginator.mjs +46 -45
  614. package/fesm2020/paginator.mjs.map +1 -1
  615. package/fesm2020/progress-bar/testing.mjs.map +1 -1
  616. package/fesm2020/progress-bar.mjs +34 -21
  617. package/fesm2020/progress-bar.mjs.map +1 -1
  618. package/fesm2020/progress-spinner/testing.mjs +1 -1
  619. package/fesm2020/progress-spinner/testing.mjs.map +1 -1
  620. package/fesm2020/progress-spinner.mjs +29 -29
  621. package/fesm2020/progress-spinner.mjs.map +1 -1
  622. package/fesm2020/radio/testing.mjs +2 -3
  623. package/fesm2020/radio/testing.mjs.map +1 -1
  624. package/fesm2020/radio.mjs +63 -39
  625. package/fesm2020/radio.mjs.map +1 -1
  626. package/fesm2020/select/testing.mjs +8 -5
  627. package/fesm2020/select/testing.mjs.map +1 -1
  628. package/fesm2020/select.mjs +89 -77
  629. package/fesm2020/select.mjs.map +1 -1
  630. package/fesm2020/sidenav/testing.mjs +2 -4
  631. package/fesm2020/sidenav/testing.mjs.map +1 -1
  632. package/fesm2020/sidenav.mjs +130 -83
  633. package/fesm2020/sidenav.mjs.map +1 -1
  634. package/fesm2020/slide-toggle/testing.mjs +2 -2
  635. package/fesm2020/slide-toggle/testing.mjs.map +1 -1
  636. package/fesm2020/slide-toggle.mjs +40 -31
  637. package/fesm2020/slide-toggle.mjs.map +1 -1
  638. package/fesm2020/slider/testing.mjs +5 -1
  639. package/fesm2020/slider/testing.mjs.map +1 -1
  640. package/fesm2020/slider.mjs +62 -35
  641. package/fesm2020/slider.mjs.map +1 -1
  642. package/fesm2020/snack-bar/testing.mjs +4 -5
  643. package/fesm2020/snack-bar/testing.mjs.map +1 -1
  644. package/fesm2020/snack-bar.mjs +35 -40
  645. package/fesm2020/snack-bar.mjs.map +1 -1
  646. package/fesm2020/sort/testing.mjs.map +1 -1
  647. package/fesm2020/sort.mjs +116 -78
  648. package/fesm2020/sort.mjs.map +1 -1
  649. package/fesm2020/stepper/testing.mjs +6 -8
  650. package/fesm2020/stepper/testing.mjs.map +1 -1
  651. package/fesm2020/stepper.mjs +65 -53
  652. package/fesm2020/stepper.mjs.map +1 -1
  653. package/fesm2020/table/testing.mjs +7 -4
  654. package/fesm2020/table/testing.mjs.map +1 -1
  655. package/fesm2020/table.mjs +106 -96
  656. package/fesm2020/table.mjs.map +1 -1
  657. package/fesm2020/tabs/testing.mjs +3 -6
  658. package/fesm2020/tabs/testing.mjs.map +1 -1
  659. package/fesm2020/tabs.mjs +161 -114
  660. package/fesm2020/tabs.mjs.map +1 -1
  661. package/fesm2020/toolbar/testing.mjs +2 -3
  662. package/fesm2020/toolbar/testing.mjs.map +1 -1
  663. package/fesm2020/toolbar.mjs +18 -10
  664. package/fesm2020/toolbar.mjs.map +1 -1
  665. package/fesm2020/tooltip.mjs +82 -62
  666. package/fesm2020/tooltip.mjs.map +1 -1
  667. package/fesm2020/tree/testing.mjs +1 -1
  668. package/fesm2020/tree/testing.mjs.map +1 -1
  669. package/fesm2020/tree.mjs +85 -54
  670. package/fesm2020/tree.mjs.map +1 -1
  671. package/form-field/form-field_public_index.d.ts +4 -0
  672. package/form-field/index.d.ts +5 -1
  673. package/form-field/package.json +2 -2
  674. package/grid-list/grid-list_public_index.d.ts +4 -0
  675. package/grid-list/index.d.ts +5 -1
  676. package/grid-list/package.json +2 -2
  677. package/grid-list/testing/grid-list-harness.d.ts +1 -1
  678. package/icon/icon-registry.d.ts +1 -1
  679. package/icon/icon_public_index.d.ts +4 -0
  680. package/icon/index.d.ts +5 -1
  681. package/icon/package.json +2 -2
  682. package/icon/testing/index.d.ts +5 -1
  683. package/icon/testing/package.json +2 -2
  684. package/icon/testing/testing_public_index.d.ts +4 -0
  685. package/input/_input-theme.scss +8 -6
  686. package/input/index.d.ts +5 -1
  687. package/input/input.d.ts +3 -1
  688. package/input/input_public_index.d.ts +4 -0
  689. package/input/package.json +2 -2
  690. package/list/index.d.ts +5 -1
  691. package/list/list_public_index.d.ts +4 -0
  692. package/list/package.json +2 -2
  693. package/list/testing/list-harness-base.d.ts +2 -2
  694. package/menu/index.d.ts +5 -1
  695. package/menu/menu_public_index.d.ts +4 -0
  696. package/menu/package.json +2 -2
  697. package/menu/public-api.d.ts +1 -1
  698. package/menu/testing/menu-harness.d.ts +2 -2
  699. package/package.json +74 -74
  700. package/paginator/index.d.ts +5 -1
  701. package/paginator/package.json +2 -2
  702. package/paginator/paginator_public_index.d.ts +4 -0
  703. package/prebuilt-themes/deeppurple-amber.css +1 -1
  704. package/prebuilt-themes/indigo-pink.css +1 -1
  705. package/prebuilt-themes/pink-bluegrey.css +1 -1
  706. package/prebuilt-themes/purple-green.css +1 -1
  707. package/progress-bar/index.d.ts +5 -1
  708. package/progress-bar/package.json +2 -2
  709. package/progress-bar/progress-bar_public_index.d.ts +4 -0
  710. package/progress-spinner/index.d.ts +5 -1
  711. package/progress-spinner/package.json +2 -2
  712. package/progress-spinner/progress-spinner_public_index.d.ts +4 -0
  713. package/radio/index.d.ts +5 -1
  714. package/radio/package.json +2 -2
  715. package/radio/radio_public_index.d.ts +4 -0
  716. package/radio/testing/radio-harness.d.ts +2 -2
  717. package/schematics/ng-add/fonts/material-fonts.js +13 -4
  718. package/schematics/ng-add/fonts/material-fonts.mjs +13 -4
  719. package/schematics/ng-add/index.js +2 -2
  720. package/schematics/ng-add/index.mjs +2 -2
  721. package/schematics/ng-add/package-config.js +4 -2
  722. package/schematics/ng-add/package-config.mjs +4 -2
  723. package/schematics/ng-add/setup-project.js +20 -12
  724. package/schematics/ng-add/setup-project.mjs +20 -12
  725. package/schematics/ng-add/theming/create-custom-theme.js +1 -1
  726. package/schematics/ng-add/theming/create-custom-theme.mjs +1 -1
  727. package/schematics/ng-add/theming/theming.js +44 -33
  728. package/schematics/ng-add/theming/theming.mjs +44 -33
  729. package/schematics/ng-generate/address-form/index.js +15 -6
  730. package/schematics/ng-generate/address-form/index.mjs +15 -6
  731. package/schematics/ng-generate/dashboard/index.js +15 -6
  732. package/schematics/ng-generate/dashboard/index.mjs +15 -6
  733. package/schematics/ng-generate/navigation/index.js +15 -6
  734. package/schematics/ng-generate/navigation/index.mjs +15 -6
  735. package/schematics/ng-generate/table/index.js +16 -7
  736. package/schematics/ng-generate/table/index.mjs +16 -7
  737. package/schematics/ng-generate/tree/index.js +15 -6
  738. package/schematics/ng-generate/tree/index.mjs +15 -6
  739. package/schematics/ng-update/data/class-names.js +6 -8
  740. package/schematics/ng-update/data/class-names.mjs +6 -8
  741. package/schematics/ng-update/data/constructor-checks.js +33 -32
  742. package/schematics/ng-update/data/constructor-checks.mjs +33 -32
  743. package/schematics/ng-update/data/css-selectors.js +11 -9
  744. package/schematics/ng-update/data/css-selectors.mjs +11 -9
  745. package/schematics/ng-update/data/element-selectors.js +6 -4
  746. package/schematics/ng-update/data/element-selectors.mjs +6 -4
  747. package/schematics/ng-update/data/input-names.js +31 -23
  748. package/schematics/ng-update/data/input-names.mjs +31 -23
  749. package/schematics/ng-update/data/method-call-checks.js +10 -6
  750. package/schematics/ng-update/data/method-call-checks.mjs +10 -6
  751. package/schematics/ng-update/data/property-names.js +62 -50
  752. package/schematics/ng-update/data/property-names.mjs +62 -50
  753. package/schematics/ng-update/data/symbol-removal.js +6 -6
  754. package/schematics/ng-update/data/symbol-removal.mjs +6 -6
  755. package/schematics/ng-update/index.js +1 -1
  756. package/schematics/ng-update/index.mjs +1 -1
  757. package/schematics/ng-update/migrations/hammer-gestures-v9/find-main-module.js +5 -3
  758. package/schematics/ng-update/migrations/hammer-gestures-v9/find-main-module.mjs +5 -3
  759. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.d.ts +4 -2
  760. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.js +68 -33
  761. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.mjs +68 -33
  762. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-template-check.js +38 -7
  763. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-template-check.mjs +38 -7
  764. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.js +29 -15
  765. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.mjs +29 -15
  766. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-array-element.js +1 -1
  767. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-array-element.mjs +1 -1
  768. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-element-from-html.js +1 -1
  769. package/schematics/ng-update/migrations/hammer-gestures-v9/remove-element-from-html.mjs +1 -1
  770. package/schematics/ng-update/migrations/misc-checks/misc-class-inheritance.js +3 -2
  771. package/schematics/ng-update/migrations/misc-checks/misc-class-inheritance.mjs +3 -2
  772. package/schematics/ng-update/migrations/misc-checks/misc-class-names.js +1 -1
  773. package/schematics/ng-update/migrations/misc-checks/misc-class-names.mjs +1 -1
  774. package/schematics/ng-update/migrations/misc-checks/misc-imports.js +6 -3
  775. package/schematics/ng-update/migrations/misc-checks/misc-imports.mjs +6 -3
  776. package/schematics/ng-update/migrations/misc-checks/misc-property-names.js +1 -1
  777. package/schematics/ng-update/migrations/misc-checks/misc-property-names.mjs +1 -1
  778. package/schematics/ng-update/migrations/misc-checks/misc-template.js +7 -13
  779. package/schematics/ng-update/migrations/misc-checks/misc-template.mjs +7 -13
  780. package/schematics/ng-update/migrations/misc-ripples-v7/ripple-speed-factor-migration.js +1 -1
  781. package/schematics/ng-update/migrations/misc-ripples-v7/ripple-speed-factor-migration.mjs +1 -1
  782. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.js +5 -3
  783. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.mjs +5 -3
  784. package/schematics/ng-update/migrations/theming-api-v12/config.js +59 -10
  785. package/schematics/ng-update/migrations/theming-api-v12/config.mjs +59 -10
  786. package/schematics/ng-update/migrations/theming-api-v12/migration.js +23 -15
  787. package/schematics/ng-update/migrations/theming-api-v12/migration.mjs +23 -15
  788. package/schematics/ng-update/migrations/theming-api-v12/theming-api-migration.d.ts +2 -2
  789. package/schematics/ng-update/migrations/theming-api-v12/theming-api-migration.js +7 -4
  790. package/schematics/ng-update/migrations/theming-api-v12/theming-api-migration.mjs +7 -4
  791. package/schematics/ng-update/typescript/module-specifiers.js +3 -3
  792. package/schematics/ng-update/typescript/module-specifiers.mjs +3 -3
  793. package/select/index.d.ts +5 -1
  794. package/select/package.json +2 -2
  795. package/select/public-api.d.ts +1 -1
  796. package/select/select_public_index.d.ts +4 -0
  797. package/select/testing/select-harness.d.ts +4 -4
  798. package/sidenav/index.d.ts +5 -1
  799. package/sidenav/package.json +2 -2
  800. package/sidenav/sidenav_public_index.d.ts +4 -0
  801. package/slide-toggle/index.d.ts +5 -1
  802. package/slide-toggle/package.json +2 -2
  803. package/slide-toggle/slide-toggle_public_index.d.ts +4 -0
  804. package/slider/index.d.ts +5 -1
  805. package/slider/package.json +2 -2
  806. package/slider/slider_public_index.d.ts +4 -0
  807. package/snack-bar/index.d.ts +5 -1
  808. package/snack-bar/package.json +2 -2
  809. package/snack-bar/snack-bar_public_index.d.ts +4 -0
  810. package/sort/index.d.ts +5 -1
  811. package/sort/package.json +2 -2
  812. package/sort/sort-header-intl.d.ts +0 -2
  813. package/sort/sort-header.d.ts +22 -5
  814. package/sort/sort_public_index.d.ts +4 -0
  815. package/stepper/index.d.ts +5 -1
  816. package/stepper/package.json +2 -2
  817. package/stepper/stepper_public_index.d.ts +4 -0
  818. package/table/index.d.ts +5 -1
  819. package/table/package.json +2 -2
  820. package/table/table-data-source.d.ts +3 -3
  821. package/table/table_public_index.d.ts +4 -0
  822. package/table/testing/row-harness.d.ts +2 -2
  823. package/table/testing/table-harness.d.ts +4 -4
  824. package/tabs/_tabs-theme.scss +6 -2
  825. package/tabs/index.d.ts +5 -1
  826. package/tabs/package.json +2 -2
  827. package/tabs/public-api.d.ts +1 -1
  828. package/tabs/tab-content.d.ts +2 -3
  829. package/tabs/tabs_public_index.d.ts +4 -0
  830. package/toolbar/index.d.ts +5 -1
  831. package/toolbar/package.json +2 -2
  832. package/toolbar/toolbar_public_index.d.ts +4 -0
  833. package/tooltip/index.d.ts +5 -1
  834. package/tooltip/package.json +2 -2
  835. package/tooltip/tooltip_public_index.d.ts +4 -0
  836. package/tree/index.d.ts +5 -1
  837. package/tree/package.json +2 -2
  838. package/tree/tree_public_index.d.ts +4 -0
package/fesm2015/sort.mjs CHANGED
@@ -1,8 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, Optional, SkipSelf, InjectionToken, EventEmitter, Directive, Inject, Input, Output, Component, ViewEncapsulation, ChangeDetectionStrategy, NgModule } from '@angular/core';
3
3
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
4
- import { AnimationDurations, AnimationCurves, mixinInitialized, mixinDisabled, MatCommonModule } from '@angular/material/core';
5
4
  import { SPACE, ENTER } from '@angular/cdk/keycodes';
5
+ import { AnimationDurations, AnimationCurves, mixinInitialized, mixinDisabled, MatCommonModule } from '@angular/material/core';
6
6
  import { Subject, merge } from 'rxjs';
7
7
  import { trigger, state, style, transition, animate, keyframes, query, animateChild } from '@angular/animations';
8
8
  import * as i3 from '@angular/cdk/a11y';
@@ -16,8 +16,7 @@ import { CommonModule } from '@angular/common';
16
16
  * Use of this source code is governed by an MIT-style license that can be
17
17
  * found in the LICENSE file at https://angular.io/license
18
18
  */
19
- const SORT_ANIMATION_TRANSITION = AnimationDurations.ENTERING + ' ' +
20
- AnimationCurves.STANDARD_CURVE;
19
+ const SORT_ANIMATION_TRANSITION = AnimationDurations.ENTERING + ' ' + AnimationCurves.STANDARD_CURVE;
21
20
  /**
22
21
  * Animations used by MatSort.
23
22
  * @docs-private
@@ -28,24 +27,24 @@ const matSortAnimations = {
28
27
  state('active-asc, asc', style({ transform: 'translateY(0px)' })),
29
28
  // 10px is the height of the sort indicator, minus the width of the pointers
30
29
  state('active-desc, desc', style({ transform: 'translateY(10px)' })),
31
- transition('active-asc <=> active-desc', animate(SORT_ANIMATION_TRANSITION))
30
+ transition('active-asc <=> active-desc', animate(SORT_ANIMATION_TRANSITION)),
32
31
  ]),
33
32
  /** Animation that rotates the left pointer of the indicator based on the sorting direction. */
34
33
  leftPointer: trigger('leftPointer', [
35
34
  state('active-asc, asc', style({ transform: 'rotate(-45deg)' })),
36
35
  state('active-desc, desc', style({ transform: 'rotate(45deg)' })),
37
- transition('active-asc <=> active-desc', animate(SORT_ANIMATION_TRANSITION))
36
+ transition('active-asc <=> active-desc', animate(SORT_ANIMATION_TRANSITION)),
38
37
  ]),
39
38
  /** Animation that rotates the right pointer of the indicator based on the sorting direction. */
40
39
  rightPointer: trigger('rightPointer', [
41
40
  state('active-asc, asc', style({ transform: 'rotate(45deg)' })),
42
41
  state('active-desc, desc', style({ transform: 'rotate(-45deg)' })),
43
- transition('active-asc <=> active-desc', animate(SORT_ANIMATION_TRANSITION))
42
+ transition('active-asc <=> active-desc', animate(SORT_ANIMATION_TRANSITION)),
44
43
  ]),
45
44
  /** Animation that controls the arrow opacity. */
46
45
  arrowOpacity: trigger('arrowOpacity', [
47
46
  state('desc-to-active, asc-to-active, active', style({ opacity: 1 })),
48
- state('desc-to-hint, asc-to-hint, hint', style({ opacity: .54 })),
47
+ state('desc-to-hint, asc-to-hint, hint', style({ opacity: 0.54 })),
49
48
  state('hint-to-desc, active-to-desc, desc, hint-to-asc, active-to-asc, asc, void', style({ opacity: 0 })),
50
49
  // Transition between all states except for immediate transitions
51
50
  transition('* => asc, * => desc, * => active, * => hint, * => void', animate('0ms')),
@@ -60,34 +59,20 @@ const matSortAnimations = {
60
59
  */
61
60
  arrowPosition: trigger('arrowPosition', [
62
61
  // Hidden Above => Hint Center
63
- transition('* => desc-to-hint, * => desc-to-active', animate(SORT_ANIMATION_TRANSITION, keyframes([
64
- style({ transform: 'translateY(-25%)' }),
65
- style({ transform: 'translateY(0)' })
66
- ]))),
62
+ transition('* => desc-to-hint, * => desc-to-active', animate(SORT_ANIMATION_TRANSITION, keyframes([style({ transform: 'translateY(-25%)' }), style({ transform: 'translateY(0)' })]))),
67
63
  // Hint Center => Hidden Below
68
- transition('* => hint-to-desc, * => active-to-desc', animate(SORT_ANIMATION_TRANSITION, keyframes([
69
- style({ transform: 'translateY(0)' }),
70
- style({ transform: 'translateY(25%)' })
71
- ]))),
64
+ transition('* => hint-to-desc, * => active-to-desc', animate(SORT_ANIMATION_TRANSITION, keyframes([style({ transform: 'translateY(0)' }), style({ transform: 'translateY(25%)' })]))),
72
65
  // Hidden Below => Hint Center
73
- transition('* => asc-to-hint, * => asc-to-active', animate(SORT_ANIMATION_TRANSITION, keyframes([
74
- style({ transform: 'translateY(25%)' }),
75
- style({ transform: 'translateY(0)' })
76
- ]))),
66
+ transition('* => asc-to-hint, * => asc-to-active', animate(SORT_ANIMATION_TRANSITION, keyframes([style({ transform: 'translateY(25%)' }), style({ transform: 'translateY(0)' })]))),
77
67
  // Hint Center => Hidden Above
78
- transition('* => hint-to-asc, * => active-to-asc', animate(SORT_ANIMATION_TRANSITION, keyframes([
79
- style({ transform: 'translateY(0)' }),
80
- style({ transform: 'translateY(-25%)' })
81
- ]))),
68
+ transition('* => hint-to-asc, * => active-to-asc', animate(SORT_ANIMATION_TRANSITION, keyframes([style({ transform: 'translateY(0)' }), style({ transform: 'translateY(-25%)' })]))),
82
69
  state('desc-to-hint, asc-to-hint, hint, desc-to-active, asc-to-active, active', style({ transform: 'translateY(0)' })),
83
70
  state('hint-to-desc, active-to-desc, desc', style({ transform: 'translateY(-25%)' })),
84
71
  state('hint-to-asc, active-to-asc, asc', style({ transform: 'translateY(25%)' })),
85
72
  ]),
86
73
  /** Necessary trigger that calls animate on children animations. */
87
74
  allowChildren: trigger('allowChildren', [
88
- transition('* <=> *', [
89
- query('@*', animateChild(), { optional: true })
90
- ])
75
+ transition('* <=> *', [query('@*', animateChild(), { optional: true })]),
91
76
  ]),
92
77
  };
93
78
 
@@ -125,8 +110,6 @@ function getSortInvalidDirectionError(direction) {
125
110
  /**
126
111
  * To modify the labels and text displayed, create a new instance of MatSortHeaderIntl and
127
112
  * include it in a custom provider.
128
- * @deprecated No longer being used. To be removed.
129
- * @breaking-change 13.0.0
130
113
  */
131
114
  class MatSortHeaderIntl {
132
115
  constructor() {
@@ -137,9 +120,9 @@ class MatSortHeaderIntl {
137
120
  this.changes = new Subject();
138
121
  }
139
122
  }
140
- MatSortHeaderIntl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSortHeaderIntl, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
141
- MatSortHeaderIntl.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSortHeaderIntl, providedIn: 'root' });
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSortHeaderIntl, decorators: [{
123
+ MatSortHeaderIntl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSortHeaderIntl, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
124
+ MatSortHeaderIntl.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSortHeaderIntl, providedIn: 'root' });
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSortHeaderIntl, decorators: [{
143
126
  type: Injectable,
144
127
  args: [{ providedIn: 'root' }]
145
128
  }] });
@@ -152,7 +135,7 @@ const MAT_SORT_HEADER_INTL_PROVIDER = {
152
135
  // If there is already an MatSortHeaderIntl available, use that. Otherwise, provide a new one.
153
136
  provide: MatSortHeaderIntl,
154
137
  deps: [[new Optional(), new SkipSelf(), MatSortHeaderIntl]],
155
- useFactory: MAT_SORT_HEADER_INTL_PROVIDER_FACTORY
138
+ useFactory: MAT_SORT_HEADER_INTL_PROVIDER_FACTORY,
156
139
  };
157
140
 
158
141
  /**
@@ -187,9 +170,13 @@ class MatSort extends _MatSortBase {
187
170
  this.sortChange = new EventEmitter();
188
171
  }
189
172
  /** The sort direction of the currently active MatSortable. */
190
- get direction() { return this._direction; }
173
+ get direction() {
174
+ return this._direction;
175
+ }
191
176
  set direction(direction) {
192
- if (direction && direction !== 'asc' && direction !== 'desc' &&
177
+ if (direction &&
178
+ direction !== 'asc' &&
179
+ direction !== 'desc' &&
193
180
  (typeof ngDevMode === 'undefined' || ngDevMode)) {
194
181
  throw getSortInvalidDirectionError(direction);
195
182
  }
@@ -199,8 +186,12 @@ class MatSort extends _MatSortBase {
199
186
  * Whether to disable the user from clearing the sort by finishing the sort direction cycle.
200
187
  * May be overriden by the MatSortable's disable clear input.
201
188
  */
202
- get disableClear() { return this._disableClear; }
203
- set disableClear(v) { this._disableClear = coerceBooleanProperty(v); }
189
+ get disableClear() {
190
+ return this._disableClear;
191
+ }
192
+ set disableClear(v) {
193
+ this._disableClear = coerceBooleanProperty(v);
194
+ }
204
195
  /**
205
196
  * Register function to be used by the contained MatSortables. Adds the MatSortable to the
206
197
  * collection of MatSortables.
@@ -260,15 +251,15 @@ class MatSort extends _MatSortBase {
260
251
  this._stateChanges.complete();
261
252
  }
262
253
  }
263
- MatSort.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSort, deps: [{ token: MAT_SORT_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
264
- MatSort.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatSort, selector: "[matSort]", inputs: { disabled: ["matSortDisabled", "disabled"], active: ["matSortActive", "active"], start: ["matSortStart", "start"], direction: ["matSortDirection", "direction"], disableClear: ["matSortDisableClear", "disableClear"] }, outputs: { sortChange: "matSortChange" }, host: { classAttribute: "mat-sort" }, exportAs: ["matSort"], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
265
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSort, decorators: [{
254
+ MatSort.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSort, deps: [{ token: MAT_SORT_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
255
+ MatSort.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatSort, selector: "[matSort]", inputs: { disabled: ["matSortDisabled", "disabled"], active: ["matSortActive", "active"], start: ["matSortStart", "start"], direction: ["matSortDirection", "direction"], disableClear: ["matSortDisableClear", "disableClear"] }, outputs: { sortChange: "matSortChange" }, host: { classAttribute: "mat-sort" }, exportAs: ["matSort"], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
256
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSort, decorators: [{
266
257
  type: Directive,
267
258
  args: [{
268
259
  selector: '[matSort]',
269
260
  exportAs: 'matSort',
270
261
  host: { 'class': 'mat-sort' },
271
- inputs: ['disabled: matSortDisabled']
262
+ inputs: ['disabled: matSortDisabled'],
272
263
  }]
273
264
  }], ctorParameters: function () {
274
265
  return [{ type: undefined, decorators: [{
@@ -305,13 +296,6 @@ function getSortDirectionCycle(start, disableClear) {
305
296
  return sortOrder;
306
297
  }
307
298
 
308
- /**
309
- * @license
310
- * Copyright Google LLC All Rights Reserved.
311
- *
312
- * Use of this source code is governed by an MIT-style license that can be
313
- * found in the LICENSE file at https://angular.io/license
314
- */
315
299
  // Boilerplate for applying mixins to the sort header.
316
300
  /** @docs-private */
317
301
  const _MatSortHeaderBase = mixinDisabled(class {
@@ -334,7 +318,9 @@ class MatSortHeader extends _MatSortHeaderBase {
334
318
  _intl, _changeDetectorRef,
335
319
  // `MatSort` is not optionally injected, but just asserted manually w/ better error.
336
320
  // tslint:disable-next-line: lightweight-tokens
337
- _sort, _columnDef, _focusMonitor, _elementRef) {
321
+ _sort, _columnDef, _focusMonitor, _elementRef,
322
+ /** @breaking-change 14.0.0 _ariaDescriber will be required. */
323
+ _ariaDescriber) {
338
324
  // Note that we use a string token for the `_columnDef`, because the value is provided both by
339
325
  // `material/table` and `cdk/table` and we can't have the CDK depending on Material,
340
326
  // and we want to avoid having the sort header depending on the CDK table because
@@ -346,6 +332,7 @@ class MatSortHeader extends _MatSortHeaderBase {
346
332
  this._columnDef = _columnDef;
347
333
  this._focusMonitor = _focusMonitor;
348
334
  this._elementRef = _elementRef;
335
+ this._ariaDescriber = _ariaDescriber;
349
336
  /**
350
337
  * Flag set to true when the indicator should be displayed while the sort is not active. Used to
351
338
  * provide an affordance that the header is sortable by showing on focus and hover.
@@ -365,22 +352,44 @@ class MatSortHeader extends _MatSortHeaderBase {
365
352
  this._disableViewStateAnimation = false;
366
353
  /** Sets the position of the arrow that displays when sorted. */
367
354
  this.arrowPosition = 'after';
355
+ // Default the action description to "Sort" because it's better than nothing.
356
+ // Without a description, the button's label comes from the sort header text content,
357
+ // which doesn't give any indication that it performs a sorting operation.
358
+ this._sortActionDescription = 'Sort';
368
359
  if (!_sort && (typeof ngDevMode === 'undefined' || ngDevMode)) {
369
360
  throw getSortHeaderNotContainedWithinSortError();
370
361
  }
371
362
  this._handleStateChanges();
372
363
  }
364
+ /**
365
+ * Description applied to MatSortHeader's button element with aria-describedby. This text should
366
+ * describe the action that will occur when the user clicks the sort header.
367
+ */
368
+ get sortActionDescription() {
369
+ return this._sortActionDescription;
370
+ }
371
+ set sortActionDescription(value) {
372
+ this._updateSortActionDescription(value);
373
+ }
373
374
  /** Overrides the disable clear value of the containing MatSort for this MatSortable. */
374
- get disableClear() { return this._disableClear; }
375
- set disableClear(v) { this._disableClear = coerceBooleanProperty(v); }
375
+ get disableClear() {
376
+ return this._disableClear;
377
+ }
378
+ set disableClear(v) {
379
+ this._disableClear = coerceBooleanProperty(v);
380
+ }
376
381
  ngOnInit() {
377
382
  if (!this.id && this._columnDef) {
378
383
  this.id = this._columnDef.name;
379
384
  }
380
385
  // Initialize the direction of the arrow and set the view state to be immediately that state.
381
386
  this._updateArrowDirection();
382
- this._setAnimationTransitionState({ toState: this._isSorted() ? 'active' : this._arrowDirection });
387
+ this._setAnimationTransitionState({
388
+ toState: this._isSorted() ? 'active' : this._arrowDirection,
389
+ });
383
390
  this._sort.register(this);
391
+ this._sortButton = this._elementRef.nativeElement.querySelector('[role="button"]');
392
+ this._updateSortActionDescription(this._sortActionDescription);
384
393
  }
385
394
  ngAfterViewInit() {
386
395
  // We use the focus monitor because we also want to style
@@ -452,8 +461,8 @@ class MatSortHeader extends _MatSortHeaderBase {
452
461
  }
453
462
  /** Whether this MatSortHeader is currently sorted in either ascending or descending order. */
454
463
  _isSorted() {
455
- return this._sort.active == this.id &&
456
- (this._sort.direction === 'asc' || this._sort.direction === 'desc');
464
+ return (this._sort.active == this.id &&
465
+ (this._sort.direction === 'asc' || this._sort.direction === 'desc'));
457
466
  }
458
467
  /** Returns the animation state for the arrow direction (indicator and pointers). */
459
468
  _getArrowDirectionState() {
@@ -475,9 +484,7 @@ class MatSortHeader extends _MatSortHeaderBase {
475
484
  * only be changed once the arrow displays again (hint or activation).
476
485
  */
477
486
  _updateArrowDirection() {
478
- this._arrowDirection = this._isSorted() ?
479
- this._sort.direction :
480
- (this.start || this._sort.start);
487
+ this._arrowDirection = this._isSorted() ? this._sort.direction : this.start || this._sort.start;
481
488
  }
482
489
  _isDisabled() {
483
490
  return this._sort.disabled || this.disabled;
@@ -498,30 +505,44 @@ class MatSortHeader extends _MatSortHeaderBase {
498
505
  _renderArrow() {
499
506
  return !this._isDisabled() || this._isSorted();
500
507
  }
508
+ _updateSortActionDescription(newDescription) {
509
+ var _a, _b;
510
+ // We use AriaDescriber for the sort button instead of setting an `aria-label` because some
511
+ // screen readers (notably VoiceOver) will read both the column header *and* the button's label
512
+ // for every *cell* in the table, creating a lot of unnecessary noise.
513
+ // If _sortButton is undefined, the component hasn't been initialized yet so there's
514
+ // nothing to update in the DOM.
515
+ if (this._sortButton) {
516
+ // removeDescription will no-op if there is no existing message.
517
+ // TODO(jelbourn): remove optional chaining when AriaDescriber is required.
518
+ (_a = this._ariaDescriber) === null || _a === void 0 ? void 0 : _a.removeDescription(this._sortButton, this._sortActionDescription);
519
+ (_b = this._ariaDescriber) === null || _b === void 0 ? void 0 : _b.describe(this._sortButton, newDescription);
520
+ }
521
+ this._sortActionDescription = newDescription;
522
+ }
501
523
  /** Handles changes in the sorting state. */
502
524
  _handleStateChanges() {
503
- this._rerenderSubscription =
504
- merge(this._sort.sortChange, this._sort._stateChanges, this._intl.changes).subscribe(() => {
505
- if (this._isSorted()) {
506
- this._updateArrowDirection();
507
- // Do not show the animation if the header was already shown in the right position.
508
- if (this._viewState.toState === 'hint' || this._viewState.toState === 'active') {
509
- this._disableViewStateAnimation = true;
510
- }
511
- this._setAnimationTransitionState({ fromState: this._arrowDirection, toState: 'active' });
512
- this._showIndicatorHint = false;
513
- }
514
- // If this header was recently active and now no longer sorted, animate away the arrow.
515
- if (!this._isSorted() && this._viewState && this._viewState.toState === 'active') {
516
- this._disableViewStateAnimation = false;
517
- this._setAnimationTransitionState({ fromState: 'active', toState: this._arrowDirection });
525
+ this._rerenderSubscription = merge(this._sort.sortChange, this._sort._stateChanges, this._intl.changes).subscribe(() => {
526
+ if (this._isSorted()) {
527
+ this._updateArrowDirection();
528
+ // Do not show the animation if the header was already shown in the right position.
529
+ if (this._viewState.toState === 'hint' || this._viewState.toState === 'active') {
530
+ this._disableViewStateAnimation = true;
518
531
  }
519
- this._changeDetectorRef.markForCheck();
520
- });
532
+ this._setAnimationTransitionState({ fromState: this._arrowDirection, toState: 'active' });
533
+ this._showIndicatorHint = false;
534
+ }
535
+ // If this header was recently active and now no longer sorted, animate away the arrow.
536
+ if (!this._isSorted() && this._viewState && this._viewState.toState === 'active') {
537
+ this._disableViewStateAnimation = false;
538
+ this._setAnimationTransitionState({ fromState: 'active', toState: this._arrowDirection });
539
+ }
540
+ this._changeDetectorRef.markForCheck();
541
+ });
521
542
  }
522
543
  }
523
- MatSortHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSortHeader, deps: [{ token: MatSortHeaderIntl }, { token: i0.ChangeDetectorRef }, { token: MatSort, optional: true }, { token: 'MAT_SORT_HEADER_COLUMN_DEF', optional: true }, { token: i3.FocusMonitor }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
524
- MatSortHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-next.15", type: MatSortHeader, selector: "[mat-sort-header]", inputs: { disabled: "disabled", id: ["mat-sort-header", "id"], arrowPosition: "arrowPosition", start: "start", disableClear: "disableClear" }, host: { listeners: { "click": "_handleClick()", "keydown": "_handleKeydown($event)", "mouseenter": "_setIndicatorHintVisible(true)", "mouseleave": "_setIndicatorHintVisible(false)" }, properties: { "attr.aria-sort": "_getAriaSortAttribute()", "class.mat-sort-header-disabled": "_isDisabled()" }, classAttribute: "mat-sort-header" }, exportAs: ["matSortHeader"], usesInheritance: true, ngImport: i0, template: "<!--\n We set the `tabindex` on an element inside the table header, rather than the header itself,\n because of a bug in NVDA where having a `tabindex` on a `th` breaks keyboard navigation in the\n table (see https://github.com/nvaccess/nvda/issues/7718). This allows for the header to both\n be focusable, and have screen readers read out its `aria-sort` state. We prefer this approach\n over having a button with an `aria-label` inside the header, because the button's `aria-label`\n will be read out as the user is navigating the table's cell (see #13012).\n\n The approach is based off of: https://dequeuniversity.com/library/aria/tables/sf-sortable-grid\n-->\n<div class=\"mat-sort-header-container mat-focus-indicator\"\n [class.mat-sort-header-sorted]=\"_isSorted()\"\n [class.mat-sort-header-position-before]=\"arrowPosition == 'before'\"\n [attr.tabindex]=\"_isDisabled() ? null : 0\"\n role=\"button\">\n\n <!--\n TODO(crisbeto): this div isn't strictly necessary, but we have to keep it due to a large\n number of screenshot diff failures. It should be removed eventually. Note that the difference\n isn't visible with a shorter header, but once it breaks up into multiple lines, this element\n causes it to be center-aligned, whereas removing it will keep the text to the left.\n -->\n <div class=\"mat-sort-header-content\">\n <ng-content></ng-content>\n </div>\n\n <!-- Disable animations while a current animation is running -->\n <div class=\"mat-sort-header-arrow\"\n *ngIf=\"_renderArrow()\"\n [@arrowOpacity]=\"_getArrowViewState()\"\n [@arrowPosition]=\"_getArrowViewState()\"\n [@allowChildren]=\"_getArrowDirectionState()\"\n (@arrowPosition.start)=\"_disableViewStateAnimation = true\"\n (@arrowPosition.done)=\"_disableViewStateAnimation = false\">\n <div class=\"mat-sort-header-stem\"></div>\n <div class=\"mat-sort-header-indicator\" [@indicator]=\"_getArrowDirectionState()\">\n <div class=\"mat-sort-header-pointer-left\" [@leftPointer]=\"_getArrowDirectionState()\"></div>\n <div class=\"mat-sort-header-pointer-right\" [@rightPointer]=\"_getArrowDirectionState()\"></div>\n <div class=\"mat-sort-header-pointer-middle\"></div>\n </div>\n </div>\n</div>\n", styles: [".mat-sort-header-container{display:flex;cursor:pointer;align-items:center;letter-spacing:normal;outline:0}[mat-sort-header].cdk-keyboard-focused .mat-sort-header-container,[mat-sort-header].cdk-program-focused .mat-sort-header-container{border-bottom:solid 1px currentColor}.mat-sort-header-disabled .mat-sort-header-container{cursor:default}.mat-sort-header-content{text-align:center;display:flex;align-items:center}.mat-sort-header-position-before{flex-direction:row-reverse}.mat-sort-header-arrow{height:12px;width:12px;min-width:12px;position:relative;display:flex;opacity:0}.mat-sort-header-arrow,[dir=rtl] .mat-sort-header-position-before .mat-sort-header-arrow{margin:0 0 0 6px}.mat-sort-header-position-before .mat-sort-header-arrow,[dir=rtl] .mat-sort-header-arrow{margin:0 6px 0 0}.mat-sort-header-stem{background:currentColor;height:10px;width:2px;margin:auto;display:flex;align-items:center}.cdk-high-contrast-active .mat-sort-header-stem{width:0;border-left:solid 2px}.mat-sort-header-indicator{width:100%;height:2px;display:flex;align-items:center;position:absolute;top:0;left:0}.mat-sort-header-pointer-middle{margin:auto;height:2px;width:2px;background:currentColor;transform:rotate(45deg)}.cdk-high-contrast-active .mat-sort-header-pointer-middle{width:0;height:0;border-top:solid 2px;border-left:solid 2px}.mat-sort-header-pointer-left,.mat-sort-header-pointer-right{background:currentColor;width:6px;height:2px;position:absolute;top:0}.cdk-high-contrast-active .mat-sort-header-pointer-left,.cdk-high-contrast-active .mat-sort-header-pointer-right{width:0;height:0;border-left:solid 6px;border-top:solid 2px}.mat-sort-header-pointer-left{transform-origin:right;left:0}.mat-sort-header-pointer-right{transform-origin:left;right:0}\n"], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
544
+ MatSortHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSortHeader, deps: [{ token: MatSortHeaderIntl }, { token: i0.ChangeDetectorRef }, { token: MatSort, optional: true }, { token: 'MAT_SORT_HEADER_COLUMN_DEF', optional: true }, { token: i3.FocusMonitor }, { token: i0.ElementRef }, { token: i3.AriaDescriber, optional: true }], target: i0.ɵɵFactoryTarget.Component });
545
+ MatSortHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0-rc.3", type: MatSortHeader, selector: "[mat-sort-header]", inputs: { disabled: "disabled", id: ["mat-sort-header", "id"], arrowPosition: "arrowPosition", start: "start", sortActionDescription: "sortActionDescription", disableClear: "disableClear" }, host: { listeners: { "click": "_handleClick()", "keydown": "_handleKeydown($event)", "mouseenter": "_setIndicatorHintVisible(true)", "mouseleave": "_setIndicatorHintVisible(false)" }, properties: { "attr.aria-sort": "_getAriaSortAttribute()", "class.mat-sort-header-disabled": "_isDisabled()" }, classAttribute: "mat-sort-header" }, exportAs: ["matSortHeader"], usesInheritance: true, ngImport: i0, template: "<!--\n We set the `tabindex` on an element inside the table header, rather than the header itself,\n because of a bug in NVDA where having a `tabindex` on a `th` breaks keyboard navigation in the\n table (see https://github.com/nvaccess/nvda/issues/7718). This allows for the header to both\n be focusable, and have screen readers read out its `aria-sort` state. We prefer this approach\n over having a button with an `aria-label` inside the header, because the button's `aria-label`\n will be read out as the user is navigating the table's cell (see #13012).\n\n The approach is based off of: https://dequeuniversity.com/library/aria/tables/sf-sortable-grid\n-->\n<div class=\"mat-sort-header-container mat-focus-indicator\"\n [class.mat-sort-header-sorted]=\"_isSorted()\"\n [class.mat-sort-header-position-before]=\"arrowPosition == 'before'\"\n [attr.tabindex]=\"_isDisabled() ? null : 0\"\n role=\"button\">\n\n <!--\n TODO(crisbeto): this div isn't strictly necessary, but we have to keep it due to a large\n number of screenshot diff failures. It should be removed eventually. Note that the difference\n isn't visible with a shorter header, but once it breaks up into multiple lines, this element\n causes it to be center-aligned, whereas removing it will keep the text to the left.\n -->\n <div class=\"mat-sort-header-content\">\n <ng-content></ng-content>\n </div>\n\n <!-- Disable animations while a current animation is running -->\n <div class=\"mat-sort-header-arrow\"\n *ngIf=\"_renderArrow()\"\n [@arrowOpacity]=\"_getArrowViewState()\"\n [@arrowPosition]=\"_getArrowViewState()\"\n [@allowChildren]=\"_getArrowDirectionState()\"\n (@arrowPosition.start)=\"_disableViewStateAnimation = true\"\n (@arrowPosition.done)=\"_disableViewStateAnimation = false\">\n <div class=\"mat-sort-header-stem\"></div>\n <div class=\"mat-sort-header-indicator\" [@indicator]=\"_getArrowDirectionState()\">\n <div class=\"mat-sort-header-pointer-left\" [@leftPointer]=\"_getArrowDirectionState()\"></div>\n <div class=\"mat-sort-header-pointer-right\" [@rightPointer]=\"_getArrowDirectionState()\"></div>\n <div class=\"mat-sort-header-pointer-middle\"></div>\n </div>\n </div>\n</div>\n", styles: [".mat-sort-header-container{display:flex;cursor:pointer;align-items:center;letter-spacing:normal;outline:0}[mat-sort-header].cdk-keyboard-focused .mat-sort-header-container,[mat-sort-header].cdk-program-focused .mat-sort-header-container{border-bottom:solid 1px currentColor}.mat-sort-header-disabled .mat-sort-header-container{cursor:default}.mat-sort-header-content{text-align:center;display:flex;align-items:center}.mat-sort-header-position-before{flex-direction:row-reverse}.mat-sort-header-arrow{height:12px;width:12px;min-width:12px;position:relative;display:flex;opacity:0}.mat-sort-header-arrow,[dir=rtl] .mat-sort-header-position-before .mat-sort-header-arrow{margin:0 0 0 6px}.mat-sort-header-position-before .mat-sort-header-arrow,[dir=rtl] .mat-sort-header-arrow{margin:0 6px 0 0}.mat-sort-header-stem{background:currentColor;height:10px;width:2px;margin:auto;display:flex;align-items:center}.cdk-high-contrast-active .mat-sort-header-stem{width:0;border-left:solid 2px}.mat-sort-header-indicator{width:100%;height:2px;display:flex;align-items:center;position:absolute;top:0;left:0}.mat-sort-header-pointer-middle{margin:auto;height:2px;width:2px;background:currentColor;transform:rotate(45deg)}.cdk-high-contrast-active .mat-sort-header-pointer-middle{width:0;height:0;border-top:solid 2px;border-left:solid 2px}.mat-sort-header-pointer-left,.mat-sort-header-pointer-right{background:currentColor;width:6px;height:2px;position:absolute;top:0}.cdk-high-contrast-active .mat-sort-header-pointer-left,.cdk-high-contrast-active .mat-sort-header-pointer-right{width:0;height:0;border-left:solid 6px;border-top:solid 2px}.mat-sort-header-pointer-left{transform-origin:right;left:0}.mat-sort-header-pointer-right{transform-origin:left;right:0}\n"], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
525
546
  matSortAnimations.indicator,
526
547
  matSortAnimations.leftPointer,
527
548
  matSortAnimations.rightPointer,
@@ -529,7 +550,7 @@ MatSortHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
529
550
  matSortAnimations.arrowPosition,
530
551
  matSortAnimations.allowChildren,
531
552
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
532
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSortHeader, decorators: [{
553
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSortHeader, decorators: [{
533
554
  type: Component,
534
555
  args: [{ selector: '[mat-sort-header]', exportAs: 'matSortHeader', host: {
535
556
  'class': 'mat-sort-header',
@@ -555,7 +576,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
555
576
  args: ['MAT_SORT_HEADER_COLUMN_DEF']
556
577
  }, {
557
578
  type: Optional
558
- }] }, { type: i3.FocusMonitor }, { type: i0.ElementRef }];
579
+ }] }, { type: i3.FocusMonitor }, { type: i0.ElementRef }, { type: i3.AriaDescriber, decorators: [{
580
+ type: Optional
581
+ }] }];
559
582
  }, propDecorators: { id: [{
560
583
  type: Input,
561
584
  args: ['mat-sort-header']
@@ -563,6 +586,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
563
586
  type: Input
564
587
  }], start: [{
565
588
  type: Input
589
+ }], sortActionDescription: [{
590
+ type: Input
566
591
  }], disableClear: [{
567
592
  type: Input
568
593
  }] } });
@@ -576,16 +601,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
576
601
  */
577
602
  class MatSortModule {
578
603
  }
579
- MatSortModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSortModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
580
- MatSortModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSortModule, declarations: [MatSort, MatSortHeader], imports: [CommonModule, MatCommonModule], exports: [MatSort, MatSortHeader] });
581
- MatSortModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSortModule, providers: [MAT_SORT_HEADER_INTL_PROVIDER], imports: [[CommonModule, MatCommonModule]] });
582
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: MatSortModule, decorators: [{
604
+ MatSortModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSortModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
605
+ MatSortModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSortModule, declarations: [MatSort, MatSortHeader], imports: [CommonModule, MatCommonModule], exports: [MatSort, MatSortHeader] });
606
+ MatSortModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSortModule, providers: [MAT_SORT_HEADER_INTL_PROVIDER], imports: [[CommonModule, MatCommonModule]] });
607
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ngImport: i0, type: MatSortModule, decorators: [{
583
608
  type: NgModule,
584
609
  args: [{
585
610
  imports: [CommonModule, MatCommonModule],
586
611
  exports: [MatSort, MatSortHeader],
587
612
  declarations: [MatSort, MatSortHeader],
588
- providers: [MAT_SORT_HEADER_INTL_PROVIDER]
613
+ providers: [MAT_SORT_HEADER_INTL_PROVIDER],
589
614
  }]
590
615
  }] });
591
616
 
@@ -597,6 +622,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-next.15",
597
622
  * found in the LICENSE file at https://angular.io/license
598
623
  */
599
624
 
625
+ /**
626
+ * @license
627
+ * Copyright Google LLC All Rights Reserved.
628
+ *
629
+ * Use of this source code is governed by an MIT-style license that can be
630
+ * found in the LICENSE file at https://angular.io/license
631
+ */
632
+
600
633
  /**
601
634
  * Generated bundle index. Do not edit.
602
635
  */