@angular/material 14.0.0-next.4 → 14.0.0-next.7

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 (472) hide show
  1. package/autocomplete/autocomplete-trigger.d.ts +14 -3
  2. package/autocomplete/autocomplete.d.ts +7 -1
  3. package/badge/_badge-theme.scss +8 -0
  4. package/button-toggle/_button-toggle-theme.scss +10 -0
  5. package/checkbox/_checkbox-theme.scss +1 -1
  6. package/chips/chip-list.d.ts +3 -1
  7. package/chips/chip.d.ts +3 -1
  8. package/core/theming/_theming.scss +9 -0
  9. package/datepicker/calendar-body.d.ts +22 -1
  10. package/dialog/dialog-animations.d.ts +10 -0
  11. package/dialog/dialog-config.d.ts +6 -0
  12. package/dialog/dialog-container.d.ts +8 -4
  13. package/dialog/dialog.d.ts +12 -6
  14. package/dialog/public-api.d.ts +1 -1
  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 +66 -37
  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 +7 -7
  32. package/esm2020/card/card-module.mjs +5 -5
  33. package/esm2020/card/card.mjs +44 -44
  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 +4 -4
  37. package/esm2020/chips/chip-input.mjs +4 -4
  38. package/esm2020/chips/chip-list.mjs +13 -5
  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/datetime/index.mjs +9 -9
  43. package/esm2020/core/datetime/native-date-adapter.mjs +4 -4
  44. package/esm2020/core/error/error-options.mjs +7 -7
  45. package/esm2020/core/line/line.mjs +8 -8
  46. package/esm2020/core/option/index.mjs +5 -5
  47. package/esm2020/core/option/optgroup.mjs +7 -7
  48. package/esm2020/core/option/option.mjs +7 -7
  49. package/esm2020/core/ripple/index.mjs +5 -5
  50. package/esm2020/core/ripple/ripple-renderer.mjs +17 -11
  51. package/esm2020/core/ripple/ripple.mjs +4 -4
  52. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +5 -5
  53. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  54. package/esm2020/core/version.mjs +1 -1
  55. package/esm2020/datepicker/calendar-body.mjs +34 -11
  56. package/esm2020/datepicker/calendar.mjs +13 -13
  57. package/esm2020/datepicker/date-range-input-parts.mjs +10 -10
  58. package/esm2020/datepicker/date-range-input.mjs +4 -4
  59. package/esm2020/datepicker/date-range-picker.mjs +4 -4
  60. package/esm2020/datepicker/date-range-selection-strategy.mjs +4 -4
  61. package/esm2020/datepicker/date-selection-model.mjs +10 -10
  62. package/esm2020/datepicker/datepicker-actions.mjs +10 -10
  63. package/esm2020/datepicker/datepicker-base.mjs +7 -7
  64. package/esm2020/datepicker/datepicker-input-base.mjs +12 -7
  65. package/esm2020/datepicker/datepicker-input.mjs +4 -4
  66. package/esm2020/datepicker/datepicker-intl.mjs +4 -4
  67. package/esm2020/datepicker/datepicker-module.mjs +5 -5
  68. package/esm2020/datepicker/datepicker-toggle.mjs +7 -7
  69. package/esm2020/datepicker/datepicker.mjs +4 -4
  70. package/esm2020/datepicker/month-view.mjs +5 -5
  71. package/esm2020/datepicker/multi-year-view.mjs +4 -4
  72. package/esm2020/datepicker/year-view.mjs +4 -4
  73. package/esm2020/dialog/dialog-animations.mjs +17 -4
  74. package/esm2020/dialog/dialog-config.mjs +8 -1
  75. package/esm2020/dialog/dialog-container.mjs +31 -22
  76. package/esm2020/dialog/dialog-content-directives.mjs +17 -13
  77. package/esm2020/dialog/dialog-module.mjs +5 -5
  78. package/esm2020/dialog/dialog.mjs +23 -39
  79. package/esm2020/dialog/public-api.mjs +2 -2
  80. package/esm2020/dialog/testing/dialog-opener.mjs +67 -0
  81. package/esm2020/dialog/testing/public-api.mjs +2 -1
  82. package/esm2020/divider/divider-module.mjs +5 -5
  83. package/esm2020/divider/divider.mjs +4 -4
  84. package/esm2020/expansion/accordion.mjs +4 -4
  85. package/esm2020/expansion/expansion-module.mjs +5 -5
  86. package/esm2020/expansion/expansion-panel-base.mjs +14 -0
  87. package/esm2020/expansion/expansion-panel-content.mjs +14 -7
  88. package/esm2020/expansion/expansion-panel-header.mjs +10 -10
  89. package/esm2020/expansion/expansion-panel.mjs +13 -10
  90. package/esm2020/expansion/public-api.mjs +2 -1
  91. package/esm2020/form-field/error.mjs +4 -4
  92. package/esm2020/form-field/form-field-control.mjs +4 -4
  93. package/esm2020/form-field/form-field-module.mjs +5 -5
  94. package/esm2020/form-field/form-field.mjs +4 -4
  95. package/esm2020/form-field/hint.mjs +4 -4
  96. package/esm2020/form-field/label.mjs +4 -4
  97. package/esm2020/form-field/placeholder.mjs +4 -4
  98. package/esm2020/form-field/prefix.mjs +4 -4
  99. package/esm2020/form-field/suffix.mjs +4 -4
  100. package/esm2020/grid-list/grid-list-module.mjs +5 -5
  101. package/esm2020/grid-list/grid-list.mjs +4 -4
  102. package/esm2020/grid-list/grid-tile.mjs +16 -16
  103. package/esm2020/icon/icon-module.mjs +5 -5
  104. package/esm2020/icon/icon-registry.mjs +12 -14
  105. package/esm2020/icon/icon.mjs +31 -21
  106. package/esm2020/icon/testing/fake-icon-registry.mjs +9 -9
  107. package/esm2020/input/input-module.mjs +5 -5
  108. package/esm2020/input/input.mjs +4 -4
  109. package/esm2020/list/list-module.mjs +5 -5
  110. package/esm2020/list/list.mjs +19 -21
  111. package/esm2020/list/selection-list.mjs +13 -36
  112. package/esm2020/list/testing/list-item-harness-base.mjs +1 -9
  113. package/esm2020/menu/menu-content.mjs +7 -7
  114. package/esm2020/menu/menu-errors.mjs +1 -12
  115. package/esm2020/menu/menu-item.mjs +8 -4
  116. package/esm2020/menu/menu-module.mjs +5 -5
  117. package/esm2020/menu/menu-trigger.mjs +62 -64
  118. package/esm2020/menu/menu.mjs +24 -8
  119. package/esm2020/paginator/paginator-intl.mjs +4 -4
  120. package/esm2020/paginator/paginator-module.mjs +5 -5
  121. package/esm2020/paginator/paginator.mjs +12 -8
  122. package/esm2020/progress-bar/progress-bar-module.mjs +5 -5
  123. package/esm2020/progress-bar/progress-bar.mjs +4 -4
  124. package/esm2020/progress-spinner/progress-spinner-module.mjs +8 -8
  125. package/esm2020/progress-spinner/progress-spinner.mjs +10 -50
  126. package/esm2020/progress-spinner/public-api.mjs +10 -2
  127. package/esm2020/radio/radio-module.mjs +5 -5
  128. package/esm2020/radio/radio.mjs +13 -13
  129. package/esm2020/select/select-module.mjs +5 -5
  130. package/esm2020/select/select.mjs +21 -11
  131. package/esm2020/sidenav/drawer.mjs +10 -10
  132. package/esm2020/sidenav/sidenav-module.mjs +5 -5
  133. package/esm2020/sidenav/sidenav.mjs +10 -10
  134. package/esm2020/slide-toggle/slide-toggle-module.mjs +9 -9
  135. package/esm2020/slide-toggle/slide-toggle-required-validator.mjs +4 -4
  136. package/esm2020/slide-toggle/slide-toggle.mjs +5 -4
  137. package/esm2020/slider/slider-module.mjs +5 -5
  138. package/esm2020/slider/slider.mjs +4 -4
  139. package/esm2020/snack-bar/simple-snack-bar.mjs +4 -4
  140. package/esm2020/snack-bar/snack-bar-container.mjs +4 -4
  141. package/esm2020/snack-bar/snack-bar-module.mjs +5 -5
  142. package/esm2020/snack-bar/snack-bar.mjs +7 -7
  143. package/esm2020/sort/sort-header-intl.mjs +4 -4
  144. package/esm2020/sort/sort-header.mjs +6 -6
  145. package/esm2020/sort/sort-module.mjs +5 -5
  146. package/esm2020/sort/sort.mjs +4 -4
  147. package/esm2020/stepper/public-api.mjs +2 -2
  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-animations.mjs +9 -3
  152. package/esm2020/stepper/stepper-button.mjs +7 -7
  153. package/esm2020/stepper/stepper-icon.mjs +4 -4
  154. package/esm2020/stepper/stepper-intl.mjs +4 -4
  155. package/esm2020/stepper/stepper-module.mjs +5 -5
  156. package/esm2020/stepper/stepper.mjs +35 -9
  157. package/esm2020/table/cell.mjs +22 -22
  158. package/esm2020/table/row.mjs +22 -22
  159. package/esm2020/table/table-module.mjs +5 -5
  160. package/esm2020/table/table.mjs +7 -7
  161. package/esm2020/table/text-column.mjs +4 -4
  162. package/esm2020/tabs/ink-bar.mjs +11 -22
  163. package/esm2020/tabs/paginated-tab-header.mjs +8 -6
  164. package/esm2020/tabs/tab-body.mjs +10 -10
  165. package/esm2020/tabs/tab-content.mjs +4 -4
  166. package/esm2020/tabs/tab-group.mjs +7 -7
  167. package/esm2020/tabs/tab-header.mjs +7 -7
  168. package/esm2020/tabs/tab-label-wrapper.mjs +4 -4
  169. package/esm2020/tabs/tab-label.mjs +4 -4
  170. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +17 -17
  171. package/esm2020/tabs/tab.mjs +4 -4
  172. package/esm2020/tabs/tabs-module.mjs +5 -5
  173. package/esm2020/toolbar/toolbar-module.mjs +5 -5
  174. package/esm2020/toolbar/toolbar.mjs +7 -7
  175. package/esm2020/tooltip/testing/tooltip-harness.mjs +12 -7
  176. package/esm2020/tooltip/tooltip-module.mjs +5 -5
  177. package/esm2020/tooltip/tooltip.mjs +126 -51
  178. package/esm2020/tree/node.mjs +10 -10
  179. package/esm2020/tree/outlet.mjs +4 -4
  180. package/esm2020/tree/padding.mjs +4 -4
  181. package/esm2020/tree/toggle.mjs +4 -4
  182. package/esm2020/tree/tree-module.mjs +5 -5
  183. package/esm2020/tree/tree.mjs +4 -4
  184. package/expansion/expansion-panel-base.d.ts +22 -0
  185. package/expansion/expansion-panel-content.d.ts +4 -2
  186. package/expansion/public-api.d.ts +1 -0
  187. package/fesm2015/autocomplete/testing.mjs +6 -0
  188. package/fesm2015/autocomplete/testing.mjs.map +1 -1
  189. package/fesm2015/autocomplete.mjs +94 -54
  190. package/fesm2015/autocomplete.mjs.map +1 -1
  191. package/fesm2015/badge/testing.mjs.map +1 -1
  192. package/fesm2015/badge.mjs +7 -7
  193. package/fesm2015/badge.mjs.map +1 -1
  194. package/fesm2015/bottom-sheet/testing.mjs.map +1 -1
  195. package/fesm2015/bottom-sheet.mjs +19 -13
  196. package/fesm2015/bottom-sheet.mjs.map +1 -1
  197. package/fesm2015/button/testing.mjs.map +1 -1
  198. package/fesm2015/button-toggle/testing.mjs.map +1 -1
  199. package/fesm2015/button-toggle.mjs +10 -10
  200. package/fesm2015/button-toggle.mjs.map +1 -1
  201. package/fesm2015/button.mjs +11 -11
  202. package/fesm2015/button.mjs.map +1 -1
  203. package/fesm2015/card/testing.mjs.map +1 -1
  204. package/fesm2015/card.mjs +47 -47
  205. package/fesm2015/card.mjs.map +1 -1
  206. package/fesm2015/checkbox/testing.mjs.map +1 -1
  207. package/fesm2015/checkbox.mjs +14 -14
  208. package/fesm2015/checkbox.mjs.map +1 -1
  209. package/fesm2015/chips/testing.mjs.map +1 -1
  210. package/fesm2015/chips.mjs +36 -24
  211. package/fesm2015/chips.mjs.map +1 -1
  212. package/fesm2015/core/testing.mjs.map +1 -1
  213. package/fesm2015/core.mjs +75 -69
  214. package/fesm2015/core.mjs.map +1 -1
  215. package/fesm2015/datepicker/testing.mjs.map +1 -1
  216. package/fesm2015/datepicker.mjs +125 -97
  217. package/fesm2015/datepicker.mjs.map +1 -1
  218. package/fesm2015/dialog/testing.mjs +65 -2
  219. package/fesm2015/dialog/testing.mjs.map +1 -1
  220. package/fesm2015/dialog.mjs +115 -99
  221. package/fesm2015/dialog.mjs.map +1 -1
  222. package/fesm2015/divider/testing.mjs.map +1 -1
  223. package/fesm2015/divider.mjs +7 -7
  224. package/fesm2015/divider.mjs.map +1 -1
  225. package/fesm2015/expansion/testing.mjs.map +1 -1
  226. package/fesm2015/expansion.mjs +55 -32
  227. package/fesm2015/expansion.mjs.map +1 -1
  228. package/fesm2015/form-field/testing/control.mjs.map +1 -1
  229. package/fesm2015/form-field/testing.mjs.map +1 -1
  230. package/fesm2015/form-field.mjs +28 -28
  231. package/fesm2015/form-field.mjs.map +1 -1
  232. package/fesm2015/grid-list/testing.mjs.map +1 -1
  233. package/fesm2015/grid-list.mjs +22 -22
  234. package/fesm2015/grid-list.mjs.map +1 -1
  235. package/fesm2015/icon/testing.mjs +8 -8
  236. package/fesm2015/icon/testing.mjs.map +1 -1
  237. package/fesm2015/icon.mjs +45 -37
  238. package/fesm2015/icon.mjs.map +1 -1
  239. package/fesm2015/input/testing.mjs.map +1 -1
  240. package/fesm2015/input.mjs +7 -7
  241. package/fesm2015/input.mjs.map +1 -1
  242. package/fesm2015/list/testing.mjs +0 -10
  243. package/fesm2015/list/testing.mjs.map +1 -1
  244. package/fesm2015/list.mjs +37 -63
  245. package/fesm2015/list.mjs.map +1 -1
  246. package/fesm2015/material.mjs.map +1 -1
  247. package/fesm2015/menu/testing.mjs.map +1 -1
  248. package/fesm2015/menu.mjs +103 -93
  249. package/fesm2015/menu.mjs.map +1 -1
  250. package/fesm2015/paginator/testing.mjs.map +1 -1
  251. package/fesm2015/paginator.mjs +18 -14
  252. package/fesm2015/paginator.mjs.map +1 -1
  253. package/fesm2015/progress-bar/testing.mjs.map +1 -1
  254. package/fesm2015/progress-bar.mjs +7 -7
  255. package/fesm2015/progress-bar.mjs.map +1 -1
  256. package/fesm2015/progress-spinner/testing.mjs.map +1 -1
  257. package/fesm2015/progress-spinner.mjs +27 -62
  258. package/fesm2015/progress-spinner.mjs.map +1 -1
  259. package/fesm2015/radio/testing.mjs.map +1 -1
  260. package/fesm2015/radio.mjs +16 -16
  261. package/fesm2015/radio.mjs.map +1 -1
  262. package/fesm2015/select/testing.mjs.map +1 -1
  263. package/fesm2015/select.mjs +24 -14
  264. package/fesm2015/select.mjs.map +1 -1
  265. package/fesm2015/sidenav/testing.mjs.map +1 -1
  266. package/fesm2015/sidenav.mjs +22 -22
  267. package/fesm2015/sidenav.mjs.map +1 -1
  268. package/fesm2015/slide-toggle/testing.mjs.map +1 -1
  269. package/fesm2015/slide-toggle.mjs +15 -14
  270. package/fesm2015/slide-toggle.mjs.map +1 -1
  271. package/fesm2015/slider/testing.mjs.map +1 -1
  272. package/fesm2015/slider.mjs +7 -7
  273. package/fesm2015/slider.mjs.map +1 -1
  274. package/fesm2015/snack-bar/testing.mjs.map +1 -1
  275. package/fesm2015/snack-bar.mjs +16 -16
  276. package/fesm2015/snack-bar.mjs.map +1 -1
  277. package/fesm2015/sort/testing.mjs.map +1 -1
  278. package/fesm2015/sort.mjs +15 -15
  279. package/fesm2015/sort.mjs.map +1 -1
  280. package/fesm2015/stepper/testing.mjs.map +1 -1
  281. package/fesm2015/stepper.mjs +66 -34
  282. package/fesm2015/stepper.mjs.map +1 -1
  283. package/fesm2015/table/testing.mjs.map +1 -1
  284. package/fesm2015/table.mjs +55 -55
  285. package/fesm2015/table.mjs.map +1 -1
  286. package/fesm2015/tabs/testing.mjs.map +1 -1
  287. package/fesm2015/tabs.mjs +69 -79
  288. package/fesm2015/tabs.mjs.map +1 -1
  289. package/fesm2015/toolbar/testing.mjs.map +1 -1
  290. package/fesm2015/toolbar.mjs +10 -10
  291. package/fesm2015/toolbar.mjs.map +1 -1
  292. package/fesm2015/tooltip/testing.mjs +11 -8
  293. package/fesm2015/tooltip/testing.mjs.map +1 -1
  294. package/fesm2015/tooltip.mjs +154 -79
  295. package/fesm2015/tooltip.mjs.map +1 -1
  296. package/fesm2015/tree/testing.mjs.map +1 -1
  297. package/fesm2015/tree.mjs +25 -25
  298. package/fesm2015/tree.mjs.map +1 -1
  299. package/fesm2020/autocomplete/testing.mjs +6 -0
  300. package/fesm2020/autocomplete/testing.mjs.map +1 -1
  301. package/fesm2020/autocomplete.mjs +93 -54
  302. package/fesm2020/autocomplete.mjs.map +1 -1
  303. package/fesm2020/badge/testing.mjs.map +1 -1
  304. package/fesm2020/badge.mjs +7 -7
  305. package/fesm2020/badge.mjs.map +1 -1
  306. package/fesm2020/bottom-sheet/testing.mjs.map +1 -1
  307. package/fesm2020/bottom-sheet.mjs +19 -13
  308. package/fesm2020/bottom-sheet.mjs.map +1 -1
  309. package/fesm2020/button/testing.mjs.map +1 -1
  310. package/fesm2020/button-toggle/testing.mjs.map +1 -1
  311. package/fesm2020/button-toggle.mjs +10 -10
  312. package/fesm2020/button-toggle.mjs.map +1 -1
  313. package/fesm2020/button.mjs +11 -11
  314. package/fesm2020/button.mjs.map +1 -1
  315. package/fesm2020/card/testing.mjs.map +1 -1
  316. package/fesm2020/card.mjs +47 -47
  317. package/fesm2020/card.mjs.map +1 -1
  318. package/fesm2020/checkbox/testing.mjs.map +1 -1
  319. package/fesm2020/checkbox.mjs +14 -14
  320. package/fesm2020/checkbox.mjs.map +1 -1
  321. package/fesm2020/chips/testing.mjs.map +1 -1
  322. package/fesm2020/chips.mjs +36 -24
  323. package/fesm2020/chips.mjs.map +1 -1
  324. package/fesm2020/core/testing.mjs.map +1 -1
  325. package/fesm2020/core.mjs +75 -69
  326. package/fesm2020/core.mjs.map +1 -1
  327. package/fesm2020/datepicker/testing.mjs.map +1 -1
  328. package/fesm2020/datepicker.mjs +125 -97
  329. package/fesm2020/datepicker.mjs.map +1 -1
  330. package/fesm2020/dialog/testing.mjs +65 -1
  331. package/fesm2020/dialog/testing.mjs.map +1 -1
  332. package/fesm2020/dialog.mjs +115 -99
  333. package/fesm2020/dialog.mjs.map +1 -1
  334. package/fesm2020/divider/testing.mjs.map +1 -1
  335. package/fesm2020/divider.mjs +7 -7
  336. package/fesm2020/divider.mjs.map +1 -1
  337. package/fesm2020/expansion/testing.mjs.map +1 -1
  338. package/fesm2020/expansion.mjs +53 -32
  339. package/fesm2020/expansion.mjs.map +1 -1
  340. package/fesm2020/form-field/testing/control.mjs.map +1 -1
  341. package/fesm2020/form-field/testing.mjs.map +1 -1
  342. package/fesm2020/form-field.mjs +28 -28
  343. package/fesm2020/form-field.mjs.map +1 -1
  344. package/fesm2020/grid-list/testing.mjs.map +1 -1
  345. package/fesm2020/grid-list.mjs +22 -22
  346. package/fesm2020/grid-list.mjs.map +1 -1
  347. package/fesm2020/icon/testing.mjs +8 -8
  348. package/fesm2020/icon/testing.mjs.map +1 -1
  349. package/fesm2020/icon.mjs +45 -37
  350. package/fesm2020/icon.mjs.map +1 -1
  351. package/fesm2020/input/testing.mjs.map +1 -1
  352. package/fesm2020/input.mjs +7 -7
  353. package/fesm2020/input.mjs.map +1 -1
  354. package/fesm2020/list/testing.mjs +0 -8
  355. package/fesm2020/list/testing.mjs.map +1 -1
  356. package/fesm2020/list.mjs +34 -59
  357. package/fesm2020/list.mjs.map +1 -1
  358. package/fesm2020/material.mjs.map +1 -1
  359. package/fesm2020/menu/testing.mjs.map +1 -1
  360. package/fesm2020/menu.mjs +100 -93
  361. package/fesm2020/menu.mjs.map +1 -1
  362. package/fesm2020/paginator/testing.mjs.map +1 -1
  363. package/fesm2020/paginator.mjs +18 -14
  364. package/fesm2020/paginator.mjs.map +1 -1
  365. package/fesm2020/progress-bar/testing.mjs.map +1 -1
  366. package/fesm2020/progress-bar.mjs +7 -7
  367. package/fesm2020/progress-bar.mjs.map +1 -1
  368. package/fesm2020/progress-spinner/testing.mjs.map +1 -1
  369. package/fesm2020/progress-spinner.mjs +27 -60
  370. package/fesm2020/progress-spinner.mjs.map +1 -1
  371. package/fesm2020/radio/testing.mjs.map +1 -1
  372. package/fesm2020/radio.mjs +16 -16
  373. package/fesm2020/radio.mjs.map +1 -1
  374. package/fesm2020/select/testing.mjs.map +1 -1
  375. package/fesm2020/select.mjs +24 -14
  376. package/fesm2020/select.mjs.map +1 -1
  377. package/fesm2020/sidenav/testing.mjs.map +1 -1
  378. package/fesm2020/sidenav.mjs +22 -22
  379. package/fesm2020/sidenav.mjs.map +1 -1
  380. package/fesm2020/slide-toggle/testing.mjs.map +1 -1
  381. package/fesm2020/slide-toggle.mjs +15 -14
  382. package/fesm2020/slide-toggle.mjs.map +1 -1
  383. package/fesm2020/slider/testing.mjs.map +1 -1
  384. package/fesm2020/slider.mjs +7 -7
  385. package/fesm2020/slider.mjs.map +1 -1
  386. package/fesm2020/snack-bar/testing.mjs.map +1 -1
  387. package/fesm2020/snack-bar.mjs +16 -16
  388. package/fesm2020/snack-bar.mjs.map +1 -1
  389. package/fesm2020/sort/testing.mjs.map +1 -1
  390. package/fesm2020/sort.mjs +15 -15
  391. package/fesm2020/sort.mjs.map +1 -1
  392. package/fesm2020/stepper/testing.mjs.map +1 -1
  393. package/fesm2020/stepper.mjs +66 -34
  394. package/fesm2020/stepper.mjs.map +1 -1
  395. package/fesm2020/table/testing.mjs.map +1 -1
  396. package/fesm2020/table.mjs +55 -55
  397. package/fesm2020/table.mjs.map +1 -1
  398. package/fesm2020/tabs/testing.mjs.map +1 -1
  399. package/fesm2020/tabs.mjs +69 -79
  400. package/fesm2020/tabs.mjs.map +1 -1
  401. package/fesm2020/toolbar/testing.mjs.map +1 -1
  402. package/fesm2020/toolbar.mjs +10 -10
  403. package/fesm2020/toolbar.mjs.map +1 -1
  404. package/fesm2020/tooltip/testing.mjs +11 -6
  405. package/fesm2020/tooltip/testing.mjs.map +1 -1
  406. package/fesm2020/tooltip.mjs +147 -71
  407. package/fesm2020/tooltip.mjs.map +1 -1
  408. package/fesm2020/tree/testing.mjs.map +1 -1
  409. package/fesm2020/tree.mjs +25 -25
  410. package/fesm2020/tree.mjs.map +1 -1
  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/list/selection-list.d.ts +4 -21
  415. package/list/testing/list-item-harness-base.d.ts +1 -7
  416. package/menu/menu-errors.d.ts +0 -5
  417. package/menu/menu-item.d.ts +3 -2
  418. package/menu/menu-trigger.d.ts +14 -10
  419. package/package.json +7 -7
  420. package/paginator/paginator.d.ts +12 -1
  421. package/prebuilt-themes/deeppurple-amber.css +1 -1
  422. package/prebuilt-themes/indigo-pink.css +1 -1
  423. package/prebuilt-themes/pink-bluegrey.css +1 -1
  424. package/prebuilt-themes/purple-green.css +1 -1
  425. package/progress-spinner/progress-spinner-module.d.ts +1 -1
  426. package/progress-spinner/progress-spinner.d.ts +1 -18
  427. package/progress-spinner/public-api.d.ts +8 -1
  428. package/schematics/migration.json +5 -0
  429. package/schematics/ng-add/fonts/material-fonts.js +4 -13
  430. package/schematics/ng-add/fonts/material-fonts.mjs +4 -13
  431. package/schematics/ng-add/index.js +2 -2
  432. package/schematics/ng-add/index.mjs +2 -2
  433. package/schematics/ng-add/schema.d.ts +2 -2
  434. package/schematics/ng-add/schema.js +1 -1
  435. package/schematics/ng-add/schema.json +12 -4
  436. package/schematics/ng-add/schema.mjs +1 -1
  437. package/schematics/ng-add/setup-project.js +16 -23
  438. package/schematics/ng-add/setup-project.mjs +16 -23
  439. package/schematics/ng-add/theming/theming.js +28 -39
  440. package/schematics/ng-add/theming/theming.mjs +28 -39
  441. package/schematics/ng-generate/address-form/index.js +5 -14
  442. package/schematics/ng-generate/address-form/index.mjs +5 -14
  443. package/schematics/ng-generate/dashboard/index.js +5 -14
  444. package/schematics/ng-generate/dashboard/index.mjs +5 -14
  445. package/schematics/ng-generate/navigation/index.js +5 -14
  446. package/schematics/ng-generate/navigation/index.mjs +5 -14
  447. package/schematics/ng-generate/table/index.js +5 -14
  448. package/schematics/ng-generate/table/index.mjs +5 -14
  449. package/schematics/ng-generate/tree/index.js +5 -14
  450. package/schematics/ng-generate/tree/index.mjs +5 -14
  451. package/schematics/ng-update/data/constructor-checks.js +7 -1
  452. package/schematics/ng-update/data/constructor-checks.mjs +7 -1
  453. package/schematics/ng-update/data/css-selectors.js +7 -1
  454. package/schematics/ng-update/data/css-selectors.mjs +7 -1
  455. package/schematics/ng-update/data/index.js +6 -2
  456. package/schematics/ng-update/data/index.mjs +6 -2
  457. package/schematics/ng-update/index.d.ts +2 -0
  458. package/schematics/ng-update/index.js +7 -2
  459. package/schematics/ng-update/index.mjs +7 -2
  460. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.js +2 -2
  461. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.mjs +2 -2
  462. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.js +2 -3
  463. package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.mjs +2 -3
  464. package/schematics/ng-update/migrations/theming-api-v12/migration.js +5 -5
  465. package/schematics/ng-update/migrations/theming-api-v12/migration.mjs +5 -5
  466. package/select/select.d.ts +5 -0
  467. package/stepper/public-api.d.ts +1 -1
  468. package/stepper/stepper-animations.d.ts +2 -0
  469. package/stepper/stepper.d.ts +11 -1
  470. package/tabs/ink-bar.d.ts +0 -5
  471. package/tooltip/testing/tooltip-harness.d.ts +6 -0
  472. package/tooltip/tooltip.d.ts +36 -8
@@ -1,4 +1,8 @@
1
1
  import { ContentContainerComponentHarness, TestKey, HarnessPredicate } from '@angular/cdk/testing';
2
+ import { __decorate, __metadata } from 'tslib';
3
+ import { Directive, Component, ChangeDetectionStrategy, ViewEncapsulation, NgModule } from '@angular/core';
4
+ import { _MatDialogBase, MatDialog, MatDialogModule } from '@angular/material/dialog';
5
+ import { NoopAnimationsModule } from '@angular/platform-browser/animations';
2
6
 
3
7
  /**
4
8
  * @license
@@ -90,6 +94,66 @@ MatDialogHarness.hostSelector = '.mat-dialog-container';
90
94
  * found in the LICENSE file at https://angular.io/license
91
95
  */
92
96
 
97
+ /**
98
+ * @license
99
+ * Copyright Google LLC All Rights Reserved.
100
+ *
101
+ * Use of this source code is governed by an MIT-style license that can be
102
+ * found in the LICENSE file at https://angular.io/license
103
+ */
104
+ var _MatTestDialogOpenerBase_1, MatTestDialogOpener_1;
105
+ /** Base class for a component that immediately opens a dialog when created. */
106
+ let _MatTestDialogOpenerBase = _MatTestDialogOpenerBase_1 = class _MatTestDialogOpenerBase {
107
+ constructor(dialog) {
108
+ this.dialog = dialog;
109
+ if (!_MatTestDialogOpenerBase_1.component) {
110
+ throw new Error(`MatTestDialogOpener does not have a component provided.`);
111
+ }
112
+ this.dialogRef = this.dialog.open(_MatTestDialogOpenerBase_1.component, _MatTestDialogOpenerBase_1.config || {});
113
+ this._afterClosedSubscription = this.dialogRef.afterClosed().subscribe(result => {
114
+ this.closedResult = result;
115
+ });
116
+ }
117
+ ngOnDestroy() {
118
+ this._afterClosedSubscription.unsubscribe();
119
+ _MatTestDialogOpenerBase_1.component = undefined;
120
+ _MatTestDialogOpenerBase_1.config = undefined;
121
+ }
122
+ };
123
+ _MatTestDialogOpenerBase = _MatTestDialogOpenerBase_1 = __decorate([
124
+ Directive(),
125
+ __metadata("design:paramtypes", [_MatDialogBase])
126
+ ], _MatTestDialogOpenerBase);
127
+ /** Test component that immediately opens a dialog when created. */
128
+ let MatTestDialogOpener = MatTestDialogOpener_1 = class MatTestDialogOpener extends _MatTestDialogOpenerBase {
129
+ constructor(dialog) {
130
+ super(dialog);
131
+ }
132
+ /** Static method that prepares this class to open the provided component. */
133
+ static withComponent(component, config) {
134
+ _MatTestDialogOpenerBase.component = component;
135
+ _MatTestDialogOpenerBase.config = config;
136
+ return MatTestDialogOpener_1;
137
+ }
138
+ };
139
+ MatTestDialogOpener = MatTestDialogOpener_1 = __decorate([
140
+ Component({
141
+ selector: 'mat-test-dialog-opener',
142
+ template: '',
143
+ changeDetection: ChangeDetectionStrategy.OnPush,
144
+ encapsulation: ViewEncapsulation.None,
145
+ }),
146
+ __metadata("design:paramtypes", [MatDialog])
147
+ ], MatTestDialogOpener);
148
+ let MatTestDialogOpenerModule = class MatTestDialogOpenerModule {
149
+ };
150
+ MatTestDialogOpenerModule = __decorate([
151
+ NgModule({
152
+ declarations: [MatTestDialogOpener],
153
+ imports: [MatDialogModule, NoopAnimationsModule],
154
+ })
155
+ ], MatTestDialogOpenerModule);
156
+
93
157
  /**
94
158
  * @license
95
159
  * Copyright Google LLC All Rights Reserved.
@@ -106,5 +170,5 @@ MatDialogHarness.hostSelector = '.mat-dialog-container';
106
170
  * found in the LICENSE file at https://angular.io/license
107
171
  */
108
172
 
109
- export { MatDialogHarness, _MatDialogHarnessBase };
173
+ export { MatDialogHarness, MatTestDialogOpener, MatTestDialogOpenerModule, _MatDialogHarnessBase, _MatTestDialogOpenerBase };
110
174
  //# sourceMappingURL=testing.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"testing.mjs","sources":["../../../../../../../src/material/dialog/testing/dialog-harness.ts","../../../../../../../src/material/dialog/testing/dialog-harness-filters.ts","../../../../../../../src/material/dialog/testing/public-api.ts","../../../../../../../src/material/dialog/testing/index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate, TestKey} from '@angular/cdk/testing';\nimport {DialogRole} from '@angular/material/dialog';\nimport {DialogHarnessFilters} from './dialog-harness-filters';\n\n/** Selectors for different sections of the mat-dialog that can contain user content. */\nexport const enum MatDialogSection {\n TITLE = '.mat-dialog-title',\n CONTENT = '.mat-dialog-content',\n ACTIONS = '.mat-dialog-actions',\n}\n\n/** Base class for the `MatDialogHarness` implementation. */\nexport class _MatDialogHarnessBase\n // @breaking-change 14.0.0 change generic type to MatDialogSection.\n extends ContentContainerComponentHarness<MatDialogSection | string>\n{\n protected _title = this.locatorForOptional(MatDialogSection.TITLE);\n protected _content = this.locatorForOptional(MatDialogSection.CONTENT);\n protected _actions = this.locatorForOptional(MatDialogSection.ACTIONS);\n\n /** Gets the id of the dialog. */\n async getId(): Promise<string | null> {\n const id = await (await this.host()).getAttribute('id');\n // In case no id has been specified, the \"id\" property always returns\n // an empty string. To make this method more explicit, we return null.\n return id !== '' ? id : null;\n }\n\n /** Gets the role of the dialog. */\n async getRole(): Promise<DialogRole | null> {\n return (await this.host()).getAttribute('role') as Promise<DialogRole | null>;\n }\n\n /** Gets the value of the dialog's \"aria-label\" attribute. */\n async getAriaLabel(): Promise<string | null> {\n return (await this.host()).getAttribute('aria-label');\n }\n\n /** Gets the value of the dialog's \"aria-labelledby\" attribute. */\n async getAriaLabelledby(): Promise<string | null> {\n return (await this.host()).getAttribute('aria-labelledby');\n }\n\n /** Gets the value of the dialog's \"aria-describedby\" attribute. */\n async getAriaDescribedby(): Promise<string | null> {\n return (await this.host()).getAttribute('aria-describedby');\n }\n\n /**\n * Closes the dialog by pressing escape.\n *\n * Note: this method does nothing if `disableClose` has been set to `true` for the dialog.\n */\n async close(): Promise<void> {\n await (await this.host()).sendKeys(TestKey.ESCAPE);\n }\n\n /** Gets te dialog's text. */\n async getText() {\n return (await this.host()).text();\n }\n\n /** Gets the dialog's title text. This only works if the dialog is using mat-dialog-title. */\n async getTitleText() {\n return (await this._title())?.text() ?? '';\n }\n\n /** Gets the dialog's content text. This only works if the dialog is using mat-dialog-content. */\n async getContentText() {\n return (await this._content())?.text() ?? '';\n }\n\n /** Gets the dialog's actions text. This only works if the dialog is using mat-dialog-actions. */\n async getActionsText() {\n return (await this._actions())?.text() ?? '';\n }\n}\n\n/** Harness for interacting with a standard `MatDialog` in tests. */\nexport class MatDialogHarness extends _MatDialogHarnessBase {\n // Developers can provide a custom component or template for the\n // dialog. The canonical dialog parent is the \"MatDialogContainer\".\n /** The selector for the host element of a `MatDialog` instance. */\n static hostSelector = '.mat-dialog-container';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatDialogHarness` that meets\n * certain criteria.\n * @param options Options for filtering which dialog instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(options: DialogHarnessFilters = {}): HarnessPredicate<MatDialogHarness> {\n return new HarnessPredicate(MatDialogHarness, options);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {BaseHarnessFilters} from '@angular/cdk/testing';\n\n/** A set of criteria that can be used to filter a list of `MatDialogHarness` instances. */\nexport interface DialogHarnessFilters extends BaseHarnessFilters {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './dialog-harness';\nexport * from './dialog-harness-filters';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;AAAA;;;;;;;AAmBA;MACa,qBAAqB;AAChC;AACA,SAAQ,gCAA2D;IAFrE;;QAIY,WAAM,GAAG,IAAI,CAAC,kBAAkB,iCAAwB,CAAC;QACzD,aAAQ,GAAG,IAAI,CAAC,kBAAkB,qCAA0B,CAAC;QAC7D,aAAQ,GAAG,IAAI,CAAC,kBAAkB,qCAA0B,CAAC;KA0DxE;;IAvDC,MAAM,KAAK;QACT,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;;;QAGxD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;KAC9B;;IAGD,MAAM,OAAO;QACX,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,YAAY,CAAC,MAAM,CAA+B,CAAC;KAC/E;;IAGD,MAAM,YAAY;QAChB,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;KACvD;;IAGD,MAAM,iBAAiB;QACrB,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,YAAY,CAAC,iBAAiB,CAAC,CAAC;KAC5D;;IAGD,MAAM,kBAAkB;QACtB,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,YAAY,CAAC,kBAAkB,CAAC,CAAC;KAC7D;;;;;;IAOD,MAAM,KAAK;QACT,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;KACpD;;IAGD,MAAM,OAAO;QACX,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC;KACnC;;IAGD,MAAM,YAAY;QAChB,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC;KAC5C;;IAGD,MAAM,cAAc;QAClB,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC;KAC9C;;IAGD,MAAM,cAAc;QAClB,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC;KAC9C;CACF;AAED;MACa,gBAAiB,SAAQ,qBAAqB;;;;;;;IAYzD,OAAO,IAAI,CAAC,UAAgC,EAAE;QAC5C,OAAO,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;KACxD;;AAbD;AACA;AACA;AACO,6BAAY,GAAG,uBAAuB;;AC3F/C;;;;;;;;ACAA;;;;;;;;ACAA;;;;;;;;;;"}
1
+ {"version":3,"file":"testing.mjs","sources":["../../../../../../../src/material/dialog/testing/dialog-harness.ts","../../../../../../../src/material/dialog/testing/dialog-harness-filters.ts","../../../../../../../src/material/dialog/testing/dialog-opener.ts","../../../../../../../src/material/dialog/testing/public-api.ts","../../../../../../../src/material/dialog/testing/index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {ContentContainerComponentHarness, HarnessPredicate, TestKey} from '@angular/cdk/testing';\nimport {DialogRole} from '@angular/material/dialog';\nimport {DialogHarnessFilters} from './dialog-harness-filters';\n\n/** Selectors for different sections of the mat-dialog that can contain user content. */\nexport const enum MatDialogSection {\n TITLE = '.mat-dialog-title',\n CONTENT = '.mat-dialog-content',\n ACTIONS = '.mat-dialog-actions',\n}\n\n/** Base class for the `MatDialogHarness` implementation. */\nexport class _MatDialogHarnessBase\n // @breaking-change 14.0.0 change generic type to MatDialogSection.\n extends ContentContainerComponentHarness<MatDialogSection | string>\n{\n protected _title = this.locatorForOptional(MatDialogSection.TITLE);\n protected _content = this.locatorForOptional(MatDialogSection.CONTENT);\n protected _actions = this.locatorForOptional(MatDialogSection.ACTIONS);\n\n /** Gets the id of the dialog. */\n async getId(): Promise<string | null> {\n const id = await (await this.host()).getAttribute('id');\n // In case no id has been specified, the \"id\" property always returns\n // an empty string. To make this method more explicit, we return null.\n return id !== '' ? id : null;\n }\n\n /** Gets the role of the dialog. */\n async getRole(): Promise<DialogRole | null> {\n return (await this.host()).getAttribute('role') as Promise<DialogRole | null>;\n }\n\n /** Gets the value of the dialog's \"aria-label\" attribute. */\n async getAriaLabel(): Promise<string | null> {\n return (await this.host()).getAttribute('aria-label');\n }\n\n /** Gets the value of the dialog's \"aria-labelledby\" attribute. */\n async getAriaLabelledby(): Promise<string | null> {\n return (await this.host()).getAttribute('aria-labelledby');\n }\n\n /** Gets the value of the dialog's \"aria-describedby\" attribute. */\n async getAriaDescribedby(): Promise<string | null> {\n return (await this.host()).getAttribute('aria-describedby');\n }\n\n /**\n * Closes the dialog by pressing escape.\n *\n * Note: this method does nothing if `disableClose` has been set to `true` for the dialog.\n */\n async close(): Promise<void> {\n await (await this.host()).sendKeys(TestKey.ESCAPE);\n }\n\n /** Gets te dialog's text. */\n async getText() {\n return (await this.host()).text();\n }\n\n /** Gets the dialog's title text. This only works if the dialog is using mat-dialog-title. */\n async getTitleText() {\n return (await this._title())?.text() ?? '';\n }\n\n /** Gets the dialog's content text. This only works if the dialog is using mat-dialog-content. */\n async getContentText() {\n return (await this._content())?.text() ?? '';\n }\n\n /** Gets the dialog's actions text. This only works if the dialog is using mat-dialog-actions. */\n async getActionsText() {\n return (await this._actions())?.text() ?? '';\n }\n}\n\n/** Harness for interacting with a standard `MatDialog` in tests. */\nexport class MatDialogHarness extends _MatDialogHarnessBase {\n // Developers can provide a custom component or template for the\n // dialog. The canonical dialog parent is the \"MatDialogContainer\".\n /** The selector for the host element of a `MatDialog` instance. */\n static hostSelector = '.mat-dialog-container';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatDialogHarness` that meets\n * certain criteria.\n * @param options Options for filtering which dialog instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(options: DialogHarnessFilters = {}): HarnessPredicate<MatDialogHarness> {\n return new HarnessPredicate(MatDialogHarness, options);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {BaseHarnessFilters} from '@angular/cdk/testing';\n\n/** A set of criteria that can be used to filter a list of `MatDialogHarness` instances. */\nexport interface DialogHarnessFilters extends BaseHarnessFilters {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {ComponentType} from '@angular/cdk/overlay';\nimport {\n ChangeDetectionStrategy,\n Directive,\n Component,\n NgModule,\n OnDestroy,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n _MatDialogBase,\n _MatDialogContainerBase,\n MatDialog,\n MatDialogConfig,\n MatDialogContainer,\n MatDialogModule,\n MatDialogRef,\n} from '@angular/material/dialog';\nimport {Subscription} from 'rxjs';\nimport {NoopAnimationsModule} from '@angular/platform-browser/animations';\n\n/** Base class for a component that immediately opens a dialog when created. */\n@Directive()\nexport class _MatTestDialogOpenerBase<C extends _MatDialogContainerBase, T, R>\n implements OnDestroy\n{\n /** Component that should be opened with the MatDialog `open` method. */\n protected static component: ComponentType<unknown> | undefined;\n\n /** Config that should be provided to the MatDialog `open` method. */\n protected static config: MatDialogConfig | undefined;\n\n /** MatDialogRef returned from the MatDialog `open` method. */\n dialogRef: MatDialogRef<T, R>;\n\n /** Data passed to the `MatDialog` close method. */\n closedResult: R | undefined;\n\n private readonly _afterClosedSubscription: Subscription;\n\n constructor(public dialog: _MatDialogBase<C>) {\n if (!_MatTestDialogOpenerBase.component) {\n throw new Error(`MatTestDialogOpener does not have a component provided.`);\n }\n\n this.dialogRef = this.dialog.open<T, R>(\n _MatTestDialogOpenerBase.component as ComponentType<T>,\n _MatTestDialogOpenerBase.config || {},\n );\n this._afterClosedSubscription = this.dialogRef.afterClosed().subscribe(result => {\n this.closedResult = result;\n });\n }\n\n ngOnDestroy() {\n this._afterClosedSubscription.unsubscribe();\n _MatTestDialogOpenerBase.component = undefined;\n _MatTestDialogOpenerBase.config = undefined;\n }\n}\n\n/** Test component that immediately opens a dialog when created. */\n@Component({\n selector: 'mat-test-dialog-opener',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatTestDialogOpener<T = unknown, R = unknown> extends _MatTestDialogOpenerBase<\n MatDialogContainer,\n T,\n R\n> {\n constructor(dialog: MatDialog) {\n super(dialog);\n }\n\n /** Static method that prepares this class to open the provided component. */\n static withComponent<T = unknown, R = unknown>(\n component: ComponentType<T>,\n config?: MatDialogConfig,\n ) {\n _MatTestDialogOpenerBase.component = component;\n _MatTestDialogOpenerBase.config = config;\n return MatTestDialogOpener as ComponentType<MatTestDialogOpener<T, R>>;\n }\n}\n\n@NgModule({\n declarations: [MatTestDialogOpener],\n imports: [MatDialogModule, NoopAnimationsModule],\n})\nexport class MatTestDialogOpenerModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './dialog-harness';\nexport * from './dialog-harness-filters';\nexport * from './dialog-opener';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -8,14 +8,51 @@ import { MatCommonModule } from '@angular/material/core';
8
8
  import { Directionality } from '@angular/cdk/bidi';
9
9
  import * as i2 from '@angular/common';
10
10
  import { DOCUMENT } from '@angular/common';
11
- import { Subject, defer, Subscription, of } from 'rxjs';
11
+ import { Subject, defer, of } from 'rxjs';
12
12
  import { filter, take, startWith } from 'rxjs/operators';
13
+ import { trigger, state, style, transition, group, animate, query, animateChild } from '@angular/animations';
13
14
  import * as i1 from '@angular/cdk/a11y';
14
15
  import { _getFocusedElementPierceShadowDom } from '@angular/cdk/platform';
15
- import { trigger, state, style, transition, animate } from '@angular/animations';
16
16
  import { ESCAPE, hasModifierKey } from '@angular/cdk/keycodes';
17
17
  import { ANIMATION_MODULE_TYPE } from '@angular/platform-browser/animations';
18
18
 
19
+ /**
20
+ * @license
21
+ * Copyright Google LLC All Rights Reserved.
22
+ *
23
+ * Use of this source code is governed by an MIT-style license that can be
24
+ * found in the LICENSE file at https://angular.io/license
25
+ */
26
+ /**
27
+ * Default parameters for the animation for backwards compatibility.
28
+ * @docs-private
29
+ */
30
+ const defaultParams = {
31
+ params: { enterAnimationDuration: '150ms', exitAnimationDuration: '75ms' },
32
+ };
33
+ /**
34
+ * Animations used by MatDialog.
35
+ * @docs-private
36
+ */
37
+ const matDialogAnimations = {
38
+ /** Animation that is applied on the dialog container by default. */
39
+ dialogContainer: trigger('dialogContainer', [
40
+ // Note: The `enter` animation transitions to `transform: none`, because for some reason
41
+ // specifying the transform explicitly, causes IE both to blur the dialog content and
42
+ // decimate the animation performance. Leaving it as `none` solves both issues.
43
+ state('void, exit', style({ opacity: 0, transform: 'scale(0.7)' })),
44
+ state('enter', style({ transform: 'none' })),
45
+ transition('* => enter', group([
46
+ animate('{{enterAnimationDuration}} cubic-bezier(0, 0, 0.2, 1)', style({ transform: 'none', opacity: 1 })),
47
+ query('@*', animateChild(), { optional: true }),
48
+ ]), defaultParams),
49
+ transition('* => void, * => exit', group([
50
+ animate('{{exitAnimationDuration}} cubic-bezier(0.4, 0.0, 0.2, 1)', style({ opacity: 0 })),
51
+ query('@*', animateChild(), { optional: true }),
52
+ ]), defaultParams),
53
+ ]),
54
+ };
55
+
19
56
  /**
20
57
  * @license
21
58
  * Copyright Google LLC All Rights Reserved.
@@ -63,40 +100,22 @@ class MatDialogConfig {
63
100
  * previously-focused element, after it's closed.
64
101
  */
65
102
  this.restoreFocus = true;
103
+ /** Whether to wait for the opening animation to finish before trapping focus. */
104
+ this.delayFocusTrap = true;
66
105
  /**
67
106
  * Whether the dialog should close when the user goes backwards/forwards in history.
68
107
  * Note that this usually doesn't include clicking on links (unless the user is using
69
108
  * the `HashLocationStrategy`).
70
109
  */
71
110
  this.closeOnNavigation = true;
111
+ /** Duration of the enter animation. Has to be a valid CSS value (e.g. 100ms). */
112
+ this.enterAnimationDuration = defaultParams.params.enterAnimationDuration;
113
+ /** Duration of the exit animation. Has to be a valid CSS value (e.g. 50ms). */
114
+ this.exitAnimationDuration = defaultParams.params.exitAnimationDuration;
72
115
  // TODO(jelbourn): add configuration for lifecycle hooks, ARIA labelling.
73
116
  }
74
117
  }
75
118
 
76
- /**
77
- * @license
78
- * Copyright Google LLC All Rights Reserved.
79
- *
80
- * Use of this source code is governed by an MIT-style license that can be
81
- * found in the LICENSE file at https://angular.io/license
82
- */
83
- /**
84
- * Animations used by MatDialog.
85
- * @docs-private
86
- */
87
- const matDialogAnimations = {
88
- /** Animation that is applied on the dialog container by default. */
89
- dialogContainer: trigger('dialogContainer', [
90
- // Note: The `enter` animation transitions to `transform: none`, because for some reason
91
- // specifying the transform explicitly, causes IE both to blur the dialog content and
92
- // decimate the animation performance. Leaving it as `none` solves both issues.
93
- state('void, exit', style({ opacity: 0, transform: 'scale(0.7)' })),
94
- state('enter', style({ transform: 'none' })),
95
- transition('* => enter', animate('150ms cubic-bezier(0, 0, 0.2, 1)', style({ transform: 'none', opacity: 1 }))),
96
- transition('* => void, * => exit', animate('75ms cubic-bezier(0.4, 0.0, 0.2, 1)', style({ opacity: 0 }))),
97
- ]),
98
- };
99
-
100
119
  /**
101
120
  * Throws an exception for the case when a ComponentPortal is
102
121
  * attached to a DomPortalOutlet without an origin.
@@ -148,10 +167,12 @@ class _MatDialogContainerBase extends BasePortalOutlet {
148
167
  }
149
168
  /** Initializes the dialog container with the attached content. */
150
169
  _initializeWithAttachedContent() {
151
- this._setupFocusTrap();
170
+ this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);
152
171
  // Save the previously focused element. This element will be re-focused
153
172
  // when the dialog closes.
154
- this._capturePreviouslyFocusedElement();
173
+ if (this._document) {
174
+ this._elementFocusedBeforeDialogWasOpened = _getFocusedElementPierceShadowDom();
175
+ }
155
176
  }
156
177
  /**
157
178
  * Attach a ComponentPortal as content to this dialog container.
@@ -276,16 +297,6 @@ class _MatDialogContainerBase extends BasePortalOutlet {
276
297
  this._focusTrap.destroy();
277
298
  }
278
299
  }
279
- /** Sets up the focus trap. */
280
- _setupFocusTrap() {
281
- this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);
282
- }
283
- /** Captures the element that was focused before the dialog was opened. */
284
- _capturePreviouslyFocusedElement() {
285
- if (this._document) {
286
- this._elementFocusedBeforeDialogWasOpened = _getFocusedElementPierceShadowDom();
287
- }
288
- }
289
300
  /** Focuses the dialog container. */
290
301
  _focusDialogContainer() {
291
302
  // Note that there is no focus method when rendering on the server.
@@ -300,9 +311,9 @@ class _MatDialogContainerBase extends BasePortalOutlet {
300
311
  return element === activeElement || element.contains(activeElement);
301
312
  }
302
313
  }
303
- _MatDialogContainerBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: _MatDialogContainerBase, deps: [{ token: i0.ElementRef }, { token: i1.FocusTrapFactory }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT, optional: true }, { token: MatDialogConfig }, { token: i1.InteractivityChecker }, { token: i0.NgZone }, { token: i1.FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive });
304
- _MatDialogContainerBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: _MatDialogContainerBase, viewQueries: [{ propertyName: "_portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }], usesInheritance: true, ngImport: i0 });
305
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: _MatDialogContainerBase, decorators: [{
314
+ _MatDialogContainerBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: _MatDialogContainerBase, deps: [{ token: i0.ElementRef }, { token: i1.FocusTrapFactory }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT, optional: true }, { token: MatDialogConfig }, { token: i1.InteractivityChecker }, { token: i0.NgZone }, { token: i1.FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive });
315
+ _MatDialogContainerBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.6", type: _MatDialogContainerBase, viewQueries: [{ propertyName: "_portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }], usesInheritance: true, ngImport: i0 });
316
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: _MatDialogContainerBase, decorators: [{
306
317
  type: Directive
307
318
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.FocusTrapFactory }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
308
319
  type: Optional
@@ -327,7 +338,9 @@ class MatDialogContainer extends _MatDialogContainerBase {
327
338
  /** Callback, invoked whenever an animation on the host completes. */
328
339
  _onAnimationDone({ toState, totalTime }) {
329
340
  if (toState === 'enter') {
330
- this._trapFocus();
341
+ if (this._config.delayFocusTrap) {
342
+ this._trapFocus();
343
+ }
331
344
  this._animationStateChanged.next({ state: 'opened', totalTime });
332
345
  }
333
346
  else if (toState === 'exit') {
@@ -351,10 +364,25 @@ class MatDialogContainer extends _MatDialogContainerBase {
351
364
  // view container is using OnPush change detection.
352
365
  this._changeDetectorRef.markForCheck();
353
366
  }
367
+ _initializeWithAttachedContent() {
368
+ super._initializeWithAttachedContent();
369
+ if (!this._config.delayFocusTrap) {
370
+ this._trapFocus();
371
+ }
372
+ }
373
+ _getAnimationState() {
374
+ return {
375
+ value: this._state,
376
+ params: {
377
+ 'enterAnimationDuration': this._config.enterAnimationDuration || defaultParams.params.enterAnimationDuration,
378
+ 'exitAnimationDuration': this._config.exitAnimationDuration || defaultParams.params.exitAnimationDuration,
379
+ },
380
+ };
381
+ }
354
382
  }
355
- MatDialogContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogContainer, deps: null, target: i0.ɵɵFactoryTarget.Component });
356
- MatDialogContainer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatDialogContainer, selector: "mat-dialog-container", host: { attributes: { "tabindex": "-1", "aria-modal": "true" }, listeners: { "@dialogContainer.start": "_onAnimationStart($event)", "@dialogContainer.done": "_onAnimationDone($event)" }, properties: { "id": "_id", "attr.role": "_config.role", "attr.aria-labelledby": "_config.ariaLabel ? null : _ariaLabelledBy", "attr.aria-label": "_config.ariaLabel", "attr.aria-describedby": "_config.ariaDescribedBy || null", "@dialogContainer": "_state" }, classAttribute: "mat-dialog-container" }, usesInheritance: true, ngImport: i0, template: "<ng-template cdkPortalOutlet></ng-template>\n", styles: [".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions.mat-dialog-actions-align-center,.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions.mat-dialog-actions-align-end,.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"], directives: [{ type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [matDialogAnimations.dialogContainer], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
357
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogContainer, decorators: [{
383
+ MatDialogContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogContainer, deps: null, target: i0.ɵɵFactoryTarget.Component });
384
+ MatDialogContainer.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.6", type: MatDialogContainer, selector: "mat-dialog-container", host: { attributes: { "tabindex": "-1", "aria-modal": "true" }, listeners: { "@dialogContainer.start": "_onAnimationStart($event)", "@dialogContainer.done": "_onAnimationDone($event)" }, properties: { "id": "_id", "attr.role": "_config.role", "attr.aria-labelledby": "_config.ariaLabel ? null : _ariaLabelledBy", "attr.aria-label": "_config.ariaLabel", "attr.aria-describedby": "_config.ariaDescribedBy || null", "@dialogContainer": "_getAnimationState()" }, classAttribute: "mat-dialog-container" }, usesInheritance: true, ngImport: i0, template: "<ng-template cdkPortalOutlet></ng-template>\n", styles: [".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions.mat-dialog-actions-align-center,.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions.mat-dialog-actions-align-end,.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"], directives: [{ type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [matDialogAnimations.dialogContainer], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
385
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogContainer, decorators: [{
358
386
  type: Component,
359
387
  args: [{ selector: 'mat-dialog-container', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, animations: [matDialogAnimations.dialogContainer], host: {
360
388
  'class': 'mat-dialog-container',
@@ -365,7 +393,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
365
393
  '[attr.aria-labelledby]': '_config.ariaLabel ? null : _ariaLabelledBy',
366
394
  '[attr.aria-label]': '_config.ariaLabel',
367
395
  '[attr.aria-describedby]': '_config.ariaDescribedBy || null',
368
- '[@dialogContainer]': '_state',
396
+ '[@dialogContainer]': `_getAnimationState()`,
369
397
  '(@dialogContainer.start)': '_onAnimationStart($event)',
370
398
  '(@dialogContainer.done)': '_onAnimationDone($event)',
371
399
  }, template: "<ng-template cdkPortalOutlet></ng-template>\n", styles: [".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions.mat-dialog-actions-align-center,.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions.mat-dialog-actions-align-end,.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"] }]
@@ -601,7 +629,12 @@ const MAT_DIALOG_SCROLL_STRATEGY_PROVIDER = {
601
629
  * for arbitrary dialog refs and dialog container components.
602
630
  */
603
631
  class _MatDialogBase {
604
- constructor(_overlay, _injector, _defaultOptions, _parentDialog, _overlayContainer, scrollStrategy, _dialogRefConstructor, _dialogContainerType, _dialogDataToken, _animationMode) {
632
+ constructor(_overlay, _injector, _defaultOptions, _parentDialog, _overlayContainer, scrollStrategy, _dialogRefConstructor, _dialogContainerType, _dialogDataToken,
633
+ /**
634
+ * @deprecated No longer used. To be removed.
635
+ * @breaking-change 14.0.0
636
+ */
637
+ _animationMode) {
605
638
  this._overlay = _overlay;
606
639
  this._injector = _injector;
607
640
  this._defaultOptions = _defaultOptions;
@@ -610,12 +643,10 @@ class _MatDialogBase {
610
643
  this._dialogRefConstructor = _dialogRefConstructor;
611
644
  this._dialogContainerType = _dialogContainerType;
612
645
  this._dialogDataToken = _dialogDataToken;
613
- this._animationMode = _animationMode;
614
646
  this._openDialogsAtThisLevel = [];
615
647
  this._afterAllClosedAtThisLevel = new Subject();
616
648
  this._afterOpenedAtThisLevel = new Subject();
617
649
  this._ariaHiddenElements = new Map();
618
- this._dialogAnimatingOpen = false;
619
650
  // TODO (jelbourn): tighten the typing right-hand side of this expression.
620
651
  /**
621
652
  * Stream that emits when all open dialog have finished closing.
@@ -645,29 +676,9 @@ class _MatDialogBase {
645
676
  (typeof ngDevMode === 'undefined' || ngDevMode)) {
646
677
  throw Error(`Dialog with id "${config.id}" exists already. The dialog id must be unique.`);
647
678
  }
648
- // If there is a dialog that is currently animating open, return the MatDialogRef of that dialog
649
- if (this._dialogAnimatingOpen) {
650
- return this._lastDialogRef;
651
- }
652
679
  const overlayRef = this._createOverlay(config);
653
680
  const dialogContainer = this._attachDialogContainer(overlayRef, config);
654
- if (this._animationMode !== 'NoopAnimations') {
655
- const animationStateSubscription = dialogContainer._animationStateChanged.subscribe(dialogAnimationEvent => {
656
- if (dialogAnimationEvent.state === 'opening') {
657
- this._dialogAnimatingOpen = true;
658
- }
659
- if (dialogAnimationEvent.state === 'opened') {
660
- this._dialogAnimatingOpen = false;
661
- animationStateSubscription.unsubscribe();
662
- }
663
- });
664
- if (!this._animationStateSubscriptions) {
665
- this._animationStateSubscriptions = new Subscription();
666
- }
667
- this._animationStateSubscriptions.add(animationStateSubscription);
668
- }
669
681
  const dialogRef = this._attachDialogContent(componentOrTemplateRef, dialogContainer, overlayRef, config);
670
- this._lastDialogRef = dialogRef;
671
682
  // If this is the first dialog that we're opening, hide all the non-overlay content.
672
683
  if (!this.openDialogs.length) {
673
684
  this._hideNonDialogContentFromAssistiveTechnology();
@@ -698,10 +709,6 @@ class _MatDialogBase {
698
709
  this._closeDialogs(this._openDialogsAtThisLevel);
699
710
  this._afterAllClosedAtThisLevel.complete();
700
711
  this._afterOpenedAtThisLevel.complete();
701
- // Clean up any subscriptions to dialogs that never finished opening.
702
- if (this._animationStateSubscriptions) {
703
- this._animationStateSubscriptions.unsubscribe();
704
- }
705
712
  }
706
713
  /**
707
714
  * Creates the overlay into which the dialog will be loaded.
@@ -764,15 +771,15 @@ class _MatDialogBase {
764
771
  // Create a reference to the dialog we're creating in order to give the user a handle
765
772
  // to modify and close it.
766
773
  const dialogRef = new this._dialogRefConstructor(overlayRef, dialogContainer, config.id);
774
+ const injector = this._createInjector(config, dialogRef, dialogContainer);
767
775
  if (componentOrTemplateRef instanceof TemplateRef) {
768
776
  dialogContainer.attachTemplatePortal(new TemplatePortal(componentOrTemplateRef, null, {
769
777
  $implicit: config.data,
770
778
  dialogRef,
771
- }));
779
+ }, injector));
772
780
  }
773
781
  else {
774
- const injector = this._createInjector(config, dialogRef, dialogContainer);
775
- const contentRef = dialogContainer.attachComponentPortal(new ComponentPortal(componentOrTemplateRef, config.viewContainerRef, injector));
782
+ const contentRef = dialogContainer.attachComponentPortal(new ComponentPortal(componentOrTemplateRef, config.viewContainerRef, injector, config.componentFactoryResolver));
776
783
  dialogRef.componentInstance = contentRef.instance;
777
784
  }
778
785
  dialogRef.updateSize(config.width, config.height).updatePosition(config.position);
@@ -863,9 +870,9 @@ class _MatDialogBase {
863
870
  }
864
871
  }
865
872
  }
866
- _MatDialogBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: _MatDialogBase, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
867
- _MatDialogBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: _MatDialogBase, ngImport: i0 });
868
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: _MatDialogBase, decorators: [{
873
+ _MatDialogBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: _MatDialogBase, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
874
+ _MatDialogBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.6", type: _MatDialogBase, ngImport: i0 });
875
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: _MatDialogBase, decorators: [{
869
876
  type: Directive
870
877
  }], ctorParameters: function () { return [{ type: i1$1.Overlay }, { type: i0.Injector }, { type: undefined }, { type: undefined }, { type: i1$1.OverlayContainer }, { type: undefined }, { type: i0.Type }, { type: i0.Type }, { type: i0.InjectionToken }, { type: undefined }]; } });
871
878
  /**
@@ -877,13 +884,18 @@ class MatDialog extends _MatDialogBase {
877
884
  * @deprecated `_location` parameter to be removed.
878
885
  * @breaking-change 10.0.0
879
886
  */
880
- location, defaultOptions, scrollStrategy, parentDialog, overlayContainer, animationMode) {
887
+ location, defaultOptions, scrollStrategy, parentDialog, overlayContainer,
888
+ /**
889
+ * @deprecated No longer used. To be removed.
890
+ * @breaking-change 14.0.0
891
+ */
892
+ animationMode) {
881
893
  super(overlay, injector, defaultOptions, parentDialog, overlayContainer, scrollStrategy, MatDialogRef, MatDialogContainer, MAT_DIALOG_DATA, animationMode);
882
894
  }
883
895
  }
884
- MatDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialog, deps: [{ token: i1$1.Overlay }, { token: i0.Injector }, { token: i2.Location, optional: true }, { token: MAT_DIALOG_DEFAULT_OPTIONS, optional: true }, { token: MAT_DIALOG_SCROLL_STRATEGY }, { token: MatDialog, optional: true, skipSelf: true }, { token: i1$1.OverlayContainer }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
885
- MatDialog.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialog });
886
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialog, decorators: [{
896
+ MatDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialog, deps: [{ token: i1$1.Overlay }, { token: i0.Injector }, { token: i2.Location, optional: true }, { token: MAT_DIALOG_DEFAULT_OPTIONS, optional: true }, { token: MAT_DIALOG_SCROLL_STRATEGY }, { token: MatDialog, optional: true, skipSelf: true }, { token: i1$1.OverlayContainer }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
897
+ MatDialog.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialog });
898
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialog, decorators: [{
887
899
  type: Injectable
888
900
  }], ctorParameters: function () { return [{ type: i1$1.Overlay }, { type: i0.Injector }, { type: i2.Location, decorators: [{
889
901
  type: Optional
@@ -967,9 +979,9 @@ class MatDialogClose {
967
979
  _closeDialogVia(this.dialogRef, event.screenX === 0 && event.screenY === 0 ? 'keyboard' : 'mouse', this.dialogResult);
968
980
  }
969
981
  }
970
- MatDialogClose.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogClose, deps: [{ token: MatDialogRef, optional: true }, { token: i0.ElementRef }, { token: MatDialog }], target: i0.ɵɵFactoryTarget.Directive });
971
- MatDialogClose.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: { ariaLabel: ["aria-label", "ariaLabel"], type: "type", dialogResult: ["mat-dialog-close", "dialogResult"], _matDialogClose: ["matDialogClose", "_matDialogClose"] }, host: { listeners: { "click": "_onButtonClick($event)" }, properties: { "attr.aria-label": "ariaLabel || null", "attr.type": "type" } }, exportAs: ["matDialogClose"], usesOnChanges: true, ngImport: i0 });
972
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogClose, decorators: [{
982
+ MatDialogClose.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogClose, deps: [{ token: MatDialogRef, optional: true }, { token: i0.ElementRef }, { token: MatDialog }], target: i0.ɵɵFactoryTarget.Directive });
983
+ MatDialogClose.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.6", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: { ariaLabel: ["aria-label", "ariaLabel"], type: "type", dialogResult: ["mat-dialog-close", "dialogResult"], _matDialogClose: ["matDialogClose", "_matDialogClose"] }, host: { listeners: { "click": "_onButtonClick($event)" }, properties: { "attr.aria-label": "ariaLabel || null", "attr.type": "type" } }, exportAs: ["matDialogClose"], usesOnChanges: true, ngImport: i0 });
984
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogClose, decorators: [{
973
985
  type: Directive,
974
986
  args: [{
975
987
  selector: '[mat-dialog-close], [matDialogClose]',
@@ -1022,9 +1034,9 @@ class MatDialogTitle {
1022
1034
  }
1023
1035
  }
1024
1036
  }
1025
- MatDialogTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogTitle, deps: [{ token: MatDialogRef, optional: true }, { token: i0.ElementRef }, { token: MatDialog }], target: i0.ɵɵFactoryTarget.Directive });
1026
- MatDialogTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: { id: "id" }, host: { properties: { "id": "id" }, classAttribute: "mat-dialog-title" }, exportAs: ["matDialogTitle"], ngImport: i0 });
1027
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogTitle, decorators: [{
1037
+ MatDialogTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogTitle, deps: [{ token: MatDialogRef, optional: true }, { token: i0.ElementRef }, { token: MatDialog }], target: i0.ɵɵFactoryTarget.Directive });
1038
+ MatDialogTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.6", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: { id: "id" }, host: { properties: { "id": "id" }, classAttribute: "mat-dialog-title" }, exportAs: ["matDialogTitle"], ngImport: i0 });
1039
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogTitle, decorators: [{
1028
1040
  type: Directive,
1029
1041
  args: [{
1030
1042
  selector: '[mat-dialog-title], [matDialogTitle]',
@@ -1044,9 +1056,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
1044
1056
  */
1045
1057
  class MatDialogContent {
1046
1058
  }
1047
- MatDialogContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1048
- MatDialogContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]", host: { classAttribute: "mat-dialog-content" }, ngImport: i0 });
1049
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogContent, decorators: [{
1059
+ MatDialogContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1060
+ MatDialogContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.6", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]", host: { classAttribute: "mat-dialog-content" }, ngImport: i0 });
1061
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogContent, decorators: [{
1050
1062
  type: Directive,
1051
1063
  args: [{
1052
1064
  selector: `[mat-dialog-content], mat-dialog-content, [matDialogContent]`,
@@ -1065,9 +1077,9 @@ class MatDialogActions {
1065
1077
  this.align = 'start';
1066
1078
  }
1067
1079
  }
1068
- MatDialogActions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogActions, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1069
- MatDialogActions.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: { align: "align" }, host: { properties: { "class.mat-dialog-actions-align-center": "align === \"center\"", "class.mat-dialog-actions-align-end": "align === \"end\"" }, classAttribute: "mat-dialog-actions" }, ngImport: i0 });
1070
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogActions, decorators: [{
1080
+ MatDialogActions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogActions, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1081
+ MatDialogActions.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.6", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: { align: "align" }, host: { properties: { "class.mat-dialog-actions-align-center": "align === \"center\"", "class.mat-dialog-actions-align-end": "align === \"end\"" }, classAttribute: "mat-dialog-actions" }, ngImport: i0 });
1082
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogActions, decorators: [{
1071
1083
  type: Directive,
1072
1084
  args: [{
1073
1085
  selector: `[mat-dialog-actions], mat-dialog-actions, [matDialogActions]`,
@@ -1080,6 +1092,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
1080
1092
  }], propDecorators: { align: [{
1081
1093
  type: Input
1082
1094
  }] } });
1095
+ // TODO(crisbeto): this utility shouldn't be necessary anymore, because the dialog ref is provided
1096
+ // both to component and template dialogs through DI. We need to keep it around, because there are
1097
+ // some internal wrappers around `MatDialog` that happened to work by accident, because we had this
1098
+ // fallback logic in place.
1083
1099
  /**
1084
1100
  * Finds the closest MatDialogRef to an element by looking at the DOM.
1085
1101
  * @param element Element relative to which to look for a dialog.
@@ -1102,8 +1118,8 @@ function getClosestDialog(element, openDialogs) {
1102
1118
  */
1103
1119
  class MatDialogModule {
1104
1120
  }
1105
- MatDialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1106
- MatDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogModule, declarations: [MatDialogContainer,
1121
+ MatDialogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1122
+ MatDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogModule, declarations: [MatDialogContainer,
1107
1123
  MatDialogClose,
1108
1124
  MatDialogTitle,
1109
1125
  MatDialogActions,
@@ -1113,8 +1129,8 @@ MatDialogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
1113
1129
  MatDialogContent,
1114
1130
  MatDialogActions,
1115
1131
  MatCommonModule] });
1116
- MatDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogModule, providers: [MatDialog, MAT_DIALOG_SCROLL_STRATEGY_PROVIDER], imports: [[OverlayModule, PortalModule, MatCommonModule], MatCommonModule] });
1117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatDialogModule, decorators: [{
1132
+ MatDialogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogModule, providers: [MatDialog, MAT_DIALOG_SCROLL_STRATEGY_PROVIDER], imports: [[OverlayModule, PortalModule, MatCommonModule], MatCommonModule] });
1133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.6", ngImport: i0, type: MatDialogModule, decorators: [{
1118
1134
  type: NgModule,
1119
1135
  args: [{
1120
1136
  imports: [OverlayModule, PortalModule, MatCommonModule],