@angular/material 10.1.1 → 10.2.0

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 (663) hide show
  1. package/_theming.scss +46 -20
  2. package/autocomplete/autocomplete-origin.d.ts +8 -5
  3. package/autocomplete/autocomplete-trigger.d.ts +23 -17
  4. package/autocomplete/autocomplete.d.ts +23 -12
  5. package/autocomplete/index.metadata.json +1 -1
  6. package/badge/badge.d.ts +3 -1
  7. package/badge/index.metadata.json +1 -1
  8. package/bottom-sheet/index.metadata.json +1 -1
  9. package/bundles/material-autocomplete-testing.umd.js +316 -256
  10. package/bundles/material-autocomplete-testing.umd.js.map +1 -1
  11. package/bundles/material-autocomplete-testing.umd.min.js +2 -16
  12. package/bundles/material-autocomplete-testing.umd.min.js.map +1 -1
  13. package/bundles/material-autocomplete.umd.js +553 -436
  14. package/bundles/material-autocomplete.umd.js.map +1 -1
  15. package/bundles/material-autocomplete.umd.min.js +3 -25
  16. package/bundles/material-autocomplete.umd.min.js.map +1 -1
  17. package/bundles/material-badge-testing.umd.js +301 -243
  18. package/bundles/material-badge-testing.umd.js.map +1 -1
  19. package/bundles/material-badge-testing.umd.min.js +2 -16
  20. package/bundles/material-badge-testing.umd.min.js.map +1 -1
  21. package/bundles/material-badge.umd.js +356 -282
  22. package/bundles/material-badge.umd.js.map +1 -1
  23. package/bundles/material-badge.umd.min.js +2 -2
  24. package/bundles/material-badge.umd.min.js.map +1 -1
  25. package/bundles/material-bottom-sheet-testing.umd.js +302 -244
  26. package/bundles/material-bottom-sheet-testing.umd.js.map +1 -1
  27. package/bundles/material-bottom-sheet-testing.umd.min.js +2 -16
  28. package/bundles/material-bottom-sheet-testing.umd.min.js.map +1 -1
  29. package/bundles/material-bottom-sheet.umd.js +376 -302
  30. package/bundles/material-bottom-sheet.umd.js.map +1 -1
  31. package/bundles/material-bottom-sheet.umd.min.js +17 -2
  32. package/bundles/material-bottom-sheet.umd.min.js.map +1 -1
  33. package/bundles/material-button-testing.umd.js +310 -252
  34. package/bundles/material-button-testing.umd.js.map +1 -1
  35. package/bundles/material-button-testing.umd.min.js +2 -16
  36. package/bundles/material-button-testing.umd.min.js.map +1 -1
  37. package/bundles/material-button-toggle-testing.umd.js +304 -261
  38. package/bundles/material-button-toggle-testing.umd.js.map +1 -1
  39. package/bundles/material-button-toggle-testing.umd.min.js +2 -31
  40. package/bundles/material-button-toggle-testing.umd.min.js.map +1 -1
  41. package/bundles/material-button-toggle.umd.js +388 -322
  42. package/bundles/material-button-toggle.umd.js.map +1 -1
  43. package/bundles/material-button-toggle.umd.min.js +2 -10
  44. package/bundles/material-button-toggle.umd.min.js.map +1 -1
  45. package/bundles/material-button.umd.js +375 -309
  46. package/bundles/material-button.umd.js.map +1 -1
  47. package/bundles/material-button.umd.min.js +2 -10
  48. package/bundles/material-button.umd.min.js.map +1 -1
  49. package/bundles/material-card-testing.umd.js +306 -250
  50. package/bundles/material-card-testing.umd.js.map +1 -1
  51. package/bundles/material-card-testing.umd.min.js +2 -16
  52. package/bundles/material-card-testing.umd.min.js.map +1 -1
  53. package/bundles/material-card.umd.js +139 -139
  54. package/bundles/material-card.umd.js.map +1 -1
  55. package/bundles/material-card.umd.min.js +2 -2
  56. package/bundles/material-card.umd.min.js.map +1 -1
  57. package/bundles/material-checkbox-testing.umd.js +302 -244
  58. package/bundles/material-checkbox-testing.umd.js.map +1 -1
  59. package/bundles/material-checkbox-testing.umd.min.js +2 -16
  60. package/bundles/material-checkbox-testing.umd.min.js.map +1 -1
  61. package/bundles/material-checkbox.umd.js +371 -312
  62. package/bundles/material-checkbox.umd.js.map +1 -1
  63. package/bundles/material-checkbox.umd.min.js +2 -9
  64. package/bundles/material-checkbox.umd.min.js.map +1 -1
  65. package/bundles/material-chips-testing.umd.js +802 -0
  66. package/bundles/material-chips-testing.umd.js.map +1 -0
  67. package/bundles/material-chips-testing.umd.min.js +30 -0
  68. package/bundles/material-chips-testing.umd.min.js.map +1 -0
  69. package/bundles/material-chips.umd.js +598 -551
  70. package/bundles/material-chips.umd.js.map +1 -1
  71. package/bundles/material-chips.umd.min.js +18 -3
  72. package/bundles/material-chips.umd.min.js.map +1 -1
  73. package/bundles/material-core-testing.umd.js +304 -261
  74. package/bundles/material-core-testing.umd.js.map +1 -1
  75. package/bundles/material-core-testing.umd.min.js +2 -31
  76. package/bundles/material-core-testing.umd.min.js.map +1 -1
  77. package/bundles/material-core.umd.js +605 -540
  78. package/bundles/material-core.umd.js.map +1 -1
  79. package/bundles/material-core.umd.min.js +37 -12
  80. package/bundles/material-core.umd.min.js.map +1 -1
  81. package/bundles/material-datepicker-testing.umd.js +1342 -0
  82. package/bundles/material-datepicker-testing.umd.js.map +1 -0
  83. package/bundles/material-datepicker-testing.umd.min.js +30 -0
  84. package/bundles/material-datepicker-testing.umd.min.js.map +1 -0
  85. package/bundles/material-datepicker.umd.js +1014 -981
  86. package/bundles/material-datepicker.umd.js.map +1 -1
  87. package/bundles/material-datepicker.umd.min.js +43 -9
  88. package/bundles/material-datepicker.umd.min.js.map +1 -1
  89. package/bundles/material-dialog-testing.umd.js +303 -245
  90. package/bundles/material-dialog-testing.umd.js.map +1 -1
  91. package/bundles/material-dialog-testing.umd.min.js +2 -16
  92. package/bundles/material-dialog-testing.umd.min.js.map +1 -1
  93. package/bundles/material-dialog.umd.js +597 -476
  94. package/bundles/material-dialog.umd.js.map +1 -1
  95. package/bundles/material-dialog.umd.min.js +10 -8
  96. package/bundles/material-dialog.umd.min.js.map +1 -1
  97. package/bundles/material-divider-testing.umd.js +300 -242
  98. package/bundles/material-divider-testing.umd.js.map +1 -1
  99. package/bundles/material-divider-testing.umd.min.js +2 -16
  100. package/bundles/material-divider-testing.umd.min.js.map +1 -1
  101. package/bundles/material-divider.umd.js +28 -28
  102. package/bundles/material-divider.umd.js.map +1 -1
  103. package/bundles/material-divider.umd.min.js +2 -9
  104. package/bundles/material-divider.umd.min.js.map +1 -1
  105. package/bundles/material-expansion-testing.umd.js +303 -254
  106. package/bundles/material-expansion-testing.umd.js.map +1 -1
  107. package/bundles/material-expansion-testing.umd.min.js +2 -17
  108. package/bundles/material-expansion-testing.umd.min.js.map +1 -1
  109. package/bundles/material-expansion.umd.js +471 -433
  110. package/bundles/material-expansion.umd.js.map +1 -1
  111. package/bundles/material-expansion.umd.min.js +12 -4
  112. package/bundles/material-expansion.umd.min.js.map +1 -1
  113. package/bundles/material-form-field-testing-control.umd.js +299 -233
  114. package/bundles/material-form-field-testing-control.umd.js.map +1 -1
  115. package/bundles/material-form-field-testing-control.umd.min.js.map +1 -1
  116. package/bundles/material-form-field-testing.umd.js +301 -243
  117. package/bundles/material-form-field-testing.umd.js.map +1 -1
  118. package/bundles/material-form-field-testing.umd.min.js +3 -17
  119. package/bundles/material-form-field-testing.umd.min.js.map +1 -1
  120. package/bundles/material-form-field.umd.js +480 -417
  121. package/bundles/material-form-field.umd.js.map +1 -1
  122. package/bundles/material-form-field.umd.min.js +51 -4
  123. package/bundles/material-form-field.umd.min.js.map +1 -1
  124. package/bundles/material-grid-list-testing.umd.js +311 -260
  125. package/bundles/material-grid-list-testing.umd.js.map +1 -1
  126. package/bundles/material-grid-list-testing.umd.min.js +2 -24
  127. package/bundles/material-grid-list-testing.umd.min.js.map +1 -1
  128. package/bundles/material-grid-list.umd.js +414 -340
  129. package/bundles/material-grid-list.umd.js.map +1 -1
  130. package/bundles/material-grid-list.umd.min.js +20 -5
  131. package/bundles/material-grid-list.umd.min.js.map +1 -1
  132. package/bundles/material-icon-testing.umd.js +409 -12
  133. package/bundles/material-icon-testing.umd.js.map +1 -1
  134. package/bundles/material-icon-testing.umd.min.js +18 -3
  135. package/bundles/material-icon-testing.umd.min.js.map +1 -1
  136. package/bundles/material-icon.umd.js +404 -336
  137. package/bundles/material-icon.umd.js.map +1 -1
  138. package/bundles/material-icon.umd.min.js +2 -9
  139. package/bundles/material-icon.umd.min.js.map +1 -1
  140. package/bundles/material-input-testing.umd.js +309 -262
  141. package/bundles/material-input-testing.umd.js.map +1 -1
  142. package/bundles/material-input-testing.umd.min.js +2 -16
  143. package/bundles/material-input-testing.umd.min.js.map +1 -1
  144. package/bundles/material-input.umd.js +399 -333
  145. package/bundles/material-input.umd.js.map +1 -1
  146. package/bundles/material-input.umd.min.js +5 -18
  147. package/bundles/material-input.umd.min.js.map +1 -1
  148. package/bundles/material-list-testing.umd.js +333 -311
  149. package/bundles/material-list-testing.umd.js.map +1 -1
  150. package/bundles/material-list-testing.umd.min.js +1 -9
  151. package/bundles/material-list-testing.umd.min.js.map +1 -1
  152. package/bundles/material-list.umd.js +527 -466
  153. package/bundles/material-list.umd.js.map +1 -1
  154. package/bundles/material-list.umd.min.js +2 -10
  155. package/bundles/material-list.umd.min.js.map +1 -1
  156. package/bundles/material-menu-testing.umd.js +305 -247
  157. package/bundles/material-menu-testing.umd.js.map +1 -1
  158. package/bundles/material-menu-testing.umd.min.js +2 -17
  159. package/bundles/material-menu-testing.umd.min.js.map +1 -1
  160. package/bundles/material-menu.umd.js +476 -429
  161. package/bundles/material-menu.umd.js.map +1 -1
  162. package/bundles/material-menu.umd.min.js +3 -17
  163. package/bundles/material-menu.umd.min.js.map +1 -1
  164. package/bundles/material-paginator-testing.umd.js +302 -244
  165. package/bundles/material-paginator-testing.umd.js.map +1 -1
  166. package/bundles/material-paginator-testing.umd.min.js +2 -16
  167. package/bundles/material-paginator-testing.umd.min.js.map +1 -1
  168. package/bundles/material-paginator.umd.js +349 -280
  169. package/bundles/material-paginator.umd.js.map +1 -1
  170. package/bundles/material-paginator.umd.min.js +2 -9
  171. package/bundles/material-paginator.umd.min.js.map +1 -1
  172. package/bundles/material-progress-bar-testing.umd.js +301 -243
  173. package/bundles/material-progress-bar-testing.umd.js.map +1 -1
  174. package/bundles/material-progress-bar-testing.umd.min.js +2 -16
  175. package/bundles/material-progress-bar-testing.umd.min.js.map +1 -1
  176. package/bundles/material-progress-bar.umd.js +339 -266
  177. package/bundles/material-progress-bar.umd.js.map +1 -1
  178. package/bundles/material-progress-bar.umd.min.js +4 -3
  179. package/bundles/material-progress-bar.umd.min.js.map +1 -1
  180. package/bundles/material-progress-spinner-testing.umd.js +301 -243
  181. package/bundles/material-progress-spinner-testing.umd.js.map +1 -1
  182. package/bundles/material-progress-spinner-testing.umd.min.js +2 -16
  183. package/bundles/material-progress-spinner-testing.umd.min.js.map +1 -1
  184. package/bundles/material-progress-spinner.umd.js +420 -365
  185. package/bundles/material-progress-spinner.umd.js.map +1 -1
  186. package/bundles/material-progress-spinner.umd.min.js +3 -11
  187. package/bundles/material-progress-spinner.umd.min.js.map +1 -1
  188. package/bundles/material-radio-testing.umd.js +304 -246
  189. package/bundles/material-radio-testing.umd.js.map +1 -1
  190. package/bundles/material-radio-testing.umd.min.js +2 -17
  191. package/bundles/material-radio-testing.umd.min.js.map +1 -1
  192. package/bundles/material-radio.umd.js +405 -339
  193. package/bundles/material-radio.umd.js.map +1 -1
  194. package/bundles/material-radio.umd.min.js +2 -10
  195. package/bundles/material-radio.umd.min.js.map +1 -1
  196. package/bundles/material-select-testing.umd.js +316 -260
  197. package/bundles/material-select-testing.umd.js.map +1 -1
  198. package/bundles/material-select-testing.umd.min.js +2 -16
  199. package/bundles/material-select-testing.umd.min.js.map +1 -1
  200. package/bundles/material-select.umd.js +469 -389
  201. package/bundles/material-select.umd.js.map +1 -1
  202. package/bundles/material-select.umd.min.js +5 -12
  203. package/bundles/material-select.umd.min.js.map +1 -1
  204. package/bundles/material-sidenav-testing.umd.js +303 -252
  205. package/bundles/material-sidenav-testing.umd.js.map +1 -1
  206. package/bundles/material-sidenav-testing.umd.min.js +1 -23
  207. package/bundles/material-sidenav-testing.umd.min.js.map +1 -1
  208. package/bundles/material-sidenav.umd.js +535 -496
  209. package/bundles/material-sidenav.umd.js.map +1 -1
  210. package/bundles/material-sidenav.umd.min.js +3 -3
  211. package/bundles/material-sidenav.umd.min.js.map +1 -1
  212. package/bundles/material-slide-toggle-testing.umd.js +302 -244
  213. package/bundles/material-slide-toggle-testing.umd.js.map +1 -1
  214. package/bundles/material-slide-toggle-testing.umd.min.js +2 -16
  215. package/bundles/material-slide-toggle-testing.umd.min.js.map +1 -1
  216. package/bundles/material-slide-toggle.umd.js +373 -314
  217. package/bundles/material-slide-toggle.umd.js.map +1 -1
  218. package/bundles/material-slide-toggle.umd.min.js +2 -9
  219. package/bundles/material-slide-toggle.umd.min.js.map +1 -1
  220. package/bundles/material-slider-testing.umd.js +302 -236
  221. package/bundles/material-slider-testing.umd.js.map +1 -1
  222. package/bundles/material-slider-testing.umd.min.js +2 -9
  223. package/bundles/material-slider-testing.umd.min.js.map +1 -1
  224. package/bundles/material-slider.umd.js +479 -448
  225. package/bundles/material-slider.umd.js.map +1 -1
  226. package/bundles/material-slider.umd.min.js +4 -3
  227. package/bundles/material-slider.umd.min.js.map +1 -1
  228. package/bundles/material-snack-bar-testing.umd.js +304 -246
  229. package/bundles/material-snack-bar-testing.umd.js.map +1 -1
  230. package/bundles/material-snack-bar-testing.umd.min.js +2 -16
  231. package/bundles/material-snack-bar-testing.umd.min.js.map +1 -1
  232. package/bundles/material-snack-bar.umd.js +394 -317
  233. package/bundles/material-snack-bar.umd.js.map +1 -1
  234. package/bundles/material-snack-bar.umd.min.js +26 -2
  235. package/bundles/material-snack-bar.umd.min.js.map +1 -1
  236. package/bundles/material-sort-testing.umd.js +302 -243
  237. package/bundles/material-sort-testing.umd.js.map +1 -1
  238. package/bundles/material-sort-testing.umd.min.js +2 -17
  239. package/bundles/material-sort-testing.umd.min.js.map +1 -1
  240. package/bundles/material-sort.umd.js +383 -326
  241. package/bundles/material-sort.umd.js.map +1 -1
  242. package/bundles/material-sort.umd.min.js +3 -33
  243. package/bundles/material-sort.umd.min.js.map +1 -1
  244. package/bundles/material-stepper-testing.umd.js +727 -0
  245. package/bundles/material-stepper-testing.umd.js.map +1 -0
  246. package/bundles/material-stepper-testing.umd.min.js +30 -0
  247. package/bundles/material-stepper-testing.umd.min.js.map +1 -0
  248. package/bundles/material-stepper.umd.js +496 -446
  249. package/bundles/material-stepper.umd.js.map +1 -1
  250. package/bundles/material-stepper.umd.min.js +4 -11
  251. package/bundles/material-stepper.umd.min.js.map +1 -1
  252. package/bundles/material-table-testing.umd.js +317 -265
  253. package/bundles/material-table-testing.umd.js.map +1 -1
  254. package/bundles/material-table-testing.umd.min.js +2 -24
  255. package/bundles/material-table-testing.umd.min.js.map +1 -1
  256. package/bundles/material-table.umd.js +521 -465
  257. package/bundles/material-table.umd.js.map +1 -1
  258. package/bundles/material-table.umd.min.js +4 -11
  259. package/bundles/material-table.umd.min.js.map +1 -1
  260. package/bundles/material-tabs-testing.umd.js +303 -244
  261. package/bundles/material-tabs-testing.umd.js.map +1 -1
  262. package/bundles/material-tabs-testing.umd.min.js +1 -16
  263. package/bundles/material-tabs-testing.umd.min.js.map +1 -1
  264. package/bundles/material-tabs.umd.js +677 -646
  265. package/bundles/material-tabs.umd.js.map +1 -1
  266. package/bundles/material-tabs.umd.min.js +29 -4
  267. package/bundles/material-tabs.umd.min.js.map +1 -1
  268. package/bundles/material-toolbar-testing.umd.js +301 -243
  269. package/bundles/material-toolbar-testing.umd.js.map +1 -1
  270. package/bundles/material-toolbar-testing.umd.min.js +2 -16
  271. package/bundles/material-toolbar-testing.umd.min.js.map +1 -1
  272. package/bundles/material-toolbar.umd.js +350 -286
  273. package/bundles/material-toolbar.umd.js.map +1 -1
  274. package/bundles/material-toolbar.umd.min.js +4 -3
  275. package/bundles/material-toolbar.umd.min.js.map +1 -1
  276. package/bundles/material-tooltip-testing.umd.js +301 -243
  277. package/bundles/material-tooltip-testing.umd.js.map +1 -1
  278. package/bundles/material-tooltip-testing.umd.min.js +2 -16
  279. package/bundles/material-tooltip-testing.umd.min.js.map +1 -1
  280. package/bundles/material-tooltip.umd.js +424 -324
  281. package/bundles/material-tooltip.umd.js.map +1 -1
  282. package/bundles/material-tooltip.umd.min.js +11 -3
  283. package/bundles/material-tooltip.umd.min.js.map +1 -1
  284. package/bundles/material-tree.umd.js +446 -385
  285. package/bundles/material-tree.umd.js.map +1 -1
  286. package/bundles/material-tree.umd.min.js +3 -3
  287. package/bundles/material-tree.umd.min.js.map +1 -1
  288. package/button/index.metadata.json +1 -1
  289. package/chips/chip-default-options.d.ts +1 -1
  290. package/chips/chip-input.d.ts +1 -1
  291. package/chips/chip.d.ts +2 -2
  292. package/chips/index.metadata.json +1 -1
  293. package/chips/testing/chip-harness-filters.d.ts +28 -0
  294. package/chips/testing/chip-harness.d.ts +41 -0
  295. package/chips/testing/chip-input-harness.d.ts +47 -0
  296. package/chips/testing/chip-list-harness.d.ts +49 -0
  297. package/chips/testing/chip-remove-harness.d.ts +22 -0
  298. package/chips/testing/index.d.ts +8 -0
  299. package/chips/testing/package.json +9 -0
  300. package/chips/testing/public-api.d.ts +12 -0
  301. package/core/common-behaviors/color.d.ts +2 -0
  302. package/core/common-behaviors/constructor.d.ts +7 -0
  303. package/core/common-behaviors/disable-ripple.d.ts +2 -2
  304. package/core/common-behaviors/tabindex.d.ts +4 -2
  305. package/core/datetime/date-adapter.d.ts +9 -2
  306. package/core/index.metadata.json +1 -1
  307. package/core/option/optgroup.d.ts +8 -6
  308. package/core/option/option.d.ts +12 -9
  309. package/core/style/_vendor-prefixes.scss +5 -0
  310. package/datepicker/_datepicker-theme.scss +42 -21
  311. package/datepicker/calendar-body.d.ts +15 -4
  312. package/datepicker/calendar.d.ts +2 -7
  313. package/datepicker/date-range-input.d.ts +0 -5
  314. package/datepicker/date-range-selection-strategy.d.ts +5 -1
  315. package/datepicker/datepicker-base.d.ts +9 -11
  316. package/datepicker/datepicker-input-base.d.ts +0 -5
  317. package/datepicker/index.d.ts +4 -3
  318. package/datepicker/index.metadata.json +1 -1
  319. package/datepicker/month-view.d.ts +5 -9
  320. package/datepicker/multi-year-view.d.ts +3 -6
  321. package/datepicker/public-api.d.ts +1 -1
  322. package/datepicker/testing/calendar-cell-harness.d.ts +64 -0
  323. package/datepicker/testing/calendar-harness.d.ts +53 -0
  324. package/datepicker/testing/date-range-input-harness.d.ts +59 -0
  325. package/datepicker/testing/datepicker-harness-filters.d.ts +45 -0
  326. package/datepicker/testing/datepicker-input-harness-base.d.ts +43 -0
  327. package/datepicker/testing/datepicker-input-harness.d.ts +36 -0
  328. package/datepicker/testing/datepicker-toggle-harness.d.ts +28 -0
  329. package/datepicker/testing/datepicker-trigger-harness-base.d.ts +44 -0
  330. package/datepicker/testing/index.d.ts +8 -0
  331. package/datepicker/testing/package.json +9 -0
  332. package/datepicker/testing/public-api.d.ts +13 -0
  333. package/datepicker/year-view.d.ts +3 -6
  334. package/dialog/dialog-config.d.ts +1 -1
  335. package/dialog/dialog-container.d.ts +39 -22
  336. package/dialog/dialog-ref.d.ts +3 -3
  337. package/dialog/dialog.d.ts +25 -14
  338. package/dialog/index.metadata.json +1 -1
  339. package/esm2015/autocomplete/autocomplete-module.js +10 -5
  340. package/esm2015/autocomplete/autocomplete-origin.js +15 -9
  341. package/esm2015/autocomplete/autocomplete-trigger.js +73 -53
  342. package/esm2015/autocomplete/autocomplete.js +35 -22
  343. package/esm2015/autocomplete/testing/autocomplete-harness-filters.js +1 -0
  344. package/esm2015/badge/badge.js +15 -7
  345. package/esm2015/badge/testing/badge-harness-filters.js +1 -0
  346. package/esm2015/bottom-sheet/bottom-sheet-container.js +2 -2
  347. package/esm2015/bottom-sheet/bottom-sheet-ref.js +3 -3
  348. package/esm2015/bottom-sheet/bottom-sheet.js +14 -13
  349. package/esm2015/bottom-sheet/testing/bottom-sheet-harness-filters.js +1 -0
  350. package/esm2015/button/button.js +3 -3
  351. package/esm2015/button/testing/button-harness-filters.js +1 -0
  352. package/esm2015/button-toggle/button-toggle.js +2 -2
  353. package/esm2015/button-toggle/testing/button-toggle-group-harness-filters.js +1 -0
  354. package/esm2015/button-toggle/testing/button-toggle-group-harness.js +2 -2
  355. package/esm2015/button-toggle/testing/button-toggle-harness-filters.js +1 -0
  356. package/esm2015/button-toggle/testing/button-toggle-harness.js +2 -2
  357. package/esm2015/card/testing/card-harness-filters.js +1 -0
  358. package/esm2015/card/testing/card-harness.js +2 -2
  359. package/esm2015/checkbox/checkbox.js +2 -2
  360. package/esm2015/checkbox/testing/checkbox-harness-filters.js +1 -0
  361. package/esm2015/checkbox/testing/checkbox-harness.js +2 -2
  362. package/esm2015/chips/chip-default-options.js +1 -1
  363. package/esm2015/chips/chip-input.js +3 -8
  364. package/esm2015/chips/chip-list.js +7 -13
  365. package/esm2015/chips/chip-text-control.js +1 -0
  366. package/esm2015/chips/chip.js +1 -2
  367. package/esm2015/chips/testing/chip-harness-filters.js +2 -0
  368. package/esm2015/chips/testing/chip-harness.js +82 -0
  369. package/esm2015/chips/testing/chip-input-harness.js +101 -0
  370. package/esm2015/chips/testing/chip-list-harness.js +94 -0
  371. package/esm2015/chips/testing/chip-remove-harness.js +29 -0
  372. package/esm2015/chips/testing/index.js +9 -0
  373. package/esm2015/chips/testing/public-api.js +13 -0
  374. package/esm2015/chips/testing/testing.externs.js +0 -0
  375. package/esm2015/core/common-behaviors/color.js +3 -2
  376. package/esm2015/core/common-behaviors/common-module.js +6 -2
  377. package/esm2015/core/common-behaviors/constructor.js +2 -1
  378. package/esm2015/core/common-behaviors/disable-ripple.js +7 -3
  379. package/esm2015/core/common-behaviors/initialized.js +2 -2
  380. package/esm2015/core/common-behaviors/tabindex.js +11 -4
  381. package/esm2015/core/datetime/date-adapter.js +12 -3
  382. package/esm2015/core/datetime/native-date-adapter.js +11 -9
  383. package/esm2015/core/option/optgroup.js +16 -11
  384. package/esm2015/core/option/option.js +29 -16
  385. package/esm2015/core/testing/optgroup-harness-filters.js +1 -0
  386. package/esm2015/core/testing/option-harness-filters.js +1 -0
  387. package/esm2015/core/version.js +1 -1
  388. package/esm2015/datepicker/calendar-body.js +20 -5
  389. package/esm2015/datepicker/calendar.js +13 -18
  390. package/esm2015/datepicker/date-range-input-parts.js +5 -5
  391. package/esm2015/datepicker/date-range-input.js +15 -16
  392. package/esm2015/datepicker/date-range-picker.js +6 -2
  393. package/esm2015/datepicker/date-range-selection-strategy.js +12 -2
  394. package/esm2015/datepicker/date-selection-model.js +2 -2
  395. package/esm2015/datepicker/datepicker-base.js +17 -19
  396. package/esm2015/datepicker/datepicker-input-base.js +13 -18
  397. package/esm2015/datepicker/datepicker-input.js +7 -3
  398. package/esm2015/datepicker/datepicker-module.js +2 -7
  399. package/esm2015/datepicker/datepicker-toggle.js +3 -1
  400. package/esm2015/datepicker/index.js +5 -4
  401. package/esm2015/datepicker/month-view.js +19 -18
  402. package/esm2015/datepicker/multi-year-view.js +12 -16
  403. package/esm2015/datepicker/public-api.js +2 -2
  404. package/esm2015/datepicker/testing/calendar-cell-harness.js +181 -0
  405. package/esm2015/datepicker/testing/calendar-harness.js +91 -0
  406. package/esm2015/datepicker/testing/date-range-input-harness.js +116 -0
  407. package/esm2015/datepicker/testing/datepicker-harness-filters.js +9 -0
  408. package/esm2015/datepicker/testing/datepicker-input-harness-base.js +100 -0
  409. package/esm2015/datepicker/testing/datepicker-input-harness.js +69 -0
  410. package/esm2015/datepicker/testing/datepicker-toggle-harness.js +48 -0
  411. package/esm2015/datepicker/testing/datepicker-trigger-harness-base.js +77 -0
  412. package/esm2015/datepicker/testing/index.js +9 -0
  413. package/esm2015/datepicker/testing/public-api.js +14 -0
  414. package/esm2015/datepicker/testing/testing.externs.js +0 -0
  415. package/esm2015/datepicker/year-view.js +18 -20
  416. package/esm2015/dialog/dialog-config.js +1 -1
  417. package/esm2015/dialog/dialog-container.js +73 -50
  418. package/esm2015/dialog/dialog-content-directives.js +9 -3
  419. package/esm2015/dialog/dialog-ref.js +8 -8
  420. package/esm2015/dialog/dialog.js +58 -29
  421. package/esm2015/dialog/testing/dialog-harness-filters.js +1 -0
  422. package/esm2015/divider/testing/divider-harness-filters.js +1 -0
  423. package/esm2015/divider/testing/divider-harness.js +2 -2
  424. package/esm2015/expansion/accordion.js +3 -20
  425. package/esm2015/expansion/expansion-panel-header.js +7 -13
  426. package/esm2015/expansion/expansion-panel.js +7 -6
  427. package/esm2015/expansion/testing/expansion-harness-filters.js +1 -0
  428. package/esm2015/form-field/form-field-control.js +1 -1
  429. package/esm2015/form-field/form-field.js +26 -17
  430. package/esm2015/form-field/testing/form-field-harness-filters.js +1 -0
  431. package/esm2015/grid-list/grid-list.js +2 -2
  432. package/esm2015/grid-list/testing/grid-list-harness-filters.js +1 -0
  433. package/esm2015/grid-list/tile-coordinator.js +2 -2
  434. package/esm2015/grid-list/tile-styler.js +4 -3
  435. package/esm2015/icon/icon-registry.js +44 -52
  436. package/esm2015/icon/icon.js +13 -2
  437. package/esm2015/icon/testing/icon-harness-filters.js +9 -0
  438. package/esm2015/icon/testing/icon-harness.js +63 -0
  439. package/esm2015/icon/testing/public-api.js +3 -1
  440. package/esm2015/input/input.js +17 -10
  441. package/esm2015/input/testing/input-harness-filters.js +1 -0
  442. package/esm2015/input/testing/input-harness.js +7 -7
  443. package/esm2015/list/list.js +2 -2
  444. package/esm2015/list/selection-list.js +33 -31
  445. package/esm2015/list/testing/action-list-harness.js +2 -2
  446. package/esm2015/list/testing/list-harness-filters.js +1 -0
  447. package/esm2015/list/testing/list-harness.js +2 -2
  448. package/esm2015/list/testing/list-item-harness-base.js +2 -2
  449. package/esm2015/list/testing/nav-list-harness.js +2 -2
  450. package/esm2015/list/testing/selection-list-harness.js +3 -3
  451. package/esm2015/menu/menu-positions.js +1 -0
  452. package/esm2015/menu/menu-trigger.js +12 -6
  453. package/esm2015/menu/menu.js +11 -14
  454. package/esm2015/menu/testing/menu-harness-filters.js +1 -0
  455. package/esm2015/paginator/paginator.js +6 -3
  456. package/esm2015/paginator/testing/paginator-harness-filters.js +1 -0
  457. package/esm2015/progress-bar/testing/progress-bar-harness-filters.js +1 -0
  458. package/esm2015/progress-bar/testing/progress-bar-harness.js +2 -2
  459. package/esm2015/progress-spinner/progress-spinner.js +25 -16
  460. package/esm2015/progress-spinner/testing/progress-spinner-harness-filters.js +1 -0
  461. package/esm2015/progress-spinner/testing/progress-spinner-harness.js +2 -2
  462. package/esm2015/radio/radio.js +1 -1
  463. package/esm2015/radio/testing/radio-harness-filters.js +1 -0
  464. package/esm2015/radio/testing/radio-harness.js +3 -3
  465. package/esm2015/select/select.js +71 -57
  466. package/esm2015/select/testing/select-harness-filters.js +1 -0
  467. package/esm2015/select/testing/select-harness.js +2 -3
  468. package/esm2015/sidenav/drawer.js +23 -28
  469. package/esm2015/sidenav/testing/drawer-harness-filters.js +1 -0
  470. package/esm2015/slide-toggle/testing/slide-toggle-harness-filters.js +1 -0
  471. package/esm2015/slide-toggle/testing/slide-toggle-harness.js +2 -2
  472. package/esm2015/slider/slider.js +28 -31
  473. package/esm2015/slider/testing/slider-harness-filters.js +1 -0
  474. package/esm2015/slider/testing/slider-harness.js +2 -2
  475. package/esm2015/snack-bar/snack-bar-container.js +3 -3
  476. package/esm2015/snack-bar/snack-bar-ref.js +3 -3
  477. package/esm2015/snack-bar/snack-bar.js +13 -9
  478. package/esm2015/snack-bar/testing/snack-bar-harness-filters.js +1 -0
  479. package/esm2015/sort/sort-direction.js +1 -0
  480. package/esm2015/sort/sort-header.js +6 -3
  481. package/esm2015/sort/sort.js +11 -8
  482. package/esm2015/sort/testing/sort-harness-filters.js +1 -0
  483. package/esm2015/stepper/step-header.js +2 -2
  484. package/esm2015/stepper/stepper-button.js +3 -1
  485. package/esm2015/stepper/stepper.js +7 -4
  486. package/esm2015/stepper/testing/index.js +9 -0
  487. package/esm2015/stepper/testing/public-api.js +12 -0
  488. package/esm2015/stepper/testing/step-harness-filters.js +2 -0
  489. package/esm2015/stepper/testing/step-harness.js +132 -0
  490. package/esm2015/stepper/testing/stepper-button-harnesses.js +55 -0
  491. package/esm2015/stepper/testing/stepper-harness.js +57 -0
  492. package/esm2015/stepper/testing/testing.externs.js +0 -0
  493. package/esm2015/table/cell.js +15 -26
  494. package/esm2015/table/table-data-source.js +14 -1
  495. package/esm2015/table/table.js +11 -4
  496. package/esm2015/table/testing/table-harness-filters.js +1 -0
  497. package/esm2015/tabs/paginated-tab-header.js +3 -10
  498. package/esm2015/tabs/tab-nav-bar/tab-nav-bar.js +3 -3
  499. package/esm2015/tabs/tab.js +17 -10
  500. package/esm2015/tabs/testing/tab-harness-filters.js +1 -0
  501. package/esm2015/toolbar/testing/toolbar-harness-filters.js +1 -0
  502. package/esm2015/toolbar/testing/toolbar-harness.js +2 -2
  503. package/esm2015/toolbar/toolbar.js +15 -17
  504. package/esm2015/tooltip/testing/tooltip-harness-filters.js +1 -0
  505. package/esm2015/tooltip/tooltip.js +53 -31
  506. package/esm2015/tree/node.js +2 -2
  507. package/esm2015/tree/padding.js +7 -1
  508. package/esm2015/tree/toggle.js +8 -4
  509. package/expansion/expansion-panel-header.d.ts +6 -12
  510. package/expansion/expansion-panel.d.ts +5 -4
  511. package/expansion/index.metadata.json +1 -1
  512. package/fesm2015/autocomplete.js +128 -84
  513. package/fesm2015/autocomplete.js.map +1 -1
  514. package/fesm2015/badge.js +14 -6
  515. package/fesm2015/badge.js.map +1 -1
  516. package/fesm2015/bottom-sheet.js +17 -16
  517. package/fesm2015/bottom-sheet.js.map +1 -1
  518. package/fesm2015/button-toggle/testing.js +2 -2
  519. package/fesm2015/button-toggle/testing.js.map +1 -1
  520. package/fesm2015/button-toggle.js +1 -1
  521. package/fesm2015/button-toggle.js.map +1 -1
  522. package/fesm2015/button.js +2 -2
  523. package/fesm2015/button.js.map +1 -1
  524. package/fesm2015/card/testing.js +1 -1
  525. package/fesm2015/card/testing.js.map +1 -1
  526. package/fesm2015/checkbox/testing.js +1 -1
  527. package/fesm2015/checkbox/testing.js.map +1 -1
  528. package/fesm2015/checkbox.js +1 -1
  529. package/fesm2015/checkbox.js.map +1 -1
  530. package/fesm2015/chips/testing.js +316 -0
  531. package/fesm2015/chips/testing.js.map +1 -0
  532. package/fesm2015/chips.js +7 -19
  533. package/fesm2015/chips.js.map +1 -1
  534. package/fesm2015/core.js +87 -42
  535. package/fesm2015/core.js.map +1 -1
  536. package/fesm2015/datepicker/testing.js +690 -0
  537. package/fesm2015/datepicker/testing.js.map +1 -0
  538. package/fesm2015/datepicker.js +146 -134
  539. package/fesm2015/datepicker.js.map +1 -1
  540. package/fesm2015/dialog.js +143 -85
  541. package/fesm2015/dialog.js.map +1 -1
  542. package/fesm2015/divider/testing.js +1 -1
  543. package/fesm2015/divider/testing.js.map +1 -1
  544. package/fesm2015/expansion.js +9 -30
  545. package/fesm2015/expansion.js.map +1 -1
  546. package/fesm2015/form-field.js +25 -16
  547. package/fesm2015/form-field.js.map +1 -1
  548. package/fesm2015/grid-list.js +5 -4
  549. package/fesm2015/grid-list.js.map +1 -1
  550. package/fesm2015/icon/testing.js +72 -1
  551. package/fesm2015/icon/testing.js.map +1 -1
  552. package/fesm2015/icon.js +56 -53
  553. package/fesm2015/icon.js.map +1 -1
  554. package/fesm2015/input/testing.js +6 -6
  555. package/fesm2015/input/testing.js.map +1 -1
  556. package/fesm2015/input.js +15 -8
  557. package/fesm2015/input.js.map +1 -1
  558. package/fesm2015/list/testing.js +6 -6
  559. package/fesm2015/list/testing.js.map +1 -1
  560. package/fesm2015/list.js +33 -31
  561. package/fesm2015/list.js.map +1 -1
  562. package/fesm2015/menu.js +20 -17
  563. package/fesm2015/menu.js.map +1 -1
  564. package/fesm2015/paginator.js +5 -2
  565. package/fesm2015/paginator.js.map +1 -1
  566. package/fesm2015/progress-bar/testing.js +1 -1
  567. package/fesm2015/progress-bar/testing.js.map +1 -1
  568. package/fesm2015/progress-spinner/testing.js +1 -1
  569. package/fesm2015/progress-spinner/testing.js.map +1 -1
  570. package/fesm2015/progress-spinner.js +24 -15
  571. package/fesm2015/progress-spinner.js.map +1 -1
  572. package/fesm2015/radio/testing.js +2 -2
  573. package/fesm2015/radio/testing.js.map +1 -1
  574. package/fesm2015/radio.js.map +1 -1
  575. package/fesm2015/select/testing.js +1 -2
  576. package/fesm2015/select/testing.js.map +1 -1
  577. package/fesm2015/select.js +70 -56
  578. package/fesm2015/select.js.map +1 -1
  579. package/fesm2015/sidenav.js +22 -27
  580. package/fesm2015/sidenav.js.map +1 -1
  581. package/fesm2015/slide-toggle/testing.js +1 -1
  582. package/fesm2015/slide-toggle/testing.js.map +1 -1
  583. package/fesm2015/slider/testing.js +1 -1
  584. package/fesm2015/slider/testing.js.map +1 -1
  585. package/fesm2015/slider.js +27 -30
  586. package/fesm2015/slider.js.map +1 -1
  587. package/fesm2015/snack-bar.js +17 -13
  588. package/fesm2015/snack-bar.js.map +1 -1
  589. package/fesm2015/sort.js +15 -9
  590. package/fesm2015/sort.js.map +1 -1
  591. package/fesm2015/stepper/testing.js +258 -0
  592. package/fesm2015/stepper/testing.js.map +1 -0
  593. package/fesm2015/stepper.js +10 -5
  594. package/fesm2015/stepper.js.map +1 -1
  595. package/fesm2015/table.js +37 -28
  596. package/fesm2015/table.js.map +1 -1
  597. package/fesm2015/tabs.js +20 -20
  598. package/fesm2015/tabs.js.map +1 -1
  599. package/fesm2015/toolbar/testing.js +1 -1
  600. package/fesm2015/toolbar/testing.js.map +1 -1
  601. package/fesm2015/toolbar.js +14 -16
  602. package/fesm2015/toolbar.js.map +1 -1
  603. package/fesm2015/tooltip.js +52 -30
  604. package/fesm2015/tooltip.js.map +1 -1
  605. package/fesm2015/tree.js +13 -4
  606. package/fesm2015/tree.js.map +1 -1
  607. package/form-field/form-field-control.d.ts +5 -0
  608. package/form-field/form-field.d.ts +8 -5
  609. package/form-field/index.metadata.json +1 -1
  610. package/icon/icon-registry.d.ts +4 -6
  611. package/icon/icon.d.ts +3 -1
  612. package/icon/index.metadata.json +1 -1
  613. package/icon/testing/icon-harness-filters.d.ts +22 -0
  614. package/icon/testing/icon-harness.d.ts +29 -0
  615. package/icon/testing/index.metadata.json +1 -1
  616. package/icon/testing/public-api.d.ts +2 -0
  617. package/input/index.metadata.json +1 -1
  618. package/input/input.d.ts +6 -3
  619. package/list/index.metadata.json +1 -1
  620. package/list/selection-list.d.ts +3 -7
  621. package/menu/index.metadata.json +1 -1
  622. package/package.json +2 -2
  623. package/paginator/index.metadata.json +1 -1
  624. package/paginator/paginator.d.ts +5 -0
  625. package/prebuilt-themes/deeppurple-amber.css +1 -1
  626. package/prebuilt-themes/indigo-pink.css +1 -1
  627. package/prebuilt-themes/pink-bluegrey.css +1 -1
  628. package/prebuilt-themes/purple-green.css +1 -1
  629. package/progress-spinner/index.metadata.json +1 -1
  630. package/progress-spinner/progress-spinner.d.ts +9 -5
  631. package/radio/index.metadata.json +1 -1
  632. package/radio/radio.d.ts +2 -2
  633. package/schematics/ng-add/index.js +1 -1
  634. package/schematics/ng-generate/tree/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +1 -1
  635. package/schematics/ng-update/data/index.js +1 -1
  636. package/select/index.metadata.json +1 -1
  637. package/select/select.d.ts +9 -8
  638. package/sidenav/drawer.d.ts +5 -5
  639. package/sidenav/index.metadata.json +1 -1
  640. package/slider/index.metadata.json +1 -1
  641. package/slider/slider.d.ts +8 -10
  642. package/snack-bar/index.metadata.json +1 -1
  643. package/sort/index.metadata.json +1 -1
  644. package/stepper/index.metadata.json +1 -1
  645. package/stepper/stepper.d.ts +3 -1
  646. package/stepper/testing/index.d.ts +8 -0
  647. package/stepper/testing/package.json +9 -0
  648. package/stepper/testing/public-api.d.ts +11 -0
  649. package/stepper/testing/step-harness-filters.d.ts +37 -0
  650. package/stepper/testing/step-harness.d.ts +57 -0
  651. package/stepper/testing/stepper-button-harnesses.d.ts +41 -0
  652. package/stepper/testing/stepper-harness.d.ts +35 -0
  653. package/table/cell.d.ts +9 -5
  654. package/table/index.metadata.json +1 -1
  655. package/table/table.d.ts +2 -0
  656. package/tabs/index.metadata.json +1 -1
  657. package/tabs/tab.d.ts +8 -1
  658. package/toolbar/index.metadata.json +1 -1
  659. package/tooltip/index.metadata.json +1 -1
  660. package/tooltip/tooltip.d.ts +6 -2
  661. package/tree/index.metadata.json +1 -1
  662. package/tree/padding.d.ts +4 -2
  663. package/tree/toggle.d.ts +2 -1
