@angular/material 14.0.0-next.3 → 14.0.0-next.6

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 (457) hide show
  1. package/autocomplete/autocomplete-trigger.d.ts +14 -3
  2. package/autocomplete/autocomplete.d.ts +7 -1
  3. package/button-toggle/_button-toggle-theme.scss +14 -2
  4. package/checkbox/_checkbox-theme.scss +1 -1
  5. package/chips/chip-list.d.ts +15 -3
  6. package/chips/chip.d.ts +3 -1
  7. package/core/common-behaviors/error-state.d.ts +1 -2
  8. package/core/ripple/ripple-ref.d.ts +2 -1
  9. package/core/ripple/ripple-renderer.d.ts +9 -2
  10. package/core/theming/_theming.scss +9 -0
  11. package/datepicker/date-range-input-parts.d.ts +4 -1
  12. package/dialog/dialog-config.d.ts +2 -0
  13. package/dialog/dialog-container.d.ts +1 -4
  14. package/dialog/dialog.d.ts +12 -6
  15. package/dialog/testing/dialog-opener.d.ts +33 -0
  16. package/dialog/testing/public-api.d.ts +1 -0
  17. package/esm2020/autocomplete/autocomplete-module.mjs +5 -5
  18. package/esm2020/autocomplete/autocomplete-origin.mjs +7 -7
  19. package/esm2020/autocomplete/autocomplete-trigger.mjs +72 -38
  20. package/esm2020/autocomplete/autocomplete.mjs +18 -8
  21. package/esm2020/autocomplete/testing/autocomplete-harness.mjs +7 -1
  22. package/esm2020/badge/badge-module.mjs +5 -5
  23. package/esm2020/badge/badge.mjs +4 -4
  24. package/esm2020/bottom-sheet/bottom-sheet-animations.mjs +10 -4
  25. package/esm2020/bottom-sheet/bottom-sheet-container.mjs +4 -4
  26. package/esm2020/bottom-sheet/bottom-sheet-module.mjs +5 -5
  27. package/esm2020/bottom-sheet/bottom-sheet.mjs +4 -4
  28. package/esm2020/button/button-module.mjs +5 -5
  29. package/esm2020/button/button.mjs +8 -8
  30. package/esm2020/button-toggle/button-toggle-module.mjs +5 -5
  31. package/esm2020/button-toggle/button-toggle.mjs +8 -8
  32. package/esm2020/card/card-module.mjs +5 -5
  33. package/esm2020/card/card.mjs +43 -43
  34. package/esm2020/checkbox/checkbox-module.mjs +9 -9
  35. package/esm2020/checkbox/checkbox-required-validator.mjs +4 -4
  36. package/esm2020/checkbox/checkbox.mjs +6 -4
  37. package/esm2020/chips/chip-input.mjs +4 -4
  38. package/esm2020/chips/chip-list.mjs +24 -6
  39. package/esm2020/chips/chip.mjs +18 -14
  40. package/esm2020/chips/chips-module.mjs +5 -5
  41. package/esm2020/core/common-behaviors/common-module.mjs +5 -5
  42. package/esm2020/core/common-behaviors/error-state.mjs +1 -8
  43. package/esm2020/core/datetime/index.mjs +9 -9
  44. package/esm2020/core/datetime/native-date-adapter.mjs +4 -4
  45. package/esm2020/core/error/error-options.mjs +7 -7
  46. package/esm2020/core/line/line.mjs +8 -8
  47. package/esm2020/core/option/index.mjs +5 -5
  48. package/esm2020/core/option/optgroup.mjs +7 -7
  49. package/esm2020/core/option/option.mjs +7 -7
  50. package/esm2020/core/ripple/index.mjs +5 -5
  51. package/esm2020/core/ripple/ripple-ref.mjs +5 -2
  52. package/esm2020/core/ripple/ripple-renderer.mjs +88 -47
  53. package/esm2020/core/ripple/ripple.mjs +4 -4
  54. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +5 -5
  55. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  56. package/esm2020/core/version.mjs +1 -1
  57. package/esm2020/datepicker/calendar-body.mjs +4 -4
  58. package/esm2020/datepicker/calendar.mjs +13 -13
  59. package/esm2020/datepicker/date-range-input-parts.mjs +10 -10
  60. package/esm2020/datepicker/date-range-input.mjs +4 -4
  61. package/esm2020/datepicker/date-range-picker.mjs +4 -4
  62. package/esm2020/datepicker/date-range-selection-strategy.mjs +4 -4
  63. package/esm2020/datepicker/date-selection-model.mjs +10 -10
  64. package/esm2020/datepicker/datepicker-actions.mjs +10 -10
  65. package/esm2020/datepicker/datepicker-base.mjs +7 -7
  66. package/esm2020/datepicker/datepicker-input-base.mjs +12 -7
  67. package/esm2020/datepicker/datepicker-input.mjs +4 -4
  68. package/esm2020/datepicker/datepicker-intl.mjs +4 -4
  69. package/esm2020/datepicker/datepicker-module.mjs +5 -5
  70. package/esm2020/datepicker/datepicker-toggle.mjs +7 -7
  71. package/esm2020/datepicker/datepicker.mjs +4 -4
  72. package/esm2020/datepicker/month-view.mjs +4 -4
  73. package/esm2020/datepicker/multi-year-view.mjs +4 -4
  74. package/esm2020/datepicker/year-view.mjs +4 -4
  75. package/esm2020/dialog/dialog-animations.mjs +10 -4
  76. package/esm2020/dialog/dialog-config.mjs +3 -1
  77. package/esm2020/dialog/dialog-container.mjs +20 -20
  78. package/esm2020/dialog/dialog-content-directives.mjs +13 -13
  79. package/esm2020/dialog/dialog-module.mjs +5 -5
  80. package/esm2020/dialog/dialog.mjs +21 -37
  81. package/esm2020/dialog/testing/dialog-opener.mjs +67 -0
  82. package/esm2020/dialog/testing/public-api.mjs +2 -1
  83. package/esm2020/divider/divider-module.mjs +5 -5
  84. package/esm2020/divider/divider.mjs +4 -4
  85. package/esm2020/expansion/accordion.mjs +4 -4
  86. package/esm2020/expansion/expansion-module.mjs +5 -5
  87. package/esm2020/expansion/expansion-panel-base.mjs +14 -0
  88. package/esm2020/expansion/expansion-panel-content.mjs +14 -7
  89. package/esm2020/expansion/expansion-panel-header.mjs +10 -10
  90. package/esm2020/expansion/expansion-panel.mjs +13 -10
  91. package/esm2020/expansion/public-api.mjs +2 -1
  92. package/esm2020/form-field/error.mjs +4 -4
  93. package/esm2020/form-field/form-field-control.mjs +4 -4
  94. package/esm2020/form-field/form-field-module.mjs +5 -5
  95. package/esm2020/form-field/form-field.mjs +16 -11
  96. package/esm2020/form-field/hint.mjs +4 -4
  97. package/esm2020/form-field/label.mjs +4 -4
  98. package/esm2020/form-field/placeholder.mjs +4 -4
  99. package/esm2020/form-field/prefix.mjs +4 -4
  100. package/esm2020/form-field/suffix.mjs +4 -4
  101. package/esm2020/grid-list/grid-list-module.mjs +5 -5
  102. package/esm2020/grid-list/grid-list.mjs +4 -4
  103. package/esm2020/grid-list/grid-tile.mjs +16 -16
  104. package/esm2020/icon/icon-module.mjs +5 -5
  105. package/esm2020/icon/icon-registry.mjs +12 -14
  106. package/esm2020/icon/icon.mjs +30 -20
  107. package/esm2020/icon/testing/fake-icon-registry.mjs +9 -9
  108. package/esm2020/input/input-module.mjs +5 -5
  109. package/esm2020/input/input.mjs +16 -6
  110. package/esm2020/list/list-module.mjs +5 -5
  111. package/esm2020/list/list.mjs +19 -21
  112. package/esm2020/list/selection-list.mjs +13 -36
  113. package/esm2020/list/testing/list-item-harness-base.mjs +1 -9
  114. package/esm2020/menu/menu-content.mjs +7 -7
  115. package/esm2020/menu/menu-errors.mjs +1 -12
  116. package/esm2020/menu/menu-item.mjs +8 -4
  117. package/esm2020/menu/menu-module.mjs +5 -5
  118. package/esm2020/menu/menu-trigger.mjs +62 -64
  119. package/esm2020/menu/menu.mjs +24 -8
  120. package/esm2020/paginator/paginator-intl.mjs +4 -4
  121. package/esm2020/paginator/paginator-module.mjs +5 -5
  122. package/esm2020/paginator/paginator.mjs +12 -8
  123. package/esm2020/progress-bar/progress-bar-module.mjs +5 -5
  124. package/esm2020/progress-bar/progress-bar.mjs +4 -4
  125. package/esm2020/progress-spinner/progress-spinner-module.mjs +8 -8
  126. package/esm2020/progress-spinner/progress-spinner.mjs +10 -50
  127. package/esm2020/progress-spinner/public-api.mjs +10 -2
  128. package/esm2020/radio/radio-module.mjs +5 -5
  129. package/esm2020/radio/radio.mjs +14 -14
  130. package/esm2020/select/select-module.mjs +5 -5
  131. package/esm2020/select/select.mjs +36 -14
  132. package/esm2020/sidenav/drawer.mjs +12 -12
  133. package/esm2020/sidenav/sidenav-module.mjs +5 -5
  134. package/esm2020/sidenav/sidenav.mjs +12 -12
  135. package/esm2020/slide-toggle/slide-toggle-module.mjs +9 -9
  136. package/esm2020/slide-toggle/slide-toggle-required-validator.mjs +4 -4
  137. package/esm2020/slide-toggle/slide-toggle.mjs +5 -4
  138. package/esm2020/slider/slider-module.mjs +5 -5
  139. package/esm2020/slider/slider.mjs +4 -4
  140. package/esm2020/snack-bar/simple-snack-bar.mjs +4 -4
  141. package/esm2020/snack-bar/snack-bar-container.mjs +4 -4
  142. package/esm2020/snack-bar/snack-bar-module.mjs +5 -5
  143. package/esm2020/snack-bar/snack-bar.mjs +7 -7
  144. package/esm2020/sort/sort-header-intl.mjs +4 -4
  145. package/esm2020/sort/sort-header.mjs +16 -8
  146. package/esm2020/sort/sort-module.mjs +5 -5
  147. package/esm2020/sort/sort.mjs +4 -4
  148. package/esm2020/stepper/step-content.mjs +4 -4
  149. package/esm2020/stepper/step-header.mjs +4 -4
  150. package/esm2020/stepper/step-label.mjs +4 -4
  151. package/esm2020/stepper/stepper-button.mjs +7 -7
  152. package/esm2020/stepper/stepper-icon.mjs +4 -4
  153. package/esm2020/stepper/stepper-intl.mjs +4 -4
  154. package/esm2020/stepper/stepper-module.mjs +6 -10
  155. package/esm2020/stepper/stepper.mjs +12 -62
  156. package/esm2020/table/cell.mjs +22 -22
  157. package/esm2020/table/row.mjs +22 -22
  158. package/esm2020/table/table-module.mjs +5 -5
  159. package/esm2020/table/table.mjs +7 -7
  160. package/esm2020/table/text-column.mjs +4 -4
  161. package/esm2020/tabs/ink-bar.mjs +4 -4
  162. package/esm2020/tabs/paginated-tab-header.mjs +4 -4
  163. package/esm2020/tabs/tab-body.mjs +10 -10
  164. package/esm2020/tabs/tab-content.mjs +4 -4
  165. package/esm2020/tabs/tab-group.mjs +7 -7
  166. package/esm2020/tabs/tab-header.mjs +8 -8
  167. package/esm2020/tabs/tab-label-wrapper.mjs +4 -4
  168. package/esm2020/tabs/tab-label.mjs +4 -4
  169. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +16 -16
  170. package/esm2020/tabs/tab.mjs +4 -4
  171. package/esm2020/tabs/tabs-module.mjs +5 -5
  172. package/esm2020/toolbar/toolbar-module.mjs +5 -5
  173. package/esm2020/toolbar/toolbar.mjs +7 -7
  174. package/esm2020/tooltip/testing/tooltip-harness.mjs +12 -7
  175. package/esm2020/tooltip/tooltip-module.mjs +5 -5
  176. package/esm2020/tooltip/tooltip.mjs +126 -51
  177. package/esm2020/tree/node.mjs +10 -10
  178. package/esm2020/tree/outlet.mjs +4 -4
  179. package/esm2020/tree/padding.mjs +4 -4
  180. package/esm2020/tree/toggle.mjs +4 -4
  181. package/esm2020/tree/tree-module.mjs +5 -5
  182. package/esm2020/tree/tree.mjs +4 -4
  183. package/expansion/expansion-panel-base.d.ts +22 -0
  184. package/expansion/expansion-panel-content.d.ts +4 -2
  185. package/expansion/public-api.d.ts +1 -0
  186. package/fesm2015/autocomplete/testing.mjs +6 -0
  187. package/fesm2015/autocomplete/testing.mjs.map +1 -1
  188. package/fesm2015/autocomplete.mjs +100 -55
  189. package/fesm2015/autocomplete.mjs.map +1 -1
  190. package/fesm2015/badge/testing.mjs.map +1 -1
  191. package/fesm2015/badge.mjs +7 -7
  192. package/fesm2015/badge.mjs.map +1 -1
  193. package/fesm2015/bottom-sheet/testing.mjs.map +1 -1
  194. package/fesm2015/bottom-sheet.mjs +19 -13
  195. package/fesm2015/bottom-sheet.mjs.map +1 -1
  196. package/fesm2015/button/testing.mjs.map +1 -1
  197. package/fesm2015/button-toggle/testing.mjs.map +1 -1
  198. package/fesm2015/button-toggle.mjs +11 -11
  199. package/fesm2015/button-toggle.mjs.map +1 -1
  200. package/fesm2015/button.mjs +11 -11
  201. package/fesm2015/button.mjs.map +1 -1
  202. package/fesm2015/card/testing.mjs.map +1 -1
  203. package/fesm2015/card.mjs +46 -46
  204. package/fesm2015/card.mjs.map +1 -1
  205. package/fesm2015/checkbox/testing.mjs.map +1 -1
  206. package/fesm2015/checkbox.mjs +16 -14
  207. package/fesm2015/checkbox.mjs.map +1 -1
  208. package/fesm2015/chips/testing.mjs.map +1 -1
  209. package/fesm2015/chips.mjs +47 -25
  210. package/fesm2015/chips.mjs.map +1 -1
  211. package/fesm2015/core/testing.mjs.map +1 -1
  212. package/fesm2015/core.mjs +151 -113
  213. package/fesm2015/core.mjs.map +1 -1
  214. package/fesm2015/datepicker/testing.mjs.map +1 -1
  215. package/fesm2015/datepicker.mjs +94 -89
  216. package/fesm2015/datepicker.mjs.map +1 -1
  217. package/fesm2015/dialog/testing.mjs +65 -2
  218. package/fesm2015/dialog/testing.mjs.map +1 -1
  219. package/fesm2015/dialog.mjs +66 -74
  220. package/fesm2015/dialog.mjs.map +1 -1
  221. package/fesm2015/divider/testing.mjs.map +1 -1
  222. package/fesm2015/divider.mjs +7 -7
  223. package/fesm2015/divider.mjs.map +1 -1
  224. package/fesm2015/expansion/testing.mjs.map +1 -1
  225. package/fesm2015/expansion.mjs +55 -32
  226. package/fesm2015/expansion.mjs.map +1 -1
  227. package/fesm2015/form-field/testing/control.mjs.map +1 -1
  228. package/fesm2015/form-field/testing.mjs.map +1 -1
  229. package/fesm2015/form-field.mjs +41 -35
  230. package/fesm2015/form-field.mjs.map +1 -1
  231. package/fesm2015/grid-list/testing.mjs.map +1 -1
  232. package/fesm2015/grid-list.mjs +22 -22
  233. package/fesm2015/grid-list.mjs.map +1 -1
  234. package/fesm2015/icon/testing.mjs +8 -8
  235. package/fesm2015/icon/testing.mjs.map +1 -1
  236. package/fesm2015/icon.mjs +44 -36
  237. package/fesm2015/icon.mjs.map +1 -1
  238. package/fesm2015/input/testing.mjs.map +1 -1
  239. package/fesm2015/input.mjs +19 -9
  240. package/fesm2015/input.mjs.map +1 -1
  241. package/fesm2015/list/testing.mjs +0 -10
  242. package/fesm2015/list/testing.mjs.map +1 -1
  243. package/fesm2015/list.mjs +37 -63
  244. package/fesm2015/list.mjs.map +1 -1
  245. package/fesm2015/material.mjs.map +1 -1
  246. package/fesm2015/menu/testing.mjs.map +1 -1
  247. package/fesm2015/menu.mjs +103 -93
  248. package/fesm2015/menu.mjs.map +1 -1
  249. package/fesm2015/paginator/testing.mjs.map +1 -1
  250. package/fesm2015/paginator.mjs +18 -14
  251. package/fesm2015/paginator.mjs.map +1 -1
  252. package/fesm2015/progress-bar/testing.mjs.map +1 -1
  253. package/fesm2015/progress-bar.mjs +7 -7
  254. package/fesm2015/progress-bar.mjs.map +1 -1
  255. package/fesm2015/progress-spinner/testing.mjs.map +1 -1
  256. package/fesm2015/progress-spinner.mjs +27 -62
  257. package/fesm2015/progress-spinner.mjs.map +1 -1
  258. package/fesm2015/radio/testing.mjs.map +1 -1
  259. package/fesm2015/radio.mjs +17 -17
  260. package/fesm2015/radio.mjs.map +1 -1
  261. package/fesm2015/select/testing.mjs.map +1 -1
  262. package/fesm2015/select.mjs +39 -17
  263. package/fesm2015/select.mjs.map +1 -1
  264. package/fesm2015/sidenav/testing.mjs.map +1 -1
  265. package/fesm2015/sidenav.mjs +26 -26
  266. package/fesm2015/sidenav.mjs.map +1 -1
  267. package/fesm2015/slide-toggle/testing.mjs.map +1 -1
  268. package/fesm2015/slide-toggle.mjs +15 -14
  269. package/fesm2015/slide-toggle.mjs.map +1 -1
  270. package/fesm2015/slider/testing.mjs.map +1 -1
  271. package/fesm2015/slider.mjs +7 -7
  272. package/fesm2015/slider.mjs.map +1 -1
  273. package/fesm2015/snack-bar/testing.mjs.map +1 -1
  274. package/fesm2015/snack-bar.mjs +16 -16
  275. package/fesm2015/snack-bar.mjs.map +1 -1
  276. package/fesm2015/sort/testing.mjs.map +1 -1
  277. package/fesm2015/sort.mjs +128 -120
  278. package/fesm2015/sort.mjs.map +1 -1
  279. package/fesm2015/stepper/testing.mjs.map +1 -1
  280. package/fesm2015/stepper.mjs +37 -90
  281. package/fesm2015/stepper.mjs.map +1 -1
  282. package/fesm2015/table/testing.mjs.map +1 -1
  283. package/fesm2015/table.mjs +55 -55
  284. package/fesm2015/table.mjs.map +1 -1
  285. package/fesm2015/tabs/testing.mjs.map +1 -1
  286. package/fesm2015/tabs.mjs +59 -59
  287. package/fesm2015/tabs.mjs.map +1 -1
  288. package/fesm2015/toolbar/testing.mjs.map +1 -1
  289. package/fesm2015/toolbar.mjs +10 -10
  290. package/fesm2015/toolbar.mjs.map +1 -1
  291. package/fesm2015/tooltip/testing.mjs +11 -8
  292. package/fesm2015/tooltip/testing.mjs.map +1 -1
  293. package/fesm2015/tooltip.mjs +154 -79
  294. package/fesm2015/tooltip.mjs.map +1 -1
  295. package/fesm2015/tree/testing.mjs.map +1 -1
  296. package/fesm2015/tree.mjs +25 -25
  297. package/fesm2015/tree.mjs.map +1 -1
  298. package/fesm2020/autocomplete/testing.mjs +6 -0
  299. package/fesm2020/autocomplete/testing.mjs.map +1 -1
  300. package/fesm2020/autocomplete.mjs +99 -55
  301. package/fesm2020/autocomplete.mjs.map +1 -1
  302. package/fesm2020/badge/testing.mjs.map +1 -1
  303. package/fesm2020/badge.mjs +7 -7
  304. package/fesm2020/badge.mjs.map +1 -1
  305. package/fesm2020/bottom-sheet/testing.mjs.map +1 -1
  306. package/fesm2020/bottom-sheet.mjs +19 -13
  307. package/fesm2020/bottom-sheet.mjs.map +1 -1
  308. package/fesm2020/button/testing.mjs.map +1 -1
  309. package/fesm2020/button-toggle/testing.mjs.map +1 -1
  310. package/fesm2020/button-toggle.mjs +11 -11
  311. package/fesm2020/button-toggle.mjs.map +1 -1
  312. package/fesm2020/button.mjs +11 -11
  313. package/fesm2020/button.mjs.map +1 -1
  314. package/fesm2020/card/testing.mjs.map +1 -1
  315. package/fesm2020/card.mjs +46 -46
  316. package/fesm2020/card.mjs.map +1 -1
  317. package/fesm2020/checkbox/testing.mjs.map +1 -1
  318. package/fesm2020/checkbox.mjs +16 -14
  319. package/fesm2020/checkbox.mjs.map +1 -1
  320. package/fesm2020/chips/testing.mjs.map +1 -1
  321. package/fesm2020/chips.mjs +47 -25
  322. package/fesm2020/chips.mjs.map +1 -1
  323. package/fesm2020/core/testing.mjs.map +1 -1
  324. package/fesm2020/core.mjs +151 -113
  325. package/fesm2020/core.mjs.map +1 -1
  326. package/fesm2020/datepicker/testing.mjs.map +1 -1
  327. package/fesm2020/datepicker.mjs +94 -89
  328. package/fesm2020/datepicker.mjs.map +1 -1
  329. package/fesm2020/dialog/testing.mjs +65 -1
  330. package/fesm2020/dialog/testing.mjs.map +1 -1
  331. package/fesm2020/dialog.mjs +66 -74
  332. package/fesm2020/dialog.mjs.map +1 -1
  333. package/fesm2020/divider/testing.mjs.map +1 -1
  334. package/fesm2020/divider.mjs +7 -7
  335. package/fesm2020/divider.mjs.map +1 -1
  336. package/fesm2020/expansion/testing.mjs.map +1 -1
  337. package/fesm2020/expansion.mjs +53 -32
  338. package/fesm2020/expansion.mjs.map +1 -1
  339. package/fesm2020/form-field/testing/control.mjs.map +1 -1
  340. package/fesm2020/form-field/testing.mjs.map +1 -1
  341. package/fesm2020/form-field.mjs +40 -35
  342. package/fesm2020/form-field.mjs.map +1 -1
  343. package/fesm2020/grid-list/testing.mjs.map +1 -1
  344. package/fesm2020/grid-list.mjs +22 -22
  345. package/fesm2020/grid-list.mjs.map +1 -1
  346. package/fesm2020/icon/testing.mjs +8 -8
  347. package/fesm2020/icon/testing.mjs.map +1 -1
  348. package/fesm2020/icon.mjs +44 -36
  349. package/fesm2020/icon.mjs.map +1 -1
  350. package/fesm2020/input/testing.mjs.map +1 -1
  351. package/fesm2020/input.mjs +19 -9
  352. package/fesm2020/input.mjs.map +1 -1
  353. package/fesm2020/list/testing.mjs +0 -8
  354. package/fesm2020/list/testing.mjs.map +1 -1
  355. package/fesm2020/list.mjs +34 -59
  356. package/fesm2020/list.mjs.map +1 -1
  357. package/fesm2020/material.mjs.map +1 -1
  358. package/fesm2020/menu/testing.mjs.map +1 -1
  359. package/fesm2020/menu.mjs +100 -93
  360. package/fesm2020/menu.mjs.map +1 -1
  361. package/fesm2020/paginator/testing.mjs.map +1 -1
  362. package/fesm2020/paginator.mjs +18 -14
  363. package/fesm2020/paginator.mjs.map +1 -1
  364. package/fesm2020/progress-bar/testing.mjs.map +1 -1
  365. package/fesm2020/progress-bar.mjs +7 -7
  366. package/fesm2020/progress-bar.mjs.map +1 -1
  367. package/fesm2020/progress-spinner/testing.mjs.map +1 -1
  368. package/fesm2020/progress-spinner.mjs +27 -60
  369. package/fesm2020/progress-spinner.mjs.map +1 -1
  370. package/fesm2020/radio/testing.mjs.map +1 -1
  371. package/fesm2020/radio.mjs +17 -17
  372. package/fesm2020/radio.mjs.map +1 -1
  373. package/fesm2020/select/testing.mjs.map +1 -1
  374. package/fesm2020/select.mjs +39 -17
  375. package/fesm2020/select.mjs.map +1 -1
  376. package/fesm2020/sidenav/testing.mjs.map +1 -1
  377. package/fesm2020/sidenav.mjs +26 -26
  378. package/fesm2020/sidenav.mjs.map +1 -1
  379. package/fesm2020/slide-toggle/testing.mjs.map +1 -1
  380. package/fesm2020/slide-toggle.mjs +15 -14
  381. package/fesm2020/slide-toggle.mjs.map +1 -1
  382. package/fesm2020/slider/testing.mjs.map +1 -1
  383. package/fesm2020/slider.mjs +7 -7
  384. package/fesm2020/slider.mjs.map +1 -1
  385. package/fesm2020/snack-bar/testing.mjs.map +1 -1
  386. package/fesm2020/snack-bar.mjs +16 -16
  387. package/fesm2020/snack-bar.mjs.map +1 -1
  388. package/fesm2020/sort/testing.mjs.map +1 -1
  389. package/fesm2020/sort.mjs +24 -16
  390. package/fesm2020/sort.mjs.map +1 -1
  391. package/fesm2020/stepper/testing.mjs.map +1 -1
  392. package/fesm2020/stepper.mjs +37 -90
  393. package/fesm2020/stepper.mjs.map +1 -1
  394. package/fesm2020/table/testing.mjs.map +1 -1
  395. package/fesm2020/table.mjs +55 -55
  396. package/fesm2020/table.mjs.map +1 -1
  397. package/fesm2020/tabs/testing.mjs.map +1 -1
  398. package/fesm2020/tabs.mjs +59 -59
  399. package/fesm2020/tabs.mjs.map +1 -1
  400. package/fesm2020/toolbar/testing.mjs.map +1 -1
  401. package/fesm2020/toolbar.mjs +10 -10
  402. package/fesm2020/toolbar.mjs.map +1 -1
  403. package/fesm2020/tooltip/testing.mjs +11 -6
  404. package/fesm2020/tooltip/testing.mjs.map +1 -1
  405. package/fesm2020/tooltip.mjs +147 -71
  406. package/fesm2020/tooltip.mjs.map +1 -1
  407. package/fesm2020/tree/testing.mjs.map +1 -1
  408. package/fesm2020/tree.mjs +25 -25
  409. package/fesm2020/tree.mjs.map +1 -1
  410. package/form-field/form-field.d.ts +9 -5
  411. package/icon/icon-registry.d.ts +7 -9
  412. package/icon/icon.d.ts +12 -3
  413. package/icon/testing/fake-icon-registry.d.ts +1 -1
  414. package/input/input.d.ts +11 -1
  415. package/list/selection-list.d.ts +4 -21
  416. package/list/testing/list-item-harness-base.d.ts +1 -7
  417. package/menu/menu-errors.d.ts +0 -5
  418. package/menu/menu-item.d.ts +3 -2
  419. package/menu/menu-trigger.d.ts +14 -10
  420. package/package.json +7 -7
  421. package/paginator/paginator.d.ts +12 -1
  422. package/prebuilt-themes/deeppurple-amber.css +1 -1
  423. package/prebuilt-themes/indigo-pink.css +1 -1
  424. package/prebuilt-themes/pink-bluegrey.css +1 -1
  425. package/prebuilt-themes/purple-green.css +1 -1
  426. package/progress-spinner/progress-spinner-module.d.ts +1 -1
  427. package/progress-spinner/progress-spinner.d.ts +1 -18
  428. package/progress-spinner/public-api.d.ts +8 -1
  429. package/schematics/migration.json +5 -0
  430. package/schematics/ng-add/index.js +2 -2
  431. package/schematics/ng-add/index.mjs +2 -2
  432. package/schematics/ng-add/schema.d.ts +2 -2
  433. package/schematics/ng-add/schema.js +1 -1
  434. package/schematics/ng-add/schema.json +12 -4
  435. package/schematics/ng-add/schema.mjs +1 -1
  436. package/schematics/ng-add/setup-project.js +7 -5
  437. package/schematics/ng-add/setup-project.mjs +7 -5
  438. package/schematics/ng-update/data/constructor-checks.js +11 -1
  439. package/schematics/ng-update/data/constructor-checks.mjs +11 -1
  440. package/schematics/ng-update/data/css-selectors.js +7 -1
  441. package/schematics/ng-update/data/css-selectors.mjs +7 -1
  442. package/schematics/ng-update/index.d.ts +2 -0
  443. package/schematics/ng-update/index.js +7 -2
  444. package/schematics/ng-update/index.mjs +7 -2
  445. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.js +4 -4
  446. package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.mjs +4 -4
  447. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.js +13 -13
  448. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.mjs +13 -13
  449. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.js +2 -13
  450. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.mjs +2 -13
  451. package/select/select.d.ts +16 -0
  452. package/sort/sort-header.d.ts +4 -4
  453. package/sort/sort.d.ts +4 -0
  454. package/stepper/stepper-module.d.ts +1 -1
  455. package/stepper/stepper.d.ts +2 -35
  456. package/tooltip/testing/tooltip-harness.d.ts +6 -0
  457. package/tooltip/tooltip.d.ts +36 -8
package/fesm2020/core.mjs CHANGED
@@ -9,7 +9,7 @@ import { DOCUMENT, CommonModule } from '@angular/common';
9
9
  import * as i1$1 from '@angular/cdk/platform';
10
10
  import { _isTestEnvironment, normalizePassiveListenerOptions } from '@angular/cdk/platform';
11
11
  import { coerceBooleanProperty, coerceNumberProperty, coerceElement } from '@angular/cdk/coercion';
12
- import { Subject, Observable } from 'rxjs';
12
+ import { Observable, Subject } from 'rxjs';
13
13
  import { startWith } from 'rxjs/operators';
14
14
  import { ANIMATION_MODULE_TYPE } from '@angular/platform-browser/animations';
15
15
  import { ENTER, SPACE, hasModifierKey } from '@angular/cdk/keycodes';
@@ -22,7 +22,7 @@ import { ENTER, SPACE, hasModifierKey } from '@angular/cdk/keycodes';
22
22
  * found in the LICENSE file at https://angular.io/license
23
23
  */
24
24
  /** Current version of Angular Material. */
25
- const VERSION = new Version('14.0.0-next.3');
25
+ const VERSION = new Version('14.0.0-next.6');
26
26
 
27
27
  /**
28
28
  * @license
@@ -102,10 +102,10 @@ class MatCommonModule {
102
102
  return !!this._sanityChecks[name];
103
103
  }
104
104
  }
105
- MatCommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatCommonModule, deps: [{ token: i1.HighContrastModeDetector }, { token: MATERIAL_SANITY_CHECKS, optional: true }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.NgModule });
106
- MatCommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatCommonModule, imports: [BidiModule], exports: [BidiModule] });
107
- MatCommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatCommonModule, imports: [[BidiModule], BidiModule] });
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatCommonModule, decorators: [{
105
+ MatCommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatCommonModule, deps: [{ token: i1.HighContrastModeDetector }, { token: MATERIAL_SANITY_CHECKS, optional: true }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.NgModule });
106
+ MatCommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatCommonModule, imports: [BidiModule], exports: [BidiModule] });
107
+ MatCommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatCommonModule, imports: [[BidiModule], BidiModule] });
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatCommonModule, decorators: [{
109
109
  type: NgModule,
110
110
  args: [{
111
111
  imports: [BidiModule],
@@ -274,12 +274,6 @@ function mixinErrorState(base) {
274
274
  return class extends base {
275
275
  constructor(...args) {
276
276
  super(...args);
277
- // This class member exists as an interop with `MatFormFieldControl` which expects
278
- // a public `stateChanges` observable to emit whenever the form field should be updated.
279
- // The description is not specifically mentioning the error state, as classes using this
280
- // mixin can/should emit an event in other cases too.
281
- /** Emits whenever the component state changes. */
282
- this.stateChanges = new Subject();
283
277
  /** Whether the component is in an error state. */
284
278
  this.errorState = false;
285
279
  }
@@ -681,9 +675,9 @@ class NativeDateAdapter extends DateAdapter {
681
675
  return dtf.format(d);
682
676
  }
683
677
  }
684
- NativeDateAdapter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateAdapter, deps: [{ token: MAT_DATE_LOCALE, optional: true }, { token: i1$1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });
685
- NativeDateAdapter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateAdapter });
686
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateAdapter, decorators: [{
678
+ NativeDateAdapter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: NativeDateAdapter, deps: [{ token: MAT_DATE_LOCALE, optional: true }, { token: i1$1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });
679
+ NativeDateAdapter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: NativeDateAdapter });
680
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: NativeDateAdapter, decorators: [{
687
681
  type: Injectable
688
682
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
689
683
  type: Optional
@@ -720,10 +714,10 @@ const MAT_NATIVE_DATE_FORMATS = {
720
714
  */
721
715
  class NativeDateModule {
722
716
  }
723
- NativeDateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
724
- NativeDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateModule });
725
- NativeDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateModule, providers: [{ provide: DateAdapter, useClass: NativeDateAdapter }] });
726
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateModule, decorators: [{
717
+ NativeDateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: NativeDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
718
+ NativeDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: NativeDateModule });
719
+ NativeDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: NativeDateModule, providers: [{ provide: DateAdapter, useClass: NativeDateAdapter }] });
720
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: NativeDateModule, decorators: [{
727
721
  type: NgModule,
728
722
  args: [{
729
723
  providers: [{ provide: DateAdapter, useClass: NativeDateAdapter }],
@@ -731,10 +725,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
731
725
  }] });
732
726
  class MatNativeDateModule {
733
727
  }
734
- MatNativeDateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatNativeDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
735
- MatNativeDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatNativeDateModule, imports: [NativeDateModule] });
736
- MatNativeDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatNativeDateModule, providers: [{ provide: MAT_DATE_FORMATS, useValue: MAT_NATIVE_DATE_FORMATS }], imports: [[NativeDateModule]] });
737
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatNativeDateModule, decorators: [{
728
+ MatNativeDateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatNativeDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
729
+ MatNativeDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatNativeDateModule, imports: [NativeDateModule] });
730
+ MatNativeDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatNativeDateModule, providers: [{ provide: MAT_DATE_FORMATS, useValue: MAT_NATIVE_DATE_FORMATS }], imports: [[NativeDateModule]] });
731
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatNativeDateModule, decorators: [{
738
732
  type: NgModule,
739
733
  args: [{
740
734
  imports: [NativeDateModule],
@@ -755,9 +749,9 @@ class ShowOnDirtyErrorStateMatcher {
755
749
  return !!(control && control.invalid && (control.dirty || (form && form.submitted)));
756
750
  }
757
751
  }
758
- ShowOnDirtyErrorStateMatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ShowOnDirtyErrorStateMatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
759
- ShowOnDirtyErrorStateMatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ShowOnDirtyErrorStateMatcher });
760
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ShowOnDirtyErrorStateMatcher, decorators: [{
752
+ ShowOnDirtyErrorStateMatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: ShowOnDirtyErrorStateMatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
753
+ ShowOnDirtyErrorStateMatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: ShowOnDirtyErrorStateMatcher });
754
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: ShowOnDirtyErrorStateMatcher, decorators: [{
761
755
  type: Injectable
762
756
  }] });
763
757
  /** Provider that defines how form controls behave with regards to displaying error messages. */
@@ -766,9 +760,9 @@ class ErrorStateMatcher {
766
760
  return !!(control && control.invalid && (control.touched || (form && form.submitted)));
767
761
  }
768
762
  }
769
- ErrorStateMatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ErrorStateMatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
770
- ErrorStateMatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ErrorStateMatcher, providedIn: 'root' });
771
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ErrorStateMatcher, decorators: [{
763
+ ErrorStateMatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: ErrorStateMatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
764
+ ErrorStateMatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: ErrorStateMatcher, providedIn: 'root' });
765
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: ErrorStateMatcher, decorators: [{
772
766
  type: Injectable,
773
767
  args: [{ providedIn: 'root' }]
774
768
  }] });
@@ -787,9 +781,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
787
781
  */
788
782
  class MatLine {
789
783
  }
790
- MatLine.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatLine, deps: [], target: i0.ɵɵFactoryTarget.Directive });
791
- MatLine.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatLine, selector: "[mat-line], [matLine]", host: { classAttribute: "mat-line" }, ngImport: i0 });
792
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatLine, decorators: [{
784
+ MatLine.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatLine, deps: [], target: i0.ɵɵFactoryTarget.Directive });
785
+ MatLine.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.5", type: MatLine, selector: "[mat-line], [matLine]", host: { classAttribute: "mat-line" }, ngImport: i0 });
786
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatLine, decorators: [{
793
787
  type: Directive,
794
788
  args: [{
795
789
  selector: '[mat-line], [matLine]',
@@ -821,10 +815,10 @@ function setClass(element, className, isAdd) {
821
815
  }
822
816
  class MatLineModule {
823
817
  }
824
- MatLineModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatLineModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
825
- MatLineModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatLineModule, declarations: [MatLine], imports: [MatCommonModule], exports: [MatLine, MatCommonModule] });
826
- MatLineModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatLineModule, imports: [[MatCommonModule], MatCommonModule] });
827
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatLineModule, decorators: [{
818
+ MatLineModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatLineModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
819
+ MatLineModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatLineModule, declarations: [MatLine], imports: [MatCommonModule], exports: [MatLine, MatCommonModule] });
820
+ MatLineModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatLineModule, imports: [[MatCommonModule], MatCommonModule] });
821
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatLineModule, decorators: [{
828
822
  type: NgModule,
829
823
  args: [{
830
824
  imports: [MatCommonModule],
@@ -848,10 +842,13 @@ class RippleRef {
848
842
  /** Reference to the ripple HTML element. */
849
843
  element,
850
844
  /** Ripple configuration used for the ripple. */
851
- config) {
845
+ config,
846
+ /* Whether animations are forcibly disabled for ripples through CSS. */
847
+ _animationForciblyDisabledThroughCss = false) {
852
848
  this._renderer = _renderer;
853
849
  this.element = element;
854
850
  this.config = config;
851
+ this._animationForciblyDisabledThroughCss = _animationForciblyDisabledThroughCss;
855
852
  /** Current state of the ripple. */
856
853
  this.state = 3 /* HIDDEN */;
857
854
  }
@@ -920,7 +917,7 @@ class RippleRenderer {
920
917
  const radius = config.radius || distanceToFurthestCorner(x, y, containerRect);
921
918
  const offsetX = x - containerRect.left;
922
919
  const offsetY = y - containerRect.top;
923
- const duration = animationConfig.enterDuration;
920
+ const enterDuration = animationConfig.enterDuration;
924
921
  const ripple = document.createElement('div');
925
922
  ripple.classList.add('mat-ripple-element');
926
923
  ripple.style.left = `${offsetX - radius}px`;
@@ -932,61 +929,73 @@ class RippleRenderer {
932
929
  if (config.color != null) {
933
930
  ripple.style.backgroundColor = config.color;
934
931
  }
935
- ripple.style.transitionDuration = `${duration}ms`;
932
+ ripple.style.transitionDuration = `${enterDuration}ms`;
936
933
  this._containerElement.appendChild(ripple);
937
934
  // By default the browser does not recalculate the styles of dynamically created
938
- // ripple elements. This is critical because then the `scale` would not animate properly.
939
- enforceStyleRecalculation(ripple);
940
- // We use a 3d transform here in order to avoid an issue in Safari where
935
+ // ripple elements. This is critical to ensure that the `scale` animates properly.
936
+ // We enforce a style recalculation by calling `getComputedStyle` and *accessing* a property.
937
+ // See: https://gist.github.com/paulirish/5d52fb081b3570c81e3a
938
+ const computedStyles = window.getComputedStyle(ripple);
939
+ const userTransitionProperty = computedStyles.transitionProperty;
940
+ const userTransitionDuration = computedStyles.transitionDuration;
941
+ // Note: We detect whether animation is forcibly disabled through CSS by the use of
942
+ // `transition: none`. This is technically unexpected since animations are controlled
943
+ // through the animation config, but this exists for backwards compatibility. This logic does
944
+ // not need to be super accurate since it covers some edge cases which can be easily avoided by users.
945
+ const animationForciblyDisabledThroughCss = userTransitionProperty === 'none' ||
946
+ // Note: The canonical unit for serialized CSS `<time>` properties is seconds. Additionally
947
+ // some browsers expand the duration for every property (in our case `opacity` and `transform`).
948
+ userTransitionDuration === '0s' ||
949
+ userTransitionDuration === '0s, 0s';
950
+ // Exposed reference to the ripple that will be returned.
951
+ const rippleRef = new RippleRef(this, ripple, config, animationForciblyDisabledThroughCss);
952
+ // Start the enter animation by setting the transform/scale to 100%. The animation will
953
+ // execute as part of this statement because we forced a style recalculation before.
954
+ // Note: We use a 3d transform here in order to avoid an issue in Safari where
941
955
  // the ripples aren't clipped when inside the shadow DOM (see #24028).
942
956
  ripple.style.transform = 'scale3d(1, 1, 1)';
943
- // Exposed reference to the ripple that will be returned.
944
- const rippleRef = new RippleRef(this, ripple, config);
945
957
  rippleRef.state = 0 /* FADING_IN */;
946
958
  // Add the ripple reference to the list of all active ripples.
947
959
  this._activeRipples.add(rippleRef);
948
960
  if (!config.persistent) {
949
961
  this._mostRecentTransientRipple = rippleRef;
950
962
  }
951
- // Wait for the ripple element to be completely faded in.
952
- // Once it's faded in, the ripple can be hidden immediately if the mouse is released.
953
- this._runTimeoutOutsideZone(() => {
954
- const isMostRecentTransientRipple = rippleRef === this._mostRecentTransientRipple;
955
- rippleRef.state = 1 /* VISIBLE */;
956
- // When the timer runs out while the user has kept their pointer down, we want to
957
- // keep only the persistent ripples and the latest transient ripple. We do this,
958
- // because we don't want stacked transient ripples to appear after their enter
959
- // animation has finished.
960
- if (!config.persistent && (!isMostRecentTransientRipple || !this._isPointerDown)) {
961
- rippleRef.fadeOut();
962
- }
963
- }, duration);
963
+ // Do not register the `transition` event listener if fade-in and fade-out duration
964
+ // are set to zero. The events won't fire anyway and we can save resources here.
965
+ if (!animationForciblyDisabledThroughCss && (enterDuration || animationConfig.exitDuration)) {
966
+ this._ngZone.runOutsideAngular(() => {
967
+ ripple.addEventListener('transitionend', () => this._finishRippleTransition(rippleRef));
968
+ // If the transition is cancelled (e.g. due to DOM removal), we destroy the ripple
969
+ // directly as otherwise we would keep it part of the ripple container forever.
970
+ // https://www.w3.org/TR/css-transitions-1/#:~:text=no%20longer%20in%20the%20document.
971
+ ripple.addEventListener('transitioncancel', () => this._destroyRipple(rippleRef));
972
+ });
973
+ }
974
+ // In case there is no fade-in transition duration, we need to manually call the transition
975
+ // end listener because `transitionend` doesn't fire if there is no transition.
976
+ if (animationForciblyDisabledThroughCss || !enterDuration) {
977
+ this._finishRippleTransition(rippleRef);
978
+ }
964
979
  return rippleRef;
965
980
  }
966
981
  /** Fades out a ripple reference. */
967
982
  fadeOutRipple(rippleRef) {
968
- const wasActive = this._activeRipples.delete(rippleRef);
969
- if (rippleRef === this._mostRecentTransientRipple) {
970
- this._mostRecentTransientRipple = null;
971
- }
972
- // Clear out the cached bounding rect if we have no more ripples.
973
- if (!this._activeRipples.size) {
974
- this._containerRect = null;
975
- }
976
- // For ripples that are not active anymore, don't re-run the fade-out animation.
977
- if (!wasActive) {
983
+ // For ripples already fading out or hidden, this should be a noop.
984
+ if (rippleRef.state === 2 /* FADING_OUT */ || rippleRef.state === 3 /* HIDDEN */) {
978
985
  return;
979
986
  }
980
987
  const rippleEl = rippleRef.element;
981
988
  const animationConfig = { ...defaultRippleAnimationConfig, ...rippleRef.config.animation };
989
+ // This starts the fade-out transition and will fire the transition end listener that
990
+ // removes the ripple element from the DOM.
982
991
  rippleEl.style.transitionDuration = `${animationConfig.exitDuration}ms`;
983
992
  rippleEl.style.opacity = '0';
984
993
  rippleRef.state = 2 /* FADING_OUT */;
985
- // Once the ripple faded out, the ripple can be safely removed from the DOM.
986
- this._runTimeoutOutsideZone(() => {
987
- rippleRef.state = 3 /* HIDDEN */;
988
- rippleEl.remove();
989
- }, animationConfig.exitDuration);
994
+ // In case there is no fade-out transition duration, we need to manually call the
995
+ // transition end listener because `transitionend` doesn't fire if there is no transition.
996
+ if (rippleRef._animationForciblyDisabledThroughCss || !animationConfig.exitDuration) {
997
+ this._finishRippleTransition(rippleRef);
998
+ }
990
999
  }
991
1000
  /** Fades out all currently active ripples. */
992
1001
  fadeOutAll() {
@@ -1033,6 +1042,46 @@ class RippleRenderer {
1033
1042
  this._pointerUpEventsRegistered = true;
1034
1043
  }
1035
1044
  }
1045
+ /** Method that will be called if the fade-in or fade-in transition completed. */
1046
+ _finishRippleTransition(rippleRef) {
1047
+ if (rippleRef.state === 0 /* FADING_IN */) {
1048
+ this._startFadeOutTransition(rippleRef);
1049
+ }
1050
+ else if (rippleRef.state === 2 /* FADING_OUT */) {
1051
+ this._destroyRipple(rippleRef);
1052
+ }
1053
+ }
1054
+ /**
1055
+ * Starts the fade-out transition of the given ripple if it's not persistent and the pointer
1056
+ * is not held down anymore.
1057
+ */
1058
+ _startFadeOutTransition(rippleRef) {
1059
+ const isMostRecentTransientRipple = rippleRef === this._mostRecentTransientRipple;
1060
+ const { persistent } = rippleRef.config;
1061
+ rippleRef.state = 1 /* VISIBLE */;
1062
+ // When the timer runs out while the user has kept their pointer down, we want to
1063
+ // keep only the persistent ripples and the latest transient ripple. We do this,
1064
+ // because we don't want stacked transient ripples to appear after their enter
1065
+ // animation has finished.
1066
+ if (!persistent && (!isMostRecentTransientRipple || !this._isPointerDown)) {
1067
+ rippleRef.fadeOut();
1068
+ }
1069
+ }
1070
+ /** Destroys the given ripple by removing it from the DOM and updating its state. */
1071
+ _destroyRipple(rippleRef) {
1072
+ this._activeRipples.delete(rippleRef);
1073
+ // Clear out the cached bounding rect if we have no more ripples.
1074
+ if (!this._activeRipples.size) {
1075
+ this._containerRect = null;
1076
+ }
1077
+ // If the current ref is the most recent transient ripple, unset it
1078
+ // avoid memory leaks.
1079
+ if (rippleRef === this._mostRecentTransientRipple) {
1080
+ this._mostRecentTransientRipple = null;
1081
+ }
1082
+ rippleRef.state = 3 /* HIDDEN */;
1083
+ rippleRef.element.remove();
1084
+ }
1036
1085
  /** Function being called whenever the trigger is being pressed using mouse. */
1037
1086
  _onMousedown(event) {
1038
1087
  // Screen readers will fire fake mouse events for space/enter. Skip launching a
@@ -1078,10 +1127,6 @@ class RippleRenderer {
1078
1127
  }
1079
1128
  });
1080
1129
  }
1081
- /** Runs a timeout outside of the Angular zone to avoid triggering the change detection. */
1082
- _runTimeoutOutsideZone(fn, delay = 0) {
1083
- this._ngZone.runOutsideAngular(() => setTimeout(fn, delay));
1084
- }
1085
1130
  /** Registers event listeners for a given list of events. */
1086
1131
  _registerEvents(eventTypes) {
1087
1132
  this._ngZone.runOutsideAngular(() => {
@@ -1104,13 +1149,6 @@ class RippleRenderer {
1104
1149
  }
1105
1150
  }
1106
1151
  }
1107
- /** Enforces a style recalculation of a DOM element by computing its styles. */
1108
- function enforceStyleRecalculation(element) {
1109
- // Enforce a style recalculation by calling `getComputedStyle` and accessing any property.
1110
- // Calling `getPropertyValue` is important to let optimizers know that this is not a noop.
1111
- // See: https://gist.github.com/paulirish/5d52fb081b3570c81e3a
1112
- window.getComputedStyle(element).getPropertyValue('opacity');
1113
- }
1114
1152
  /**
1115
1153
  * Returns the distance from the point (x, y) to the furthest corner of a rectangle.
1116
1154
  */
@@ -1225,9 +1263,9 @@ class MatRipple {
1225
1263
  }
1226
1264
  }
1227
1265
  }
1228
- MatRipple.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRipple, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1$1.Platform }, { token: MAT_RIPPLE_GLOBAL_OPTIONS, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1229
- MatRipple.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: { color: ["matRippleColor", "color"], unbounded: ["matRippleUnbounded", "unbounded"], centered: ["matRippleCentered", "centered"], radius: ["matRippleRadius", "radius"], animation: ["matRippleAnimation", "animation"], disabled: ["matRippleDisabled", "disabled"], trigger: ["matRippleTrigger", "trigger"] }, host: { properties: { "class.mat-ripple-unbounded": "unbounded" }, classAttribute: "mat-ripple" }, exportAs: ["matRipple"], ngImport: i0 });
1230
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRipple, decorators: [{
1266
+ MatRipple.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatRipple, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1$1.Platform }, { token: MAT_RIPPLE_GLOBAL_OPTIONS, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1267
+ MatRipple.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.5", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: { color: ["matRippleColor", "color"], unbounded: ["matRippleUnbounded", "unbounded"], centered: ["matRippleCentered", "centered"], radius: ["matRippleRadius", "radius"], animation: ["matRippleAnimation", "animation"], disabled: ["matRippleDisabled", "disabled"], trigger: ["matRippleTrigger", "trigger"] }, host: { properties: { "class.mat-ripple-unbounded": "unbounded" }, classAttribute: "mat-ripple" }, exportAs: ["matRipple"], ngImport: i0 });
1268
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatRipple, decorators: [{
1231
1269
  type: Directive,
1232
1270
  args: [{
1233
1271
  selector: '[mat-ripple], [matRipple]',
@@ -1279,10 +1317,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
1279
1317
  */
1280
1318
  class MatRippleModule {
1281
1319
  }
1282
- MatRippleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRippleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1283
- MatRippleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRippleModule, declarations: [MatRipple], imports: [MatCommonModule], exports: [MatRipple, MatCommonModule] });
1284
- MatRippleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRippleModule, imports: [[MatCommonModule], MatCommonModule] });
1285
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRippleModule, decorators: [{
1320
+ MatRippleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatRippleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1321
+ MatRippleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatRippleModule, declarations: [MatRipple], imports: [MatCommonModule], exports: [MatRipple, MatCommonModule] });
1322
+ MatRippleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatRippleModule, imports: [[MatCommonModule], MatCommonModule] });
1323
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatRippleModule, decorators: [{
1286
1324
  type: NgModule,
1287
1325
  args: [{
1288
1326
  imports: [MatCommonModule],
@@ -1320,9 +1358,9 @@ class MatPseudoCheckbox {
1320
1358
  this.disabled = false;
1321
1359
  }
1322
1360
  }
1323
- MatPseudoCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatPseudoCheckbox, deps: [{ token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1324
- MatPseudoCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatPseudoCheckbox, selector: "mat-pseudo-checkbox", inputs: { state: "state", disabled: "disabled" }, host: { properties: { "class.mat-pseudo-checkbox-indeterminate": "state === \"indeterminate\"", "class.mat-pseudo-checkbox-checked": "state === \"checked\"", "class.mat-pseudo-checkbox-disabled": "disabled", "class._mat-animation-noopable": "_animationMode === \"NoopAnimations\"" }, classAttribute: "mat-pseudo-checkbox" }, ngImport: i0, template: '', isInline: true, styles: [".mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:\"\";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1325
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatPseudoCheckbox, decorators: [{
1361
+ MatPseudoCheckbox.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatPseudoCheckbox, deps: [{ token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1362
+ MatPseudoCheckbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.5", type: MatPseudoCheckbox, selector: "mat-pseudo-checkbox", inputs: { state: "state", disabled: "disabled" }, host: { properties: { "class.mat-pseudo-checkbox-indeterminate": "state === \"indeterminate\"", "class.mat-pseudo-checkbox-checked": "state === \"checked\"", "class.mat-pseudo-checkbox-disabled": "disabled", "class._mat-animation-noopable": "_animationMode === \"NoopAnimations\"" }, classAttribute: "mat-pseudo-checkbox" }, ngImport: i0, template: '', isInline: true, styles: [".mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:\"\";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1363
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatPseudoCheckbox, decorators: [{
1326
1364
  type: Component,
1327
1365
  args: [{ encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, selector: 'mat-pseudo-checkbox', template: '', host: {
1328
1366
  'class': 'mat-pseudo-checkbox',
@@ -1351,10 +1389,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
1351
1389
  */
1352
1390
  class MatPseudoCheckboxModule {
1353
1391
  }
1354
- MatPseudoCheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatPseudoCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1355
- MatPseudoCheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatPseudoCheckboxModule, declarations: [MatPseudoCheckbox], imports: [MatCommonModule], exports: [MatPseudoCheckbox] });
1356
- MatPseudoCheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatPseudoCheckboxModule, imports: [[MatCommonModule]] });
1357
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatPseudoCheckboxModule, decorators: [{
1392
+ MatPseudoCheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatPseudoCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1393
+ MatPseudoCheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatPseudoCheckboxModule, declarations: [MatPseudoCheckbox], imports: [MatCommonModule], exports: [MatPseudoCheckbox] });
1394
+ MatPseudoCheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatPseudoCheckboxModule, imports: [[MatCommonModule]] });
1395
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatPseudoCheckboxModule, decorators: [{
1358
1396
  type: NgModule,
1359
1397
  args: [{
1360
1398
  imports: [MatCommonModule],
@@ -1423,9 +1461,9 @@ class _MatOptgroupBase extends _MatOptgroupMixinBase {
1423
1461
  this._inert = parent?.inertGroups ?? false;
1424
1462
  }
1425
1463
  }
1426
- _MatOptgroupBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: _MatOptgroupBase, deps: [{ token: MAT_OPTION_PARENT_COMPONENT, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1427
- _MatOptgroupBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: _MatOptgroupBase, inputs: { label: "label" }, usesInheritance: true, ngImport: i0 });
1428
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: _MatOptgroupBase, decorators: [{
1464
+ _MatOptgroupBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: _MatOptgroupBase, deps: [{ token: MAT_OPTION_PARENT_COMPONENT, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1465
+ _MatOptgroupBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.5", type: _MatOptgroupBase, inputs: { label: "label" }, usesInheritance: true, ngImport: i0 });
1466
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: _MatOptgroupBase, decorators: [{
1429
1467
  type: Directive
1430
1468
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
1431
1469
  type: Inject,
@@ -1446,9 +1484,9 @@ const MAT_OPTGROUP = new InjectionToken('MatOptgroup');
1446
1484
  */
1447
1485
  class MatOptgroup extends _MatOptgroupBase {
1448
1486
  }
1449
- MatOptgroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatOptgroup, deps: null, target: i0.ɵɵFactoryTarget.Component });
1450
- MatOptgroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatOptgroup, selector: "mat-optgroup", inputs: { disabled: "disabled" }, host: { properties: { "attr.role": "_inert ? null : \"group\"", "attr.aria-disabled": "_inert ? null : disabled.toString()", "attr.aria-labelledby": "_inert ? null : _labelId", "class.mat-optgroup-disabled": "disabled" }, classAttribute: "mat-optgroup" }, providers: [{ provide: MAT_OPTGROUP, useExisting: MatOptgroup }], exportAs: ["matOptgroup"], usesInheritance: true, ngImport: i0, template: "<span class=\"mat-optgroup-label\" aria-hidden=\"true\" [id]=\"_labelId\">{{ label }} <ng-content></ng-content></span>\n<ng-content select=\"mat-option, ng-container\"></ng-content>\n", styles: [".mat-optgroup-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-optgroup-label[disabled]{cursor:default}[dir=rtl] .mat-optgroup-label{text-align:right}.mat-optgroup-label .mat-icon{margin-right:16px;vertical-align:middle}.mat-optgroup-label .mat-icon svg{vertical-align:top}[dir=rtl] .mat-optgroup-label .mat-icon{margin-left:16px;margin-right:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1451
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatOptgroup, decorators: [{
1487
+ MatOptgroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatOptgroup, deps: null, target: i0.ɵɵFactoryTarget.Component });
1488
+ MatOptgroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.5", type: MatOptgroup, selector: "mat-optgroup", inputs: { disabled: "disabled" }, host: { properties: { "attr.role": "_inert ? null : \"group\"", "attr.aria-disabled": "_inert ? null : disabled.toString()", "attr.aria-labelledby": "_inert ? null : _labelId", "class.mat-optgroup-disabled": "disabled" }, classAttribute: "mat-optgroup" }, providers: [{ provide: MAT_OPTGROUP, useExisting: MatOptgroup }], exportAs: ["matOptgroup"], usesInheritance: true, ngImport: i0, template: "<span class=\"mat-optgroup-label\" aria-hidden=\"true\" [id]=\"_labelId\">{{ label }} <ng-content></ng-content></span>\n<ng-content select=\"mat-option, ng-container\"></ng-content>\n", styles: [".mat-optgroup-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-optgroup-label[disabled]{cursor:default}[dir=rtl] .mat-optgroup-label{text-align:right}.mat-optgroup-label .mat-icon{margin-right:16px;vertical-align:middle}.mat-optgroup-label .mat-icon svg{vertical-align:top}[dir=rtl] .mat-optgroup-label .mat-icon{margin-left:16px;margin-right:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1489
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatOptgroup, decorators: [{
1452
1490
  type: Component,
1453
1491
  args: [{ selector: 'mat-optgroup', exportAs: 'matOptgroup', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, inputs: ['disabled'], host: {
1454
1492
  'class': 'mat-optgroup',
@@ -1645,9 +1683,9 @@ class _MatOptionBase {
1645
1683
  this.onSelectionChange.emit(new MatOptionSelectionChange(this, isUserInput));
1646
1684
  }
1647
1685
  }
1648
- _MatOptionBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: _MatOptionBase, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
1649
- _MatOptionBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: _MatOptionBase, inputs: { value: "value", id: "id", disabled: "disabled" }, outputs: { onSelectionChange: "onSelectionChange" }, ngImport: i0 });
1650
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: _MatOptionBase, decorators: [{
1686
+ _MatOptionBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: _MatOptionBase, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
1687
+ _MatOptionBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.5", type: _MatOptionBase, inputs: { value: "value", id: "id", disabled: "disabled" }, outputs: { onSelectionChange: "onSelectionChange" }, ngImport: i0 });
1688
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: _MatOptionBase, decorators: [{
1651
1689
  type: Directive
1652
1690
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: undefined }, { type: _MatOptgroupBase }]; }, propDecorators: { value: [{
1653
1691
  type: Input
@@ -1666,9 +1704,9 @@ class MatOption extends _MatOptionBase {
1666
1704
  super(element, changeDetectorRef, parent, group);
1667
1705
  }
1668
1706
  }
1669
- MatOption.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatOption, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MAT_OPTION_PARENT_COMPONENT, optional: true }, { token: MAT_OPTGROUP, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1670
- MatOption.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatOption, selector: "mat-option", host: { attributes: { "role": "option" }, listeners: { "click": "_selectViaInteraction()", "keydown": "_handleKeydown($event)" }, properties: { "attr.tabindex": "_getTabIndex()", "class.mat-selected": "selected", "class.mat-option-multiple": "multiple", "class.mat-active": "active", "id": "id", "attr.aria-selected": "_getAriaSelected()", "attr.aria-disabled": "disabled.toString()", "class.mat-option-disabled": "disabled" }, classAttribute: "mat-option mat-focus-indicator" }, exportAs: ["matOption"], usesInheritance: true, ngImport: i0, template: "<mat-pseudo-checkbox *ngIf=\"multiple\" class=\"mat-option-pseudo-checkbox\"\n [state]=\"selected ? 'checked' : 'unchecked'\" [disabled]=\"disabled\"></mat-pseudo-checkbox>\n\n<span class=\"mat-option-text\"><ng-content></ng-content></span>\n\n<!-- See a11y notes inside optgroup.ts for context behind this element. -->\n<span class=\"cdk-visually-hidden\" *ngIf=\"group && group._inert\">({{ group.label }})</span>\n\n<div class=\"mat-option-ripple\" mat-ripple\n [matRippleTrigger]=\"_getHostElement()\"\n [matRippleDisabled]=\"disabled || disableRipple\">\n</div>\n", styles: [".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"], components: [{ type: MatPseudoCheckbox, selector: "mat-pseudo-checkbox", inputs: ["state", "disabled"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1671
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatOption, decorators: [{
1707
+ MatOption.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatOption, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MAT_OPTION_PARENT_COMPONENT, optional: true }, { token: MAT_OPTGROUP, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1708
+ MatOption.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.5", type: MatOption, selector: "mat-option", host: { attributes: { "role": "option" }, listeners: { "click": "_selectViaInteraction()", "keydown": "_handleKeydown($event)" }, properties: { "attr.tabindex": "_getTabIndex()", "class.mat-selected": "selected", "class.mat-option-multiple": "multiple", "class.mat-active": "active", "id": "id", "attr.aria-selected": "_getAriaSelected()", "attr.aria-disabled": "disabled.toString()", "class.mat-option-disabled": "disabled" }, classAttribute: "mat-option mat-focus-indicator" }, exportAs: ["matOption"], usesInheritance: true, ngImport: i0, template: "<mat-pseudo-checkbox *ngIf=\"multiple\" class=\"mat-option-pseudo-checkbox\"\n [state]=\"selected ? 'checked' : 'unchecked'\" [disabled]=\"disabled\"></mat-pseudo-checkbox>\n\n<span class=\"mat-option-text\"><ng-content></ng-content></span>\n\n<!-- See a11y notes inside optgroup.ts for context behind this element. -->\n<span class=\"cdk-visually-hidden\" *ngIf=\"group && group._inert\">({{ group.label }})</span>\n\n<div class=\"mat-option-ripple\" mat-ripple\n [matRippleTrigger]=\"_getHostElement()\"\n [matRippleDisabled]=\"disabled || disableRipple\">\n</div>\n", styles: [".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"], components: [{ type: MatPseudoCheckbox, selector: "mat-pseudo-checkbox", inputs: ["state", "disabled"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1709
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatOption, decorators: [{
1672
1710
  type: Component,
1673
1711
  args: [{ selector: 'mat-option', exportAs: 'matOption', host: {
1674
1712
  'role': 'option',
@@ -1743,10 +1781,10 @@ function _getOptionScrollPosition(optionOffset, optionHeight, currentScrollPosit
1743
1781
  */
1744
1782
  class MatOptionModule {
1745
1783
  }
1746
- MatOptionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatOptionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1747
- MatOptionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatOptionModule, declarations: [MatOption, MatOptgroup], imports: [MatRippleModule, CommonModule, MatCommonModule, MatPseudoCheckboxModule], exports: [MatOption, MatOptgroup] });
1748
- MatOptionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatOptionModule, imports: [[MatRippleModule, CommonModule, MatCommonModule, MatPseudoCheckboxModule]] });
1749
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatOptionModule, decorators: [{
1784
+ MatOptionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatOptionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1785
+ MatOptionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatOptionModule, declarations: [MatOption, MatOptgroup], imports: [MatRippleModule, CommonModule, MatCommonModule, MatPseudoCheckboxModule], exports: [MatOption, MatOptgroup] });
1786
+ MatOptionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatOptionModule, imports: [[MatRippleModule, CommonModule, MatCommonModule, MatPseudoCheckboxModule]] });
1787
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: MatOptionModule, decorators: [{
1750
1788
  type: NgModule,
1751
1789
  args: [{
1752
1790
  imports: [MatRippleModule, CommonModule, MatCommonModule, MatPseudoCheckboxModule],