@@ -1,235 +1,308 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/cdk/overlay'), require('@angular/cdk/portal'), require('@angular/core'), require('@angular/material/core'), require('@angular/cdk/bidi'), require('@angular/common'), require('rxjs'), require('rxjs/operators'), require('@angular/animations'), require('@angular/cdk/a11y'), require('@angular/cdk/keycodes')) :
3
- typeof define === 'function' && define.amd ? define('@angular/material/dialog', ['exports', '@angular/cdk/overlay', '@angular/cdk/portal', '@angular/core', '@angular/material/core', '@angular/cdk/bidi', '@angular/common', 'rxjs', 'rxjs/operators', '@angular/animations', '@angular/cdk/a11y', '@angular/cdk/keycodes'], factory) :
4
- (global = global || self, factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.dialog = {}), global.ng.cdk.overlay, global.ng.cdk.portal, global.ng.core, global.ng.material.core, global.ng.cdk.bidi, global.ng.common, global.rxjs, global.rxjs.operators, global.ng.animations, global.ng.cdk.a11y, global.ng.cdk.keycodes));
5
- }(this, (function (exports, overlay, portal, core, core$1, bidi, common, rxjs, operators, animations, a11y, keycodes) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/cdk/overlay'), require('@angular/cdk/portal'), require('@angular/core'), require('@angular/material/core'), require('@angular/cdk/bidi'), require('@angular/common'), require('rxjs'), require('rxjs/operators'), require('@angular/cdk/a11y'), require('@angular/animations'), require('@angular/cdk/keycodes')) :
3
+ typeof define === 'function' && define.amd ? define('@angular/material/dialog', ['exports', '@angular/cdk/overlay', '@angular/cdk/portal', '@angular/core', '@angular/material/core', '@angular/cdk/bidi', '@angular/common', 'rxjs', 'rxjs/operators', '@angular/cdk/a11y', '@angular/animations', '@angular/cdk/keycodes'], factory) :
4
+ (global = global || self, factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.dialog = {}), global.ng.cdk.overlay, global.ng.cdk.portal, global.ng.core, global.ng.material.core, global.ng.cdk.bidi, global.ng.common, global.rxjs, global.rxjs.operators, global.ng.cdk.a11y, global.ng.animations, global.ng.cdk.keycodes));
5
+ }(this, (function (exports, overlay, portal, core, core$1, bidi, common, rxjs, operators, a11y, animations, keycodes) { 'use strict';
6
6
 
7
- /*! *****************************************************************************
8
- Copyright (c) Microsoft Corporation.
9
-
10
- Permission to use, copy, modify, and/or distribute this software for any
11
- purpose with or without fee is hereby granted.
12
-
13
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
14
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
15
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
17
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
18
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19
- PERFORMANCE OF THIS SOFTWARE.
20
- ***************************************************************************** */
21
- /* global Reflect, Promise */
22
-
23
- var extendStatics = function(d, b) {
24
- extendStatics = Object.setPrototypeOf ||
25
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
26
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
27
- return extendStatics(d, b);
28
- };
29
-
30
- function __extends(d, b) {
31
- extendStatics(d, b);
32
- function __() { this.constructor = d; }
33
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
34
- }
35
-
36
- var __assign = function() {
37
- __assign = Object.assign || function __assign(t) {
38
- for (var s, i = 1, n = arguments.length; i < n; i++) {
39
- s = arguments[i];
40
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
41
- }
42
- return t;
43
- };
44
- return __assign.apply(this, arguments);
45
- };
46
-
47
- function __rest(s, e) {
48
- var t = {};
49
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
50
- t[p] = s[p];
51
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
52
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
53
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
54
- t[p[i]] = s[p[i]];
55
- }
56
- return t;
57
- }
58
-
59
- function __decorate(decorators, target, key, desc) {
60
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
61
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
62
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
63
- return c > 3 && r && Object.defineProperty(target, key, r), r;
64
- }
65
-
66
- function __param(paramIndex, decorator) {
67
- return function (target, key) { decorator(target, key, paramIndex); }
68
- }
69
-
70
- function __metadata(metadataKey, metadataValue) {
71
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
72
- }
73
-
74
- function __awaiter(thisArg, _arguments, P, generator) {
75
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
76
- return new (P || (P = Promise))(function (resolve, reject) {
77
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
78
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
79
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
80
- step((generator = generator.apply(thisArg, _arguments || [])).next());
81
- });
82
- }
83
-
84
- function __generator(thisArg, body) {
85
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
86
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
87
- function verb(n) { return function (v) { return step([n, v]); }; }
88
- function step(op) {
89
- if (f) throw new TypeError("Generator is already executing.");
90
- while (_) try {
91
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
92
- if (y = 0, t) op = [op[0] & 2, t.value];
93
- switch (op[0]) {
94
- case 0: case 1: t = op; break;
95
- case 4: _.label++; return { value: op[1], done: false };
96
- case 5: _.label++; y = op[1]; op = [0]; continue;
97
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
98
- default:
99
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
100
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
101
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
102
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
103
- if (t[2]) _.ops.pop();
104
- _.trys.pop(); continue;
105
- }
106
- op = body.call(thisArg, _);
107
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
108
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
109
- }
110
- }
111
-
112
- var __createBinding = Object.create ? (function(o, m, k, k2) {
113
- if (k2 === undefined) k2 = k;
114
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
115
- }) : (function(o, m, k, k2) {
116
- if (k2 === undefined) k2 = k;
117
- o[k2] = m[k];
118
- });
119
-
120
- function __exportStar(m, exports) {
121
- for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
122
- }
123
-
124
- function __values(o) {
125
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
126
- if (m) return m.call(o);
127
- if (o && typeof o.length === "number") return {
128
- next: function () {
129
- if (o && i >= o.length) o = void 0;
130
- return { value: o && o[i++], done: !o };
131
- }
132
- };
133
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
134
- }
135
-
136
- function __read(o, n) {
137
- var m = typeof Symbol === "function" && o[Symbol.iterator];
138
- if (!m) return o;
139
- var i = m.call(o), r, ar = [], e;
140
- try {
141
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
142
- }
143
- catch (error) { e = { error: error }; }
144
- finally {
145
- try {
146
- if (r && !r.done && (m = i["return"])) m.call(i);
147
- }
148
- finally { if (e) throw e.error; }
149
- }
150
- return ar;
151
- }
152
-
153
- function __spread() {
154
- for (var ar = [], i = 0; i < arguments.length; i++)
155
- ar = ar.concat(__read(arguments[i]));
156
- return ar;
157
- }
158
-
159
- function __spreadArrays() {
160
- for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
161
- for (var r = Array(s), k = 0, i = 0; i < il; i++)
162
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
163
- r[k] = a[j];
164
- return r;
165
- };
166
-
167
- function __await(v) {
168
- return this instanceof __await ? (this.v = v, this) : new __await(v);
169
- }
170
-
171
- function __asyncGenerator(thisArg, _arguments, generator) {
172
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
173
- var g = generator.apply(thisArg, _arguments || []), i, q = [];
174
- return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
175
- function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
176
- function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
177
- function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
178
- function fulfill(value) { resume("next", value); }
179
- function reject(value) { resume("throw", value); }
180
- function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
181
- }
182
-
183
- function __asyncDelegator(o) {
184
- var i, p;
185
- return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
186
- function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
187
- }
188
-
189
- function __asyncValues(o) {
190
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
191
- var m = o[Symbol.asyncIterator], i;
192
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
193
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
194
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
195
- }
196
-
197
- function __makeTemplateObject(cooked, raw) {
198
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
199
- return cooked;
200
- };
201
-
202
- var __setModuleDefault = Object.create ? (function(o, v) {
203
- Object.defineProperty(o, "default", { enumerable: true, value: v });
204
- }) : function(o, v) {
205
- o["default"] = v;
206
- };
207
-
208
- function __importStar(mod) {
209
- if (mod && mod.__esModule) return mod;
210
- var result = {};
211
- if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
212
- __setModuleDefault(result, mod);
213
- return result;
214
- }
215
-
216
- function __importDefault(mod) {
217
- return (mod && mod.__esModule) ? mod : { default: mod };
218
- }
219
-
220
- function __classPrivateFieldGet(receiver, privateMap) {
221
- if (!privateMap.has(receiver)) {
222
- throw new TypeError("attempted to get private field on non-instance");
223
- }
224
- return privateMap.get(receiver);
225
- }
226
-
227
- function __classPrivateFieldSet(receiver, privateMap, value) {
228
- if (!privateMap.has(receiver)) {
229
- throw new TypeError("attempted to set private field on non-instance");
230
- }
231
- privateMap.set(receiver, value);
232
- return value;
7
+ /*! *****************************************************************************
8
+ Copyright (c) Microsoft Corporation.
9
+
10
+ Permission to use, copy, modify, and/or distribute this software for any
11
+ purpose with or without fee is hereby granted.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
14
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
15
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
17
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
18
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19
+ PERFORMANCE OF THIS SOFTWARE.
20
+ ***************************************************************************** */
21
+ /* global Reflect, Promise */
22
+ var extendStatics = function (d, b) {
23
+ extendStatics = Object.setPrototypeOf ||
24
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
25
+ function (d, b) { for (var p in b)
26
+ if (b.hasOwnProperty(p))
27
+ d[p] = b[p]; };
28
+ return extendStatics(d, b);
29
+ };
30
+ function __extends(d, b) {
31
+ extendStatics(d, b);
32
+ function __() { this.constructor = d; }
33
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
34
+ }
35
+ var __assign = function () {
36
+ __assign = Object.assign || function __assign(t) {
37
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
38
+ s = arguments[i];
39
+ for (var p in s)
40
+ if (Object.prototype.hasOwnProperty.call(s, p))
41
+ t[p] = s[p];
42
+ }
43
+ return t;
44
+ };
45
+ return __assign.apply(this, arguments);
46
+ };
47
+ function __rest(s, e) {
48
+ var t = {};
49
+ for (var p in s)
50
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
51
+ t[p] = s[p];
52
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
53
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
54
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
55
+ t[p[i]] = s[p[i]];
56
+ }
57
+ return t;
58
+ }
59
+ function __decorate(decorators, target, key, desc) {
60
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
61
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
62
+ r = Reflect.decorate(decorators, target, key, desc);
63
+ else
64
+ for (var i = decorators.length - 1; i >= 0; i--)
65
+ if (d = decorators[i])
66
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
67
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
68
+ }
69
+ function __param(paramIndex, decorator) {
70
+ return function (target, key) { decorator(target, key, paramIndex); };
71
+ }
72
+ function __metadata(metadataKey, metadataValue) {
73
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
74
+ return Reflect.metadata(metadataKey, metadataValue);
75
+ }
76
+ function __awaiter(thisArg, _arguments, P, generator) {
77
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
78
+ return new (P || (P = Promise))(function (resolve, reject) {
79
+ function fulfilled(value) { try {
80
+ step(generator.next(value));
81
+ }
82
+ catch (e) {
83
+ reject(e);
84
+ } }
85
+ function rejected(value) { try {
86
+ step(generator["throw"](value));
87
+ }
88
+ catch (e) {
89
+ reject(e);
90
+ } }
91
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
92
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
93
+ });
94
+ }
95
+ function __generator(thisArg, body) {
96
+ var _ = { label: 0, sent: function () { if (t[0] & 1)
97
+ throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
98
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
99
+ function verb(n) { return function (v) { return step([n, v]); }; }
100
+ function step(op) {
101
+ if (f)
102
+ throw new TypeError("Generator is already executing.");
103
+ while (_)
104
+ try {
105
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
106
+ return t;
107
+ if (y = 0, t)
108
+ op = [op[0] & 2, t.value];
109
+ switch (op[0]) {
110
+ case 0:
111
+ case 1:
112
+ t = op;
113
+ break;
114
+ case 4:
115
+ _.label++;
116
+ return { value: op[1], done: false };
117
+ case 5:
118
+ _.label++;
119
+ y = op[1];
120
+ op = [0];
121
+ continue;
122
+ case 7:
123
+ op = _.ops.pop();
124
+ _.trys.pop();
125
+ continue;
126
+ default:
127
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
128
+ _ = 0;
129
+ continue;
130
+ }
131
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
132
+ _.label = op[1];
133
+ break;
134
+ }
135
+ if (op[0] === 6 && _.label < t[1]) {
136
+ _.label = t[1];
137
+ t = op;
138
+ break;
139
+ }
140
+ if (t && _.label < t[2]) {
141
+ _.label = t[2];
142
+ _.ops.push(op);
143
+ break;
144
+ }
145
+ if (t[2])
146
+ _.ops.pop();
147
+ _.trys.pop();
148
+ continue;
149
+ }
150
+ op = body.call(thisArg, _);
151
+ }
152
+ catch (e) {
153
+ op = [6, e];
154
+ y = 0;
155
+ }
156
+ finally {
157
+ f = t = 0;
158
+ }
159
+ if (op[0] & 5)
160
+ throw op[1];
161
+ return { value: op[0] ? op[1] : void 0, done: true };
162
+ }
163
+ }
164
+ var __createBinding = Object.create ? (function (o, m, k, k2) {
165
+ if (k2 === undefined)
166
+ k2 = k;
167
+ Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
168
+ }) : (function (o, m, k, k2) {
169
+ if (k2 === undefined)
170
+ k2 = k;
171
+ o[k2] = m[k];
172
+ });
173
+ function __exportStar(m, exports) {
174
+ for (var p in m)
175
+ if (p !== "default" && !exports.hasOwnProperty(p))
176
+ __createBinding(exports, m, p);
177
+ }
178
+ function __values(o) {
179
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
180
+ if (m)
181
+ return m.call(o);
182
+ if (o && typeof o.length === "number")
183
+ return {
184
+ next: function () {
185
+ if (o && i >= o.length)
186
+ o = void 0;
187
+ return { value: o && o[i++], done: !o };
188
+ }
189
+ };
190
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
191
+ }
192
+ function __read(o, n) {
193
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
194
+ if (!m)
195
+ return o;
196
+ var i = m.call(o), r, ar = [], e;
197
+ try {
198
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
199
+ ar.push(r.value);
200
+ }
201
+ catch (error) {
202
+ e = { error: error };
203
+ }
204
+ finally {
205
+ try {
206
+ if (r && !r.done && (m = i["return"]))
207
+ m.call(i);
208
+ }
209
+ finally {
210
+ if (e)
211
+ throw e.error;
212
+ }
213
+ }
214
+ return ar;
215
+ }
216
+ function __spread() {
217
+ for (var ar = [], i = 0; i < arguments.length; i++)
218
+ ar = ar.concat(__read(arguments[i]));
219
+ return ar;
220
+ }
221
+ function __spreadArrays() {
222
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++)
223
+ s += arguments[i].length;
224
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
225
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
226
+ r[k] = a[j];
227
+ return r;
228
+ }
229
+ ;
230
+ function __await(v) {
231
+ return this instanceof __await ? (this.v = v, this) : new __await(v);
232
+ }
233
+ function __asyncGenerator(thisArg, _arguments, generator) {
234
+ if (!Symbol.asyncIterator)
235
+ throw new TypeError("Symbol.asyncIterator is not defined.");
236
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
237
+ return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
238
+ function verb(n) { if (g[n])
239
+ i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
240
+ function resume(n, v) { try {
241
+ step(g[n](v));
242
+ }
243
+ catch (e) {
244
+ settle(q[0][3], e);
245
+ } }
246
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
247
+ function fulfill(value) { resume("next", value); }
248
+ function reject(value) { resume("throw", value); }
249
+ function settle(f, v) { if (f(v), q.shift(), q.length)
250
+ resume(q[0][0], q[0][1]); }
251
+ }
252
+ function __asyncDelegator(o) {
253
+ var i, p;
254
+ return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
255
+ function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
256
+ }
257
+ function __asyncValues(o) {
258
+ if (!Symbol.asyncIterator)
259
+ throw new TypeError("Symbol.asyncIterator is not defined.");
260
+ var m = o[Symbol.asyncIterator], i;
261
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
262
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
263
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
264
+ }
265
+ function __makeTemplateObject(cooked, raw) {
266
+ if (Object.defineProperty) {
267
+ Object.defineProperty(cooked, "raw", { value: raw });
268
+ }
269
+ else {
270
+ cooked.raw = raw;
271
+ }
272
+ return cooked;
273
+ }
274
+ ;
275
+ var __setModuleDefault = Object.create ? (function (o, v) {
276
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
277
+ }) : function (o, v) {
278
+ o["default"] = v;
279
+ };
280
+ function __importStar(mod) {
281
+ if (mod && mod.__esModule)
282
+ return mod;
283
+ var result = {};
284
+ if (mod != null)
285
+ for (var k in mod)
286
+ if (Object.hasOwnProperty.call(mod, k))
287
+ __createBinding(result, mod, k);
288
+ __setModuleDefault(result, mod);
289
+ return result;
290
+ }
291
+ function __importDefault(mod) {
292
+ return (mod && mod.__esModule) ? mod : { default: mod };
293
+ }
294
+ function __classPrivateFieldGet(receiver, privateMap) {
295
+ if (!privateMap.has(receiver)) {
296
+ throw new TypeError("attempted to get private field on non-instance");
297
+ }
298
+ return privateMap.get(receiver);
299
+ }
300
+ function __classPrivateFieldSet(receiver, privateMap, value) {
301
+ if (!privateMap.has(receiver)) {
302
+ throw new TypeError("attempted to set private field on non-instance");
303
+ }
304
+ privateMap.set(receiver, value);
305
+ return value;
233
306
  }
234
307
 
235
308
  /**
@@ -310,13 +383,6 @@
310
383
  ])
311
384
  };
312
385
 
313
- /**
314
- * @license
315
- * Copyright Google LLC All Rights Reserved.
316
- *
317
- * Use of this source code is governed by an MIT-style license that can be
318
- * found in the LICENSE file at https://angular.io/license
319
- */
320
386
  /**
321
387
  * Throws an exception for the case when a ComponentPortal is
322
388
  * attached to a DomPortalOutlet without an origin.
@@ -326,13 +392,12 @@
326
392
  throw Error('Attempting to attach dialog content after content is already attached');
327
393
  }
328
394
  /**
329
- * Internal component that wraps user-provided dialog content.
330
- * Animation is based on https://material.io/guidelines/motion/choreography.html.
331
- * @docs-private
395
+ * Base class for the `MatDialogContainer`. The base class does not implement
396
+ * animations as these are left to implementers of the dialog container.
332
397
  */
333
- var MatDialogContainer = /** @class */ (function (_super) {
334
- __extends(MatDialogContainer, _super);
335
- function MatDialogContainer(_elementRef, _focusTrapFactory, _changeDetectorRef, _document,
398
+ var _MatDialogContainerBase = /** @class */ (function (_super) {
399
+ __extends(_MatDialogContainerBase, _super);
400
+ function _MatDialogContainerBase(_elementRef, _focusTrapFactory, _changeDetectorRef, _document,
336
401
  /** The dialog configuration. */
337
402
  _config, _focusMonitor) {
338
403
  var _this = _super.call(this) || this;
@@ -341,6 +406,8 @@
341
406
  _this._changeDetectorRef = _changeDetectorRef;
342
407
  _this._config = _config;
343
408
  _this._focusMonitor = _focusMonitor;
409
+ /** Emits when an animation state changes. */
410
+ _this._animationStateChanged = new core.EventEmitter();
344
411
  /** Element that was focused before the dialog was opened. Save this to restore upon close. */
345
412
  _this._elementFocusedBeforeDialogWasOpened = null;
346
413
  /**
@@ -349,10 +416,6 @@
349
416
  * after the dialog is closed.
350
417
  */
351
418
  _this._closeInteractionType = null;
352
- /** State of the dialog animation. */
353
- _this._state = 'enter';
354
- /** Emits when an animation state changes. */
355
- _this._animationStateChanged = new core.EventEmitter();
356
419
  /**
357
420
  * Attaches a DOM portal to the dialog container.
358
421
  * @param portal Portal to be attached.
@@ -360,40 +423,47 @@
360
423
  * @breaking-change 10.0.0
361
424
  */
362
425
  _this.attachDomPortal = function (portal) {
363
- if (_this._portalOutlet.hasAttached()) {
426
+ if (_this._portalOutlet.hasAttached() && (typeof ngDevMode === 'undefined' || ngDevMode)) {
364
427
  throwMatDialogContentAlreadyAttachedError();
365
428
  }
366
- _this._setupFocusTrap();
367
429
  return _this._portalOutlet.attachDomPortal(portal);
368
430
  };
369
431
  _this._ariaLabelledBy = _config.ariaLabelledBy || null;
370
432
  _this._document = _document;
371
433
  return _this;
372
434
  }
435
+ /** Initializes the dialog container with the attached content. */
436
+ _MatDialogContainerBase.prototype._initializeWithAttachedContent = function () {
437
+ this._setupFocusTrap();
438
+ // Save the previously focused element. This element will be re-focused
439
+ // when the dialog closes.
440
+ this._capturePreviouslyFocusedElement();
441
+ // Move focus onto the dialog immediately in order to prevent the user
442
+ // from accidentally opening multiple dialogs at the same time.
443
+ this._focusDialogContainer();
444
+ };
373
445
  /**
374
446
  * Attach a ComponentPortal as content to this dialog container.
375
447
  * @param portal Portal to be attached as the dialog content.
376
448
  */
377
- MatDialogContainer.prototype.attachComponentPortal = function (portal) {
378
- if (this._portalOutlet.hasAttached()) {
449
+ _MatDialogContainerBase.prototype.attachComponentPortal = function (portal) {
450
+ if (this._portalOutlet.hasAttached() && (typeof ngDevMode === 'undefined' || ngDevMode)) {
379
451
  throwMatDialogContentAlreadyAttachedError();
380
452
  }
381
- this._setupFocusTrap();
382
453
  return this._portalOutlet.attachComponentPortal(portal);
383
454
  };
384
455
  /**
385
456
  * Attach a TemplatePortal as content to this dialog container.
386
457
  * @param portal Portal to be attached as the dialog content.
387
458
  */
388
- MatDialogContainer.prototype.attachTemplatePortal = function (portal) {
389
- if (this._portalOutlet.hasAttached()) {
459
+ _MatDialogContainerBase.prototype.attachTemplatePortal = function (portal) {
460
+ if (this._portalOutlet.hasAttached() && (typeof ngDevMode === 'undefined' || ngDevMode)) {
390
461
  throwMatDialogContentAlreadyAttachedError();
391
462
  }
392
- this._setupFocusTrap();
393
463
  return this._portalOutlet.attachTemplatePortal(portal);
394
464
  };
395
465
  /** Moves focus back into the dialog if it was moved out. */
396
- MatDialogContainer.prototype._recaptureFocus = function () {
466
+ _MatDialogContainerBase.prototype._recaptureFocus = function () {
397
467
  if (!this._containsFocus()) {
398
468
  var focusContainer = !this._config.autoFocus || !this._focusTrap.focusInitialElement();
399
469
  if (focusContainer) {
@@ -402,7 +472,7 @@
402
472
  }
403
473
  };
404
474
  /** Moves the focus inside the focus trap. */
405
- MatDialogContainer.prototype._trapFocus = function () {
475
+ _MatDialogContainerBase.prototype._trapFocus = function () {
406
476
  // If we were to attempt to focus immediately, then the content of the dialog would not yet be
407
477
  // ready in instances where change detection has to run first. To deal with this, we simply
408
478
  // wait for the microtask queue to be empty.
@@ -419,7 +489,7 @@
419
489
  }
420
490
  };
421
491
  /** Restores focus to the element that was focused before the dialog opened. */
422
- MatDialogContainer.prototype._restoreFocus = function () {
492
+ _MatDialogContainerBase.prototype._restoreFocus = function () {
423
493
  var previousElement = this._elementFocusedBeforeDialogWasOpened;
424
494
  // We need the extra check, because IE can set the `activeElement` to null in some cases.
425
495
  if (this._config.restoreFocus && previousElement &&
@@ -445,45 +515,79 @@
445
515
  this._focusTrap.destroy();
446
516
  }
447
517
  };
448
- /**
449
- * Sets up the focus trand and saves a reference to the
450
- * element that was focused before the dialog was opened.
451
- */
452
- MatDialogContainer.prototype._setupFocusTrap = function () {
453
- var _this = this;
454
- if (!this._focusTrap) {
455
- this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);
456
- }
518
+ /** Sets up the focus trap. */
519
+ _MatDialogContainerBase.prototype._setupFocusTrap = function () {
520
+ this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);
521
+ };
522
+ /** Captures the element that was focused before the dialog was opened. */
523
+ _MatDialogContainerBase.prototype._capturePreviouslyFocusedElement = function () {
457
524
  if (this._document) {
458
525
  this._elementFocusedBeforeDialogWasOpened = this._document.activeElement;
459
- // Note that there is no focus method when rendering on the server.
460
- if (this._elementRef.nativeElement.focus) {
461
- // Move focus onto the dialog immediately in order to prevent the user from accidentally
462
- // opening multiple dialogs at the same time. Needs to be async, because the element
463
- // may not be focusable immediately.
464
- Promise.resolve().then(function () { return _this._elementRef.nativeElement.focus(); });
465
- }
526
+ }
527
+ };
528
+ /** Focuses the dialog container. */
529
+ _MatDialogContainerBase.prototype._focusDialogContainer = function () {
530
+ // Note that there is no focus method when rendering on the server.
531
+ if (this._elementRef.nativeElement.focus) {
532
+ this._elementRef.nativeElement.focus();
466
533
  }
467
534
  };
468
535
  /** Returns whether focus is inside the dialog. */
469
- MatDialogContainer.prototype._containsFocus = function () {
536
+ _MatDialogContainerBase.prototype._containsFocus = function () {
470
537
  var element = this._elementRef.nativeElement;
471
538
  var activeElement = this._document.activeElement;
472
539
  return element === activeElement || element.contains(activeElement);
473
540
  };
541
+ return _MatDialogContainerBase;
542
+ }(portal.BasePortalOutlet));
543
+ _MatDialogContainerBase.decorators = [
544
+ { type: core.Directive }
545
+ ];
546
+ _MatDialogContainerBase.ctorParameters = function () { return [
547
+ { type: core.ElementRef },
548
+ { type: a11y.FocusTrapFactory },
549
+ { type: core.ChangeDetectorRef },
550
+ { type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [common.DOCUMENT,] }] },
551
+ { type: MatDialogConfig },
552
+ { type: a11y.FocusMonitor }
553
+ ]; };
554
+ _MatDialogContainerBase.propDecorators = {
555
+ _portalOutlet: [{ type: core.ViewChild, args: [portal.CdkPortalOutlet, { static: true },] }]
556
+ };
557
+ /**
558
+ * Internal component that wraps user-provided dialog content.
559
+ * Animation is based on https://material.io/guidelines/motion/choreography.html.
560
+ * @docs-private
561
+ */
562
+ var MatDialogContainer = /** @class */ (function (_super) {
563
+ __extends(MatDialogContainer, _super);
564
+ function MatDialogContainer() {
565
+ var _this = _super.apply(this, __spread(arguments)) || this;
566
+ /** State of the dialog animation. */
567
+ _this._state = 'enter';
568
+ return _this;
569
+ }
474
570
  /** Callback, invoked whenever an animation on the host completes. */
475
- MatDialogContainer.prototype._onAnimationDone = function (event) {
476
- if (event.toState === 'enter') {
571
+ MatDialogContainer.prototype._onAnimationDone = function (_a) {
572
+ var toState = _a.toState, totalTime = _a.totalTime;
573
+ if (toState === 'enter') {
477
574
  this._trapFocus();
575
+ this._animationStateChanged.next({ state: 'opened', totalTime: totalTime });
478
576
  }
479
- else if (event.toState === 'exit') {
577
+ else if (toState === 'exit') {
480
578
  this._restoreFocus();
579
+ this._animationStateChanged.next({ state: 'closed', totalTime: totalTime });
481
580
  }
482
- this._animationStateChanged.emit(event);
483
581
  };
484
582
  /** Callback, invoked when an animation on the host starts. */
485
- MatDialogContainer.prototype._onAnimationStart = function (event) {
486
- this._animationStateChanged.emit(event);
583
+ MatDialogContainer.prototype._onAnimationStart = function (_a) {
584
+ var toState = _a.toState, totalTime = _a.totalTime;
585
+ if (toState === 'enter') {
586
+ this._animationStateChanged.next({ state: 'opening', totalTime: totalTime });
587
+ }
588
+ else if (toState === 'exit' || toState === 'void') {
589
+ this._animationStateChanged.next({ state: 'closing', totalTime: totalTime });
590
+ }
487
591
  };
488
592
  /** Starts the dialog exit animation. */
489
593
  MatDialogContainer.prototype._startExitAnimation = function () {
@@ -492,44 +596,33 @@
492
596
  // view container is using OnPush change detection.
493
597
  this._changeDetectorRef.markForCheck();
494
598
  };
495
- MatDialogContainer.decorators = [
496
- { type: core.Component, args: [{
497
- selector: 'mat-dialog-container',
498
- template: "<ng-template cdkPortalOutlet></ng-template>\n",
499
- encapsulation: core.ViewEncapsulation.None,
500
- // Using OnPush for dialogs caused some G3 sync issues. Disabled until we can track them down.
501
- // tslint:disable-next-line:validate-decorators
502
- changeDetection: core.ChangeDetectionStrategy.Default,
503
- animations: [matDialogAnimations.dialogContainer],
504
- host: {
505
- 'class': 'mat-dialog-container',
506
- 'tabindex': '-1',
507
- 'aria-modal': 'true',
508
- '[attr.id]': '_id',
509
- '[attr.role]': '_config.role',
510
- '[attr.aria-labelledby]': '_config.ariaLabel ? null : _ariaLabelledBy',
511
- '[attr.aria-label]': '_config.ariaLabel',
512
- '[attr.aria-describedby]': '_config.ariaDescribedBy || null',
513
- '[@dialogContainer]': '_state',
514
- '(@dialogContainer.start)': '_onAnimationStart($event)',
515
- '(@dialogContainer.done)': '_onAnimationDone($event)',
516
- },
517
- 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;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.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"]
518
- },] }
519
- ];
520
- MatDialogContainer.ctorParameters = function () { return [
521
- { type: core.ElementRef },
522
- { type: a11y.FocusTrapFactory },
523
- { type: core.ChangeDetectorRef },
524
- { type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [common.DOCUMENT,] }] },
525
- { type: MatDialogConfig },
526
- { type: a11y.FocusMonitor }
527
- ]; };
528
- MatDialogContainer.propDecorators = {
529
- _portalOutlet: [{ type: core.ViewChild, args: [portal.CdkPortalOutlet, { static: true },] }]
530
- };
531
599
  return MatDialogContainer;
532
- }(portal.BasePortalOutlet));
600
+ }(_MatDialogContainerBase));
601
+ MatDialogContainer.decorators = [
602
+ { type: core.Component, args: [{
603
+ selector: 'mat-dialog-container',
604
+ template: "<ng-template cdkPortalOutlet></ng-template>\n",
605
+ encapsulation: core.ViewEncapsulation.None,
606
+ // Using OnPush for dialogs caused some G3 sync issues. Disabled until we can track them down.
607
+ // tslint:disable-next-line:validate-decorators
608
+ changeDetection: core.ChangeDetectionStrategy.Default,
609
+ animations: [matDialogAnimations.dialogContainer],
610
+ host: {
611
+ 'class': 'mat-dialog-container',
612
+ 'tabindex': '-1',
613
+ 'aria-modal': 'true',
614
+ '[id]': '_id',
615
+ '[attr.role]': '_config.role',
616
+ '[attr.aria-labelledby]': '_config.ariaLabel ? null : _ariaLabelledBy',
617
+ '[attr.aria-label]': '_config.ariaLabel',
618
+ '[attr.aria-describedby]': '_config.ariaDescribedBy || null',
619
+ '[@dialogContainer]': '_state',
620
+ '(@dialogContainer.start)': '_onAnimationStart($event)',
621
+ '(@dialogContainer.done)': '_onAnimationDone($event)',
622
+ },
623
+ 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;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.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"]
624
+ },] }
625
+ ];
533
626
 
534
627
  /**
535
628
  * @license
@@ -564,13 +657,13 @@
564
657
  // Pass the id along to the container.
565
658
  _containerInstance._id = id;
566
659
  // Emit when opening animation completes
567
- _containerInstance._animationStateChanged.pipe(operators.filter(function (event) { return event.phaseName === 'done' && event.toState === 'enter'; }), operators.take(1))
660
+ _containerInstance._animationStateChanged.pipe(operators.filter(function (event) { return event.state === 'opened'; }), operators.take(1))
568
661
  .subscribe(function () {
569
662
  _this._afterOpened.next();
570
663
  _this._afterOpened.complete();
571
664
  });
572
665
  // Dispose overlay when closing animation is complete
573
- _containerInstance._animationStateChanged.pipe(operators.filter(function (event) { return event.phaseName === 'done' && event.toState === 'exit'; }), operators.take(1)).subscribe(function () {
666
+ _containerInstance._animationStateChanged.pipe(operators.filter(function (event) { return event.state === 'closed'; }), operators.take(1)).subscribe(function () {
574
667
  clearTimeout(_this._closeFallbackTimeout);
575
668
  _this._finishDialogClose();
576
669
  });
@@ -607,7 +700,7 @@
607
700
  var _this = this;
608
701
  this._result = dialogResult;
609
702
  // Transition the backdrop in parallel to the dialog.
610
- this._containerInstance._animationStateChanged.pipe(operators.filter(function (event) { return event.phaseName === 'start'; }), operators.take(1))
703
+ this._containerInstance._animationStateChanged.pipe(operators.filter(function (event) { return event.state === 'closing'; }), operators.take(1))
611
704
  .subscribe(function (event) {
612
705
  _this._beforeClosed.next(dialogResult);
613
706
  _this._beforeClosed.complete();
@@ -619,26 +712,26 @@
619
712
  // vast majority of cases the timeout will have been cleared before it has the chance to fire.
620
713
  _this._closeFallbackTimeout = setTimeout(function () { return _this._finishDialogClose(); }, event.totalTime + 100);
621
714
  });
622
- this._containerInstance._startExitAnimation();
623
715
  this._state = 1 /* CLOSING */;
716
+ this._containerInstance._startExitAnimation();
624
717
  };
625
718
  /**
626
719
  * Gets an observable that is notified when the dialog is finished opening.
627
720
  */
628
721
  MatDialogRef.prototype.afterOpened = function () {
629
- return this._afterOpened.asObservable();
722
+ return this._afterOpened;
630
723
  };
631
724
  /**
632
725
  * Gets an observable that is notified when the dialog is finished closing.
633
726
  */
634
727
  MatDialogRef.prototype.afterClosed = function () {
635
- return this._afterClosed.asObservable();
728
+ return this._afterClosed;
636
729
  };
637
730
  /**
638
731
  * Gets an observable that is notified when the dialog has started closing.
639
732
  */
640
733
  MatDialogRef.prototype.beforeClosed = function () {
641
- return this._beforeClosed.asObservable();
734
+ return this._beforeClosed;
642
735
  };
643
736
  /**
644
737
  * Gets an observable that emits when the overlay's backdrop has been clicked.
@@ -728,13 +821,6 @@
728
821
  return ref.close(result);
729
822
  }
730
823
 
731
- /**
732
- * @license
733
- * Copyright Google LLC All Rights Reserved.
734
- *
735
- * Use of this source code is governed by an MIT-style license that can be
736
- * found in the LICENSE file at https://angular.io/license
737
- */
738
824
  /** Injection token that can be used to access the data that was passed in to a dialog. */
739
825
  var MAT_DIALOG_DATA = new core.InjectionToken('MatDialogData');
740
826
  /** Injection token that can be used to specify default dialog options. */
@@ -756,21 +842,20 @@
756
842
  useFactory: MAT_DIALOG_SCROLL_STRATEGY_PROVIDER_FACTORY,
757
843
  };
758
844
  /**
759
- * Service to open Material Design modal dialogs.
845
+ * Base class for dialog services. The base dialog service allows
846
+ * for arbitrary dialog refs and dialog container components.
760
847
  */
761
- var MatDialog = /** @class */ (function () {
762
- function MatDialog(_overlay, _injector,
763
- /**
764
- * @deprecated `_location` parameter to be removed.
765
- * @breaking-change 10.0.0
766
- */
767
- _location, _defaultOptions, scrollStrategy, _parentDialog, _overlayContainer) {
848
+ var _MatDialogBase = /** @class */ (function () {
849
+ function _MatDialogBase(_overlay, _injector, _defaultOptions, _parentDialog, _overlayContainer, scrollStrategy, _dialogRefConstructor, _dialogContainerType, _dialogDataToken) {
768
850
  var _this = this;
769
851
  this._overlay = _overlay;
770
852
  this._injector = _injector;
771
853
  this._defaultOptions = _defaultOptions;
772
854
  this._parentDialog = _parentDialog;
773
855
  this._overlayContainer = _overlayContainer;
856
+ this._dialogRefConstructor = _dialogRefConstructor;
857
+ this._dialogContainerType = _dialogContainerType;
858
+ this._dialogDataToken = _dialogDataToken;
774
859
  this._openDialogsAtThisLevel = [];
775
860
  this._afterAllClosedAtThisLevel = new rxjs.Subject();
776
861
  this._afterOpenedAtThisLevel = new rxjs.Subject();
@@ -781,11 +866,11 @@
781
866
  * Will emit on subscribe if there are no open dialogs to begin with.
782
867
  */
783
868
  this.afterAllClosed = rxjs.defer(function () { return _this.openDialogs.length ?
784
- _this._afterAllClosed :
785
- _this._afterAllClosed.pipe(operators.startWith(undefined)); });
869
+ _this._getAfterAllClosed() :
870
+ _this._getAfterAllClosed().pipe(operators.startWith(undefined)); });
786
871
  this._scrollStrategy = scrollStrategy;
787
872
  }
788
- Object.defineProperty(MatDialog.prototype, "openDialogs", {
873
+ Object.defineProperty(_MatDialogBase.prototype, "openDialogs", {
789
874
  /** Keeps track of the currently-open dialogs. */
790
875
  get: function () {
791
876
  return this._parentDialog ? this._parentDialog.openDialogs : this._openDialogsAtThisLevel;
@@ -793,7 +878,7 @@
793
878
  enumerable: false,
794
879
  configurable: true
795
880
  });
796
- Object.defineProperty(MatDialog.prototype, "afterOpened", {
881
+ Object.defineProperty(_MatDialogBase.prototype, "afterOpened", {
797
882
  /** Stream that emits when a dialog has been opened. */
798
883
  get: function () {
799
884
  return this._parentDialog ? this._parentDialog.afterOpened : this._afterOpenedAtThisLevel;
@@ -801,14 +886,10 @@
801
886
  enumerable: false,
802
887
  configurable: true
803
888
  });
804
- Object.defineProperty(MatDialog.prototype, "_afterAllClosed", {
805
- get: function () {
806
- var parent = this._parentDialog;
807
- return parent ? parent._afterAllClosed : this._afterAllClosedAtThisLevel;
808
- },
809
- enumerable: false,
810
- configurable: true
811
- });
889
+ _MatDialogBase.prototype._getAfterAllClosed = function () {
890
+ var parent = this._parentDialog;
891
+ return parent ? parent._getAfterAllClosed() : this._afterAllClosedAtThisLevel;
892
+ };
812
893
  /**
813
894
  * Opens a modal dialog containing the given component.
814
895
  * @param componentOrTemplateRef Type of the component to load into the dialog,
@@ -816,10 +897,11 @@
816
897
  * @param config Extra configuration options.
817
898
  * @returns Reference to the newly-opened dialog.
818
899
  */
819
- MatDialog.prototype.open = function (componentOrTemplateRef, config) {
900
+ _MatDialogBase.prototype.open = function (componentOrTemplateRef, config) {
820
901
  var _this = this;
821
902
  config = _applyConfigDefaults(config, this._defaultOptions || new MatDialogConfig());
822
- if (config.id && this.getDialogById(config.id)) {
903
+ if (config.id && this.getDialogById(config.id) &&
904
+ (typeof ngDevMode === 'undefined' || ngDevMode)) {
823
905
  throw Error("Dialog with id \"" + config.id + "\" exists already. The dialog id must be unique.");
824
906
  }
825
907
  var overlayRef = this._createOverlay(config);
@@ -832,22 +914,24 @@
832
914
  this.openDialogs.push(dialogRef);
833
915
  dialogRef.afterClosed().subscribe(function () { return _this._removeOpenDialog(dialogRef); });
834
916
  this.afterOpened.next(dialogRef);
917
+ // Notify the dialog container that the content has been attached.
918
+ dialogContainer._initializeWithAttachedContent();
835
919
  return dialogRef;
836
920
  };
837
921
  /**
838
922
  * Closes all of the currently-open dialogs.
839
923
  */
840
- MatDialog.prototype.closeAll = function () {
924
+ _MatDialogBase.prototype.closeAll = function () {
841
925
  this._closeDialogs(this.openDialogs);
842
926
  };
843
927
  /**
844
928
  * Finds an open dialog by its id.
845
929
  * @param id ID to use when looking up the dialog.
846
930
  */
847
- MatDialog.prototype.getDialogById = function (id) {
931
+ _MatDialogBase.prototype.getDialogById = function (id) {
848
932
  return this.openDialogs.find(function (dialog) { return dialog.id === id; });
849
933
  };
850
- MatDialog.prototype.ngOnDestroy = function () {
934
+ _MatDialogBase.prototype.ngOnDestroy = function () {
851
935
  // Only close the dialogs at this level on destroy
852
936
  // since the parent service may still be active.
853
937
  this._closeDialogs(this._openDialogsAtThisLevel);
@@ -859,7 +943,7 @@
859
943
  * @param config The dialog configuration.
860
944
  * @returns A promise resolving to the OverlayRef for the created overlay.
861
945
  */
862
- MatDialog.prototype._createOverlay = function (config) {
946
+ _MatDialogBase.prototype._createOverlay = function (config) {
863
947
  var overlayConfig = this._getOverlayConfig(config);
864
948
  return this._overlay.create(overlayConfig);
865
949
  };
@@ -868,7 +952,7 @@
868
952
  * @param dialogConfig The dialog configuration.
869
953
  * @returns The overlay configuration.
870
954
  */
871
- MatDialog.prototype._getOverlayConfig = function (dialogConfig) {
955
+ _MatDialogBase.prototype._getOverlayConfig = function (dialogConfig) {
872
956
  var state = new overlay.OverlayConfig({
873
957
  positionStrategy: this._overlay.position().global(),
874
958
  scrollStrategy: dialogConfig.scrollStrategy || this._scrollStrategy(),
@@ -887,34 +971,34 @@
887
971
  return state;
888
972
  };
889
973
  /**
890
- * Attaches an MatDialogContainer to a dialog's already-created overlay.
974
+ * Attaches a dialog container to a dialog's already-created overlay.
891
975
  * @param overlay Reference to the dialog's underlying overlay.
892
976
  * @param config The dialog configuration.
893
977
  * @returns A promise resolving to a ComponentRef for the attached container.
894
978
  */
895
- MatDialog.prototype._attachDialogContainer = function (overlay, config) {
979
+ _MatDialogBase.prototype._attachDialogContainer = function (overlay, config) {
896
980
  var userInjector = config && config.viewContainerRef && config.viewContainerRef.injector;
897
981
  var injector = core.Injector.create({
898
982
  parent: userInjector || this._injector,
899
983
  providers: [{ provide: MatDialogConfig, useValue: config }]
900
984
  });
901
- var containerPortal = new portal.ComponentPortal(MatDialogContainer, config.viewContainerRef, injector, config.componentFactoryResolver);
985
+ var containerPortal = new portal.ComponentPortal(this._dialogContainerType, config.viewContainerRef, injector, config.componentFactoryResolver);
902
986
  var containerRef = overlay.attach(containerPortal);
903
987
  return containerRef.instance;
904
988
  };
905
989
  /**
906
- * Attaches the user-provided component to the already-created MatDialogContainer.
990
+ * Attaches the user-provided component to the already-created dialog container.
907
991
  * @param componentOrTemplateRef The type of component being loaded into the dialog,
908
992
  * or a TemplateRef to instantiate as the content.
909
- * @param dialogContainer Reference to the wrapping MatDialogContainer.
993
+ * @param dialogContainer Reference to the wrapping dialog container.
910
994
  * @param overlayRef Reference to the overlay in which the dialog resides.
911
995
  * @param config The dialog configuration.
912
996
  * @returns A promise resolving to the MatDialogRef that should be returned to the user.
913
997
  */
914
- MatDialog.prototype._attachDialogContent = function (componentOrTemplateRef, dialogContainer, overlayRef, config) {
998
+ _MatDialogBase.prototype._attachDialogContent = function (componentOrTemplateRef, dialogContainer, overlayRef, config) {
915
999
  // Create a reference to the dialog we're creating in order to give the user a handle
916
1000
  // to modify and close it.
917
- var dialogRef = new MatDialogRef(overlayRef, dialogContainer, config.id);
1001
+ var dialogRef = new this._dialogRefConstructor(overlayRef, dialogContainer, config.id);
918
1002
  if (componentOrTemplateRef instanceof core.TemplateRef) {
919
1003
  dialogContainer.attachTemplatePortal(new portal.TemplatePortal(componentOrTemplateRef, null, { $implicit: config.data, dialogRef: dialogRef }));
920
1004
  }
@@ -933,19 +1017,19 @@
933
1017
  * of a dialog to close itself and, optionally, to return a value.
934
1018
  * @param config Config object that is used to construct the dialog.
935
1019
  * @param dialogRef Reference to the dialog.
936
- * @param container Dialog container element that wraps all of the contents.
1020
+ * @param dialogContainer Dialog container element that wraps all of the contents.
937
1021
  * @returns The custom injector that can be used inside the dialog.
938
1022
  */
939
- MatDialog.prototype._createInjector = function (config, dialogRef, dialogContainer) {
1023
+ _MatDialogBase.prototype._createInjector = function (config, dialogRef, dialogContainer) {
940
1024
  var userInjector = config && config.viewContainerRef && config.viewContainerRef.injector;
941
- // The MatDialogContainer is injected in the portal as the MatDialogContainer and the dialog's
942
- // content are created out of the same ViewContainerRef and as such, are siblings for injector
943
- // purposes. To allow the hierarchy that is expected, the MatDialogContainer is explicitly
944
- // added to the injection tokens.
1025
+ // The dialog container should be provided as the dialog container and the dialog's
1026
+ // content are created out of the same `ViewContainerRef` and as such, are siblings
1027
+ // for injector purposes. To allow the hierarchy that is expected, the dialog
1028
+ // container is explicitly provided in the injector.
945
1029
  var providers = [
946
- { provide: MatDialogContainer, useValue: dialogContainer },
947
- { provide: MAT_DIALOG_DATA, useValue: config.data },
948
- { provide: MatDialogRef, useValue: dialogRef }
1030
+ { provide: this._dialogContainerType, useValue: dialogContainer },
1031
+ { provide: this._dialogDataToken, useValue: config.data },
1032
+ { provide: this._dialogRefConstructor, useValue: dialogRef }
949
1033
  ];
950
1034
  if (config.direction &&
951
1035
  (!userInjector || !userInjector.get(bidi.Directionality, null))) {
@@ -960,7 +1044,7 @@
960
1044
  * Removes a dialog from the array of open dialogs.
961
1045
  * @param dialogRef Dialog to be removed.
962
1046
  */
963
- MatDialog.prototype._removeOpenDialog = function (dialogRef) {
1047
+ _MatDialogBase.prototype._removeOpenDialog = function (dialogRef) {
964
1048
  var index = this.openDialogs.indexOf(dialogRef);
965
1049
  if (index > -1) {
966
1050
  this.openDialogs.splice(index, 1);
@@ -976,14 +1060,14 @@
976
1060
  }
977
1061
  });
978
1062
  this._ariaHiddenElements.clear();
979
- this._afterAllClosed.next();
1063
+ this._getAfterAllClosed().next();
980
1064
  }
981
1065
  }
982
1066
  };
983
1067
  /**
984
1068
  * Hides all of the content that isn't an overlay from assistive technology.
985
1069
  */
986
- MatDialog.prototype._hideNonDialogContentFromAssistiveTechnology = function () {
1070
+ _MatDialogBase.prototype._hideNonDialogContentFromAssistiveTechnology = function () {
987
1071
  var overlayContainer = this._overlayContainer.getContainerElement();
988
1072
  // Ensure that the overlay container is attached to the DOM.
989
1073
  if (overlayContainer.parentElement) {
@@ -1001,7 +1085,7 @@
1001
1085
  }
1002
1086
  };
1003
1087
  /** Closes all of the dialogs in an array. */
1004
- MatDialog.prototype._closeDialogs = function (dialogs) {
1088
+ _MatDialogBase.prototype._closeDialogs = function (dialogs) {
1005
1089
  var i = dialogs.length;
1006
1090
  while (i--) {
1007
1091
  // The `_openDialogs` property isn't updated after close until the rxjs subscription
@@ -1011,20 +1095,49 @@
1011
1095
  dialogs[i].close();
1012
1096
  }
1013
1097
  };
1014
- MatDialog.decorators = [
1015
- { type: core.Injectable }
1016
- ];
1017
- MatDialog.ctorParameters = function () { return [
1018
- { type: overlay.Overlay },
1019
- { type: core.Injector },
1020
- { type: common.Location, decorators: [{ type: core.Optional }] },
1021
- { type: MatDialogConfig, decorators: [{ type: core.Optional }, { type: core.Inject, args: [MAT_DIALOG_DEFAULT_OPTIONS,] }] },
1022
- { type: undefined, decorators: [{ type: core.Inject, args: [MAT_DIALOG_SCROLL_STRATEGY,] }] },
1023
- { type: MatDialog, decorators: [{ type: core.Optional }, { type: core.SkipSelf }] },
1024
- { type: overlay.OverlayContainer }
1025
- ]; };
1026
- return MatDialog;
1098
+ return _MatDialogBase;
1027
1099
  }());
1100
+ _MatDialogBase.decorators = [
1101
+ { type: core.Directive }
1102
+ ];
1103
+ _MatDialogBase.ctorParameters = function () { return [
1104
+ { type: overlay.Overlay },
1105
+ { type: core.Injector },
1106
+ { type: undefined },
1107
+ { type: undefined },
1108
+ { type: overlay.OverlayContainer },
1109
+ { type: undefined },
1110
+ { type: core.Type },
1111
+ { type: core.Type },
1112
+ { type: core.InjectionToken }
1113
+ ]; };
1114
+ /**
1115
+ * Service to open Material Design modal dialogs.
1116
+ */
1117
+ var MatDialog = /** @class */ (function (_super) {
1118
+ __extends(MatDialog, _super);
1119
+ function MatDialog(overlay, injector,
1120
+ /**
1121
+ * @deprecated `_location` parameter to be removed.
1122
+ * @breaking-change 10.0.0
1123
+ */
1124
+ location, defaultOptions, scrollStrategy, parentDialog, overlayContainer) {
1125
+ return _super.call(this, overlay, injector, defaultOptions, parentDialog, overlayContainer, scrollStrategy, MatDialogRef, MatDialogContainer, MAT_DIALOG_DATA) || this;
1126
+ }
1127
+ return MatDialog;
1128
+ }(_MatDialogBase));
1129
+ MatDialog.decorators = [
1130
+ { type: core.Injectable }
1131
+ ];
1132
+ MatDialog.ctorParameters = function () { return [
1133
+ { type: overlay.Overlay },
1134
+ { type: core.Injector },
1135
+ { type: common.Location, decorators: [{ type: core.Optional }] },
1136
+ { type: MatDialogConfig, decorators: [{ type: core.Optional }, { type: core.Inject, args: [MAT_DIALOG_DEFAULT_OPTIONS,] }] },
1137
+ { type: undefined, decorators: [{ type: core.Inject, args: [MAT_DIALOG_SCROLL_STRATEGY,] }] },
1138
+ { type: MatDialog, decorators: [{ type: core.Optional }, { type: core.SkipSelf }] },
1139
+ { type: overlay.OverlayContainer }
1140
+ ]; };
1028
1141
  /**
1029
1142
  * Applies default options to the dialog config.
1030
1143
  * @param config Config to be modified.
@@ -1032,7 +1145,7 @@
1032
1145
  * @returns The new configuration object.
1033
1146
  */
1034
1147
  function _applyConfigDefaults(config, defaultOptions) {
1035
- return __assign(__assign({}, defaultOptions), config);
1148
+ return Object.assign(Object.assign({}, defaultOptions), config);
1036
1149
  }
1037
1150
 
1038
1151
  /**
@@ -1048,7 +1161,10 @@
1048
1161
  * Button that will close the current dialog.
1049
1162
  */
1050
1163
  var MatDialogClose = /** @class */ (function () {
1051
- function MatDialogClose(dialogRef, _elementRef, _dialog) {
1164
+ function MatDialogClose(
1165
+ // The dialog title directive is always used in combination with a `MatDialogRef`.
1166
+ // tslint:disable-next-line: lightweight-tokens
1167
+ dialogRef, _elementRef, _dialog) {
1052
1168
  this.dialogRef = dialogRef;
1053
1169
  this._elementRef = _elementRef;
1054
1170
  this._dialog = _dialog;
@@ -1078,35 +1194,38 @@
1078
1194
  // the FocusMonitor won't detect any origin change, and will always output `program`.
1079
1195
  _closeDialogVia(this.dialogRef, event.screenX === 0 && event.screenY === 0 ? 'keyboard' : 'mouse', this.dialogResult);
1080
1196
  };
1081
- MatDialogClose.decorators = [
1082
- { type: core.Directive, args: [{
1083
- selector: '[mat-dialog-close], [matDialogClose]',
1084
- exportAs: 'matDialogClose',
1085
- host: {
1086
- '(click)': '_onButtonClick($event)',
1087
- '[attr.aria-label]': 'ariaLabel || null',
1088
- '[attr.type]': 'type',
1089
- }
1090
- },] }
1091
- ];
1092
- MatDialogClose.ctorParameters = function () { return [
1093
- { type: MatDialogRef, decorators: [{ type: core.Optional }] },
1094
- { type: core.ElementRef },
1095
- { type: MatDialog }
1096
- ]; };
1097
- MatDialogClose.propDecorators = {
1098
- ariaLabel: [{ type: core.Input, args: ['aria-label',] }],
1099
- type: [{ type: core.Input }],
1100
- dialogResult: [{ type: core.Input, args: ['mat-dialog-close',] }],
1101
- _matDialogClose: [{ type: core.Input, args: ['matDialogClose',] }]
1102
- };
1103
1197
  return MatDialogClose;
1104
1198
  }());
1199
+ MatDialogClose.decorators = [
1200
+ { type: core.Directive, args: [{
1201
+ selector: '[mat-dialog-close], [matDialogClose]',
1202
+ exportAs: 'matDialogClose',
1203
+ host: {
1204
+ '(click)': '_onButtonClick($event)',
1205
+ '[attr.aria-label]': 'ariaLabel || null',
1206
+ '[attr.type]': 'type',
1207
+ }
1208
+ },] }
1209
+ ];
1210
+ MatDialogClose.ctorParameters = function () { return [
1211
+ { type: MatDialogRef, decorators: [{ type: core.Optional }] },
1212
+ { type: core.ElementRef },
1213
+ { type: MatDialog }
1214
+ ]; };
1215
+ MatDialogClose.propDecorators = {
1216
+ ariaLabel: [{ type: core.Input, args: ['aria-label',] }],
1217
+ type: [{ type: core.Input }],
1218
+ dialogResult: [{ type: core.Input, args: ['mat-dialog-close',] }],
1219
+ _matDialogClose: [{ type: core.Input, args: ['matDialogClose',] }]
1220
+ };
1105
1221
  /**
1106
1222
  * Title of a dialog element. Stays fixed to the top of the dialog when scrolling.
1107
1223
  */
1108
1224
  var MatDialogTitle = /** @class */ (function () {
1109
- function MatDialogTitle(_dialogRef, _elementRef, _dialog) {
1225
+ function MatDialogTitle(
1226
+ // The dialog title directive is always used in combination with a `MatDialogRef`.
1227
+ // tslint:disable-next-line: lightweight-tokens
1228
+ _dialogRef, _elementRef, _dialog) {
1110
1229
  this._dialogRef = _dialogRef;
1111
1230
  this._elementRef = _elementRef;
1112
1231
  this._dialog = _dialog;
@@ -1126,40 +1245,40 @@
1126
1245
  });
1127
1246
  }
1128
1247
  };
1129
- MatDialogTitle.decorators = [
1130
- { type: core.Directive, args: [{
1131
- selector: '[mat-dialog-title], [matDialogTitle]',
1132
- exportAs: 'matDialogTitle',
1133
- host: {
1134
- 'class': 'mat-dialog-title',
1135
- '[id]': 'id',
1136
- },
1137
- },] }
1138
- ];
1139
- MatDialogTitle.ctorParameters = function () { return [
1140
- { type: MatDialogRef, decorators: [{ type: core.Optional }] },
1141
- { type: core.ElementRef },
1142
- { type: MatDialog }
1143
- ]; };
1144
- MatDialogTitle.propDecorators = {
1145
- id: [{ type: core.Input }]
1146
- };
1147
1248
  return MatDialogTitle;
1148
1249
  }());
1250
+ MatDialogTitle.decorators = [
1251
+ { type: core.Directive, args: [{
1252
+ selector: '[mat-dialog-title], [matDialogTitle]',
1253
+ exportAs: 'matDialogTitle',
1254
+ host: {
1255
+ 'class': 'mat-dialog-title',
1256
+ '[id]': 'id',
1257
+ },
1258
+ },] }
1259
+ ];
1260
+ MatDialogTitle.ctorParameters = function () { return [
1261
+ { type: MatDialogRef, decorators: [{ type: core.Optional }] },
1262
+ { type: core.ElementRef },
1263
+ { type: MatDialog }
1264
+ ]; };
1265
+ MatDialogTitle.propDecorators = {
1266
+ id: [{ type: core.Input }]
1267
+ };
1149
1268
  /**
1150
1269
  * Scrollable content container of a dialog.
1151
1270
  */
1152
1271
  var MatDialogContent = /** @class */ (function () {
1153
1272
  function MatDialogContent() {
1154
1273
  }
1155
- MatDialogContent.decorators = [
1156
- { type: core.Directive, args: [{
1157
- selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]",
1158
- host: { 'class': 'mat-dialog-content' }
1159
- },] }
1160
- ];
1161
1274
  return MatDialogContent;
1162
1275
  }());
1276
+ MatDialogContent.decorators = [
1277
+ { type: core.Directive, args: [{
1278
+ selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]",
1279
+ host: { 'class': 'mat-dialog-content' }
1280
+ },] }
1281
+ ];
1163
1282
  /**
1164
1283
  * Container for the bottom action buttons in a dialog.
1165
1284
  * Stays fixed to the bottom when scrolling.
@@ -1167,14 +1286,14 @@
1167
1286
  var MatDialogActions = /** @class */ (function () {
1168
1287
  function MatDialogActions() {
1169
1288
  }
1170
- MatDialogActions.decorators = [
1171
- { type: core.Directive, args: [{
1172
- selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]",
1173
- host: { 'class': 'mat-dialog-actions' }
1174
- },] }
1175
- ];
1176
1289
  return MatDialogActions;
1177
1290
  }());
1291
+ MatDialogActions.decorators = [
1292
+ { type: core.Directive, args: [{
1293
+ selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]",
1294
+ host: { 'class': 'mat-dialog-actions' }
1295
+ },] }
1296
+ ];
1178
1297
  /**
1179
1298
  * Finds the closest MatDialogRef to an element by looking at the DOM.
1180
1299
  * @param element Element relative to which to look for a dialog.
@@ -1198,37 +1317,37 @@
1198
1317
  var MatDialogModule = /** @class */ (function () {
1199
1318
  function MatDialogModule() {
1200
1319
  }
1201
- MatDialogModule.decorators = [
1202
- { type: core.NgModule, args: [{
1203
- imports: [
1204
- overlay.OverlayModule,
1205
- portal.PortalModule,
1206
- core$1.MatCommonModule,
1207
- ],
1208
- exports: [
1209
- MatDialogContainer,
1210
- MatDialogClose,
1211
- MatDialogTitle,
1212
- MatDialogContent,
1213
- MatDialogActions,
1214
- core$1.MatCommonModule,
1215
- ],
1216
- declarations: [
1217
- MatDialogContainer,
1218
- MatDialogClose,
1219
- MatDialogTitle,
1220
- MatDialogActions,
1221
- MatDialogContent,
1222
- ],
1223
- providers: [
1224
- MatDialog,
1225
- MAT_DIALOG_SCROLL_STRATEGY_PROVIDER,
1226
- ],
1227
- entryComponents: [MatDialogContainer],
1228
- },] }
1229
- ];
1230
1320
  return MatDialogModule;
1231
1321
  }());
1322
+ MatDialogModule.decorators = [
1323
+ { type: core.NgModule, args: [{
1324
+ imports: [
1325
+ overlay.OverlayModule,
1326
+ portal.PortalModule,
1327
+ core$1.MatCommonModule,
1328
+ ],
1329
+ exports: [
1330
+ MatDialogContainer,
1331
+ MatDialogClose,
1332
+ MatDialogTitle,
1333
+ MatDialogContent,
1334
+ MatDialogActions,
1335
+ core$1.MatCommonModule,
1336
+ ],
1337
+ declarations: [
1338
+ MatDialogContainer,
1339
+ MatDialogClose,
1340
+ MatDialogTitle,
1341
+ MatDialogActions,
1342
+ MatDialogContent,
1343
+ ],
1344
+ providers: [
1345
+ MatDialog,
1346
+ MAT_DIALOG_SCROLL_STRATEGY_PROVIDER,
1347
+ ],
1348
+ entryComponents: [MatDialogContainer],
1349
+ },] }
1350
+ ];
1232
1351
 
1233
1352
  /**
1234
1353
  * @license
@@ -1257,6 +1376,8 @@
1257
1376
  exports.MatDialogModule = MatDialogModule;
1258
1377
  exports.MatDialogRef = MatDialogRef;
1259
1378
  exports.MatDialogTitle = MatDialogTitle;
1379
+ exports._MatDialogBase = _MatDialogBase;
1380
+ exports._MatDialogContainerBase = _MatDialogContainerBase;
1260
1381
  exports._closeDialogVia = _closeDialogVia;
1261
1382
  exports.matDialogAnimations = matDialogAnimations;
1262
1383
  exports.throwMatDialogContentAlreadyAttachedError = throwMatDialogContentAlreadyAttachedError;