@angular/material 8.0.0-beta.2 → 8.0.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 (599) hide show
  1. package/README.md +2 -2
  2. package/_theming.scss +18 -11
  3. package/autocomplete/typings/autocomplete-trigger.d.ts +13 -2
  4. package/autocomplete/typings/autocomplete.d.ts +3 -2
  5. package/autocomplete/typings/index.metadata.json +1 -1
  6. package/badge/typings/badge.d.ts +8 -2
  7. package/badge/typings/index.metadata.json +1 -1
  8. package/bundles/material-autocomplete.umd.js +196 -68
  9. package/bundles/material-autocomplete.umd.js.map +1 -1
  10. package/bundles/material-autocomplete.umd.min.js +1 -1
  11. package/bundles/material-autocomplete.umd.min.js.map +1 -1
  12. package/bundles/material-badge.umd.js +37 -9
  13. package/bundles/material-badge.umd.js.map +1 -1
  14. package/bundles/material-badge.umd.min.js +1 -1
  15. package/bundles/material-badge.umd.min.js.map +1 -1
  16. package/bundles/material-bottom-sheet.umd.js +72 -25
  17. package/bundles/material-bottom-sheet.umd.js.map +1 -1
  18. package/bundles/material-bottom-sheet.umd.min.js +1 -1
  19. package/bundles/material-bottom-sheet.umd.min.js.map +1 -1
  20. package/bundles/material-button-toggle.umd.js +97 -28
  21. package/bundles/material-button-toggle.umd.js.map +1 -1
  22. package/bundles/material-button-toggle.umd.min.js +1 -1
  23. package/bundles/material-button-toggle.umd.min.js.map +1 -1
  24. package/bundles/material-button.umd.js +11 -9
  25. package/bundles/material-button.umd.js.map +1 -1
  26. package/bundles/material-button.umd.min.js +1 -1
  27. package/bundles/material-button.umd.min.js.map +1 -1
  28. package/bundles/material-card.umd.js +2 -2
  29. package/bundles/material-card.umd.js.map +1 -1
  30. package/bundles/material-card.umd.min.js.map +1 -1
  31. package/bundles/material-checkbox.umd.js +69 -25
  32. package/bundles/material-checkbox.umd.js.map +1 -1
  33. package/bundles/material-checkbox.umd.min.js +1 -1
  34. package/bundles/material-checkbox.umd.min.js.map +1 -1
  35. package/bundles/material-chips.umd.js +229 -82
  36. package/bundles/material-chips.umd.js.map +1 -1
  37. package/bundles/material-chips.umd.min.js +1 -1
  38. package/bundles/material-chips.umd.min.js.map +1 -1
  39. package/bundles/material-core.umd.js +159 -75
  40. package/bundles/material-core.umd.js.map +1 -1
  41. package/bundles/material-core.umd.min.js +2 -1
  42. package/bundles/material-core.umd.min.js.map +1 -1
  43. package/bundles/material-datepicker.umd.js +157 -62
  44. package/bundles/material-datepicker.umd.js.map +1 -1
  45. package/bundles/material-datepicker.umd.min.js +2 -2
  46. package/bundles/material-datepicker.umd.min.js.map +1 -1
  47. package/bundles/material-dialog.umd.js +98 -33
  48. package/bundles/material-dialog.umd.js.map +1 -1
  49. package/bundles/material-dialog.umd.min.js +1 -1
  50. package/bundles/material-dialog.umd.min.js.map +1 -1
  51. package/bundles/material-divider.umd.js +2 -2
  52. package/bundles/material-divider.umd.js.map +1 -1
  53. package/bundles/material-divider.umd.min.js.map +1 -1
  54. package/bundles/material-expansion.umd.js +63 -23
  55. package/bundles/material-expansion.umd.js.map +1 -1
  56. package/bundles/material-expansion.umd.min.js +1 -1
  57. package/bundles/material-expansion.umd.min.js.map +1 -1
  58. package/bundles/material-form-field.umd.js +114 -42
  59. package/bundles/material-form-field.umd.js.map +1 -1
  60. package/bundles/material-form-field.umd.min.js +1 -1
  61. package/bundles/material-form-field.umd.min.js.map +1 -1
  62. package/bundles/material-grid-list.umd.js +42 -17
  63. package/bundles/material-grid-list.umd.js.map +1 -1
  64. package/bundles/material-grid-list.umd.min.js +1 -1
  65. package/bundles/material-grid-list.umd.min.js.map +1 -1
  66. package/bundles/material-icon.umd.js +101 -31
  67. package/bundles/material-icon.umd.js.map +1 -1
  68. package/bundles/material-icon.umd.min.js +1 -1
  69. package/bundles/material-icon.umd.min.js.map +1 -1
  70. package/bundles/material-input.umd.js +29 -16
  71. package/bundles/material-input.umd.js.map +1 -1
  72. package/bundles/material-input.umd.min.js +1 -1
  73. package/bundles/material-input.umd.min.js.map +1 -1
  74. package/bundles/material-list.umd.js +97 -38
  75. package/bundles/material-list.umd.js.map +1 -1
  76. package/bundles/material-list.umd.min.js +2 -2
  77. package/bundles/material-list.umd.min.js.map +1 -1
  78. package/bundles/material-menu.umd.js +308 -167
  79. package/bundles/material-menu.umd.js.map +1 -1
  80. package/bundles/material-menu.umd.min.js +1 -1
  81. package/bundles/material-menu.umd.min.js.map +1 -1
  82. package/bundles/material-paginator.umd.js +28 -12
  83. package/bundles/material-paginator.umd.js.map +1 -1
  84. package/bundles/material-paginator.umd.min.js +1 -1
  85. package/bundles/material-paginator.umd.min.js.map +1 -1
  86. package/bundles/material-progress-bar.umd.js +26 -16
  87. package/bundles/material-progress-bar.umd.js.map +1 -1
  88. package/bundles/material-progress-bar.umd.min.js +1 -1
  89. package/bundles/material-progress-bar.umd.min.js.map +1 -1
  90. package/bundles/material-progress-spinner.umd.js +10 -12
  91. package/bundles/material-progress-spinner.umd.js.map +1 -1
  92. package/bundles/material-progress-spinner.umd.min.js +1 -1
  93. package/bundles/material-progress-spinner.umd.min.js.map +1 -1
  94. package/bundles/material-radio.umd.js +77 -21
  95. package/bundles/material-radio.umd.js.map +1 -1
  96. package/bundles/material-radio.umd.min.js +1 -1
  97. package/bundles/material-radio.umd.min.js.map +1 -1
  98. package/bundles/material-select.umd.js +186 -57
  99. package/bundles/material-select.umd.js.map +1 -1
  100. package/bundles/material-select.umd.min.js +1 -1
  101. package/bundles/material-select.umd.min.js.map +1 -1
  102. package/bundles/material-sidenav.umd.js +323 -145
  103. package/bundles/material-sidenav.umd.js.map +1 -1
  104. package/bundles/material-sidenav.umd.min.js +1 -1
  105. package/bundles/material-sidenav.umd.min.js.map +1 -1
  106. package/bundles/material-slide-toggle.umd.js +49 -31
  107. package/bundles/material-slide-toggle.umd.js.map +1 -1
  108. package/bundles/material-slide-toggle.umd.min.js +1 -1
  109. package/bundles/material-slide-toggle.umd.min.js.map +1 -1
  110. package/bundles/material-slider.umd.js +26 -12
  111. package/bundles/material-slider.umd.js.map +1 -1
  112. package/bundles/material-slider.umd.min.js +1 -1
  113. package/bundles/material-slider.umd.min.js.map +1 -1
  114. package/bundles/material-snack-bar.umd.js +55 -23
  115. package/bundles/material-snack-bar.umd.js.map +1 -1
  116. package/bundles/material-snack-bar.umd.min.js +1 -1
  117. package/bundles/material-snack-bar.umd.min.js.map +1 -1
  118. package/bundles/material-sort.umd.js +20 -17
  119. package/bundles/material-sort.umd.js.map +1 -1
  120. package/bundles/material-sort.umd.min.js +1 -1
  121. package/bundles/material-sort.umd.min.js.map +1 -1
  122. package/bundles/material-stepper.umd.js +50 -16
  123. package/bundles/material-stepper.umd.js.map +1 -1
  124. package/bundles/material-stepper.umd.min.js +1 -1
  125. package/bundles/material-stepper.umd.min.js.map +1 -1
  126. package/bundles/material-table.umd.js +116 -26
  127. package/bundles/material-table.umd.js.map +1 -1
  128. package/bundles/material-table.umd.min.js +1 -1
  129. package/bundles/material-table.umd.min.js.map +1 -1
  130. package/bundles/material-tabs.umd.js +162 -77
  131. package/bundles/material-tabs.umd.js.map +1 -1
  132. package/bundles/material-tabs.umd.min.js +2 -2
  133. package/bundles/material-tabs.umd.min.js.map +1 -1
  134. package/bundles/material-toolbar.umd.js +22 -9
  135. package/bundles/material-toolbar.umd.js.map +1 -1
  136. package/bundles/material-toolbar.umd.min.js +1 -1
  137. package/bundles/material-toolbar.umd.min.js.map +1 -1
  138. package/bundles/material-tooltip.umd.js +79 -25
  139. package/bundles/material-tooltip.umd.js.map +1 -1
  140. package/bundles/material-tooltip.umd.min.js.map +1 -1
  141. package/bundles/material-tree.umd.js +49 -28
  142. package/bundles/material-tree.umd.js.map +1 -1
  143. package/bundles/material-tree.umd.min.js +1 -1
  144. package/bundles/material-tree.umd.min.js.map +1 -1
  145. package/bundles/material.umd.js +3157 -1278
  146. package/bundles/material.umd.js.map +1 -1
  147. package/bundles/material.umd.min.js +19 -19
  148. package/bundles/material.umd.min.js.map +1 -1
  149. package/button/typings/button.d.ts +4 -3
  150. package/button/typings/index.metadata.json +1 -1
  151. package/button-toggle/typings/button-toggle.d.ts +7 -3
  152. package/button-toggle/typings/index.metadata.json +1 -1
  153. package/checkbox/typings/checkbox-module.d.ts +3 -0
  154. package/checkbox/typings/checkbox.d.ts +3 -2
  155. package/checkbox/typings/index.metadata.json +1 -1
  156. package/chips/typings/chip-list.d.ts +9 -2
  157. package/chips/typings/chip.d.ts +3 -2
  158. package/chips/typings/index.metadata.json +1 -1
  159. package/core/typings/index.metadata.json +1 -1
  160. package/core/typings/option/optgroup.d.ts +3 -2
  161. package/core/typings/public-api.d.ts +1 -0
  162. package/core/typings/ripple/ripple-renderer.d.ts +4 -4
  163. package/{typings/esm5 → core/typings}/version.d.ts +0 -0
  164. package/datepicker/typings/datepicker.d.ts +3 -2
  165. package/datepicker/typings/index.d.ts +0 -1
  166. package/datepicker/typings/index.metadata.json +1 -1
  167. package/datepicker/typings/public-api.d.ts +1 -0
  168. package/esm2015/autocomplete.js +187 -68
  169. package/esm2015/autocomplete.js.map +1 -1
  170. package/esm2015/badge.js +31 -10
  171. package/esm2015/badge.js.map +1 -1
  172. package/esm2015/bottom-sheet.js +75 -28
  173. package/esm2015/bottom-sheet.js.map +1 -1
  174. package/esm2015/button-toggle.js +89 -27
  175. package/esm2015/button-toggle.js.map +1 -1
  176. package/esm2015/button.js +13 -9
  177. package/esm2015/button.js.map +1 -1
  178. package/esm2015/card.js +4 -4
  179. package/esm2015/card.js.map +1 -1
  180. package/esm2015/checkbox.js +68 -25
  181. package/esm2015/checkbox.js.map +1 -1
  182. package/esm2015/chips.js +219 -79
  183. package/esm2015/chips.js.map +1 -1
  184. package/esm2015/core.js +160 -75
  185. package/esm2015/core.js.map +1 -1
  186. package/esm2015/datepicker.js +157 -62
  187. package/esm2015/datepicker.js.map +1 -1
  188. package/esm2015/dialog.js +99 -34
  189. package/esm2015/dialog.js.map +1 -1
  190. package/esm2015/divider.js +4 -4
  191. package/esm2015/divider.js.map +1 -1
  192. package/esm2015/expansion.js +65 -25
  193. package/esm2015/expansion.js.map +1 -1
  194. package/esm2015/form-field.js +108 -42
  195. package/esm2015/form-field.js.map +1 -1
  196. package/esm2015/grid-list.js +44 -19
  197. package/esm2015/grid-list.js.map +1 -1
  198. package/esm2015/icon.js +104 -32
  199. package/esm2015/icon.js.map +1 -1
  200. package/esm2015/input.js +31 -16
  201. package/esm2015/input.js.map +1 -1
  202. package/esm2015/list.js +96 -29
  203. package/esm2015/list.js.map +1 -1
  204. package/esm2015/material.js +28 -41
  205. package/esm2015/material.js.map +1 -1
  206. package/esm2015/menu.js +254 -131
  207. package/esm2015/menu.js.map +1 -1
  208. package/esm2015/paginator.js +31 -13
  209. package/esm2015/paginator.js.map +1 -1
  210. package/esm2015/progress-bar.js +28 -14
  211. package/esm2015/progress-bar.js.map +1 -1
  212. package/esm2015/progress-spinner.js +12 -12
  213. package/esm2015/progress-spinner.js.map +1 -1
  214. package/esm2015/radio.js +75 -22
  215. package/esm2015/radio.js.map +1 -1
  216. package/esm2015/select.js +188 -57
  217. package/esm2015/select.js.map +1 -1
  218. package/esm2015/sidenav.js +285 -136
  219. package/esm2015/sidenav.js.map +1 -1
  220. package/esm2015/slide-toggle.js +47 -29
  221. package/esm2015/slide-toggle.js.map +1 -1
  222. package/esm2015/slider.js +28 -12
  223. package/esm2015/slider.js.map +1 -1
  224. package/esm2015/snack-bar.js +58 -26
  225. package/esm2015/snack-bar.js.map +1 -1
  226. package/esm2015/sort.js +23 -16
  227. package/esm2015/sort.js.map +1 -1
  228. package/esm2015/stepper.js +47 -18
  229. package/esm2015/stepper.js.map +1 -1
  230. package/esm2015/table.js +120 -27
  231. package/esm2015/table.js.map +1 -1
  232. package/esm2015/tabs.js +160 -63
  233. package/esm2015/tabs.js.map +1 -1
  234. package/esm2015/toolbar.js +24 -9
  235. package/esm2015/toolbar.js.map +1 -1
  236. package/esm2015/tooltip.js +82 -28
  237. package/esm2015/tooltip.js.map +1 -1
  238. package/esm2015/tree.js +54 -31
  239. package/esm2015/tree.js.map +1 -1
  240. package/esm5/autocomplete.es5.js +199 -69
  241. package/esm5/autocomplete.es5.js.map +1 -1
  242. package/esm5/badge.es5.js +41 -11
  243. package/esm5/badge.es5.js.map +1 -1
  244. package/esm5/bottom-sheet.es5.js +75 -28
  245. package/esm5/bottom-sheet.es5.js.map +1 -1
  246. package/esm5/button-toggle.es5.js +100 -29
  247. package/esm5/button-toggle.es5.js.map +1 -1
  248. package/esm5/button.es5.js +14 -10
  249. package/esm5/button.es5.js.map +1 -1
  250. package/esm5/card.es5.js +4 -4
  251. package/esm5/card.es5.js.map +1 -1
  252. package/esm5/checkbox.es5.js +71 -26
  253. package/esm5/checkbox.es5.js.map +1 -1
  254. package/esm5/chips.es5.js +233 -82
  255. package/esm5/chips.es5.js.map +1 -1
  256. package/esm5/core.es5.js +162 -77
  257. package/esm5/core.es5.js.map +1 -1
  258. package/esm5/datepicker.es5.js +158 -63
  259. package/esm5/datepicker.es5.js.map +1 -1
  260. package/esm5/dialog.es5.js +100 -35
  261. package/esm5/dialog.es5.js.map +1 -1
  262. package/esm5/divider.es5.js +4 -4
  263. package/esm5/divider.es5.js.map +1 -1
  264. package/esm5/expansion.es5.js +65 -25
  265. package/esm5/expansion.es5.js.map +1 -1
  266. package/esm5/form-field.es5.js +117 -43
  267. package/esm5/form-field.es5.js.map +1 -1
  268. package/esm5/grid-list.es5.js +44 -19
  269. package/esm5/grid-list.es5.js.map +1 -1
  270. package/esm5/icon.es5.js +105 -33
  271. package/esm5/icon.es5.js.map +1 -1
  272. package/esm5/input.es5.js +32 -17
  273. package/esm5/input.es5.js.map +1 -1
  274. package/esm5/list.es5.js +100 -33
  275. package/esm5/list.es5.js.map +1 -1
  276. package/esm5/material.es5.js +28 -41
  277. package/esm5/material.es5.js.map +1 -1
  278. package/esm5/menu.es5.js +301 -161
  279. package/esm5/menu.es5.js.map +1 -1
  280. package/esm5/paginator.es5.js +32 -14
  281. package/esm5/paginator.es5.js.map +1 -1
  282. package/esm5/progress-bar.es5.js +29 -17
  283. package/esm5/progress-bar.es5.js.map +1 -1
  284. package/esm5/progress-spinner.es5.js +13 -13
  285. package/esm5/progress-spinner.es5.js.map +1 -1
  286. package/esm5/radio.es5.js +81 -23
  287. package/esm5/radio.es5.js.map +1 -1
  288. package/esm5/select.es5.js +189 -58
  289. package/esm5/select.es5.js.map +1 -1
  290. package/esm5/sidenav.es5.js +326 -148
  291. package/esm5/sidenav.es5.js.map +1 -1
  292. package/esm5/slide-toggle.es5.js +48 -29
  293. package/esm5/slide-toggle.es5.js.map +1 -1
  294. package/esm5/slider.es5.js +29 -13
  295. package/esm5/slider.es5.js.map +1 -1
  296. package/esm5/snack-bar.es5.js +58 -26
  297. package/esm5/snack-bar.es5.js.map +1 -1
  298. package/esm5/sort.es5.js +25 -18
  299. package/esm5/sort.es5.js.map +1 -1
  300. package/esm5/stepper.es5.js +53 -19
  301. package/esm5/stepper.es5.js.map +1 -1
  302. package/esm5/table.es5.js +119 -30
  303. package/esm5/table.es5.js.map +1 -1
  304. package/esm5/tabs.es5.js +165 -68
  305. package/esm5/tabs.es5.js.map +1 -1
  306. package/esm5/toolbar.es5.js +25 -10
  307. package/esm5/toolbar.es5.js.map +1 -1
  308. package/esm5/tooltip.es5.js +81 -27
  309. package/esm5/tooltip.es5.js.map +1 -1
  310. package/esm5/tree.es5.js +52 -29
  311. package/esm5/tree.es5.js.map +1 -1
  312. package/form-field/typings/form-field.d.ts +9 -3
  313. package/form-field/typings/index.metadata.json +1 -1
  314. package/grid-list/typings/index.d.ts +1 -1
  315. package/grid-list/typings/index.metadata.json +1 -1
  316. package/icon/typings/icon.d.ts +3 -2
  317. package/icon/typings/index.metadata.json +1 -1
  318. package/input/typings/index.metadata.json +1 -1
  319. package/input/typings/input.d.ts +3 -2
  320. package/list/typings/index.metadata.json +1 -1
  321. package/list/typings/list.d.ts +5 -4
  322. package/list/typings/selection-list.d.ts +7 -4
  323. package/material.d.ts +1 -1
  324. package/material.metadata.json +3 -3
  325. package/menu/typings/index.d.ts +2 -4
  326. package/menu/typings/index.metadata.json +1 -1
  327. package/menu/typings/menu-item.d.ts +3 -2
  328. package/menu/typings/menu-module.d.ts +6 -0
  329. package/menu/typings/menu-trigger.d.ts +1 -3
  330. package/menu/typings/menu.d.ts +158 -5
  331. package/menu/typings/public-api.d.ts +5 -2
  332. package/package.json +11 -11
  333. package/paginator/typings/index.metadata.json +1 -1
  334. package/paginator/typings/paginator.d.ts +3 -2
  335. package/prebuilt-themes/deeppurple-amber.css +1 -1
  336. package/prebuilt-themes/indigo-pink.css +1 -1
  337. package/prebuilt-themes/pink-bluegrey.css +1 -1
  338. package/prebuilt-themes/purple-green.css +1 -1
  339. package/progress-bar/typings/index.metadata.json +1 -1
  340. package/progress-bar/typings/progress-bar.d.ts +8 -7
  341. package/progress-spinner/typings/index.metadata.json +1 -1
  342. package/progress-spinner/typings/progress-spinner.d.ts +5 -4
  343. package/radio/typings/index.metadata.json +1 -1
  344. package/radio/typings/radio.d.ts +10 -4
  345. package/schematics/ng-add/fonts/material-fonts.js.map +1 -1
  346. package/schematics/ng-add/fonts/project-index-html.d.ts +1 -1
  347. package/schematics/ng-add/fonts/project-index-html.js.map +1 -1
  348. package/schematics/ng-add/gestures/hammerjs-import.js.map +1 -1
  349. package/schematics/ng-add/index.js.map +1 -1
  350. package/schematics/ng-add/package-config.js.map +1 -1
  351. package/schematics/ng-add/schema.js.map +1 -1
  352. package/schematics/ng-add/setup-project.js.map +1 -1
  353. package/schematics/ng-add/theming/create-custom-theme.js.map +1 -1
  354. package/schematics/ng-add/theming/theming.js +1 -1
  355. package/schematics/ng-add/theming/theming.js.map +1 -1
  356. package/schematics/ng-add/version-names.d.ts +1 -1
  357. package/schematics/ng-add/version-names.js +1 -1
  358. package/schematics/ng-add/version-names.js.map +1 -1
  359. package/schematics/ng-generate/address-form/index.js.map +1 -1
  360. package/schematics/ng-generate/address-form/schema.js.map +1 -1
  361. package/schematics/ng-generate/dashboard/index.js.map +1 -1
  362. package/schematics/ng-generate/dashboard/schema.js.map +1 -1
  363. package/schematics/ng-generate/nav/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html +2 -2
  364. package/schematics/ng-generate/nav/index.js.map +1 -1
  365. package/schematics/ng-generate/nav/schema.js.map +1 -1
  366. package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__-datasource.ts +3 -4
  367. package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html +2 -2
  368. package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts +11 -4
  369. package/schematics/ng-generate/table/index.js.map +1 -1
  370. package/schematics/ng-generate/table/schema.js.map +1 -1
  371. package/schematics/ng-generate/tree/files/__path__/__name@dasherize@if-flat__/example-data.ts +1 -1
  372. package/schematics/ng-generate/tree/index.js.map +1 -1
  373. package/schematics/ng-generate/tree/schema.js.map +1 -1
  374. package/schematics/ng-update/data/attribute-selectors.js.map +1 -1
  375. package/schematics/ng-update/data/class-names.js +1 -1
  376. package/schematics/ng-update/data/class-names.js.map +1 -1
  377. package/schematics/ng-update/data/constructor-checks.js +22 -14
  378. package/schematics/ng-update/data/constructor-checks.js.map +1 -1
  379. package/schematics/ng-update/data/css-selectors.js +2 -2
  380. package/schematics/ng-update/data/css-selectors.js.map +1 -1
  381. package/schematics/ng-update/data/element-selectors.js +1 -1
  382. package/schematics/ng-update/data/element-selectors.js.map +1 -1
  383. package/schematics/ng-update/data/index.js.map +1 -1
  384. package/schematics/ng-update/data/input-names.js +7 -7
  385. package/schematics/ng-update/data/input-names.js.map +1 -1
  386. package/schematics/ng-update/data/method-call-checks.js.map +1 -1
  387. package/schematics/ng-update/data/output-names.js +4 -4
  388. package/schematics/ng-update/data/output-names.js.map +1 -1
  389. package/schematics/ng-update/data/property-names.js +11 -11
  390. package/schematics/ng-update/data/property-names.js.map +1 -1
  391. package/schematics/ng-update/index.js.map +1 -1
  392. package/schematics/ng-update/typescript/module-specifiers.js.map +1 -1
  393. package/schematics/ng-update/upgrade-data.js.map +1 -1
  394. package/schematics/ng-update/upgrade-rules/misc-checks/checkClassInheritanceMiscRule.js.map +1 -1
  395. package/schematics/ng-update/upgrade-rules/misc-checks/checkClassNamesMiscRule.js.map +1 -1
  396. package/schematics/ng-update/upgrade-rules/misc-checks/checkImportsMiscRule.d.ts +1 -1
  397. package/schematics/ng-update/upgrade-rules/misc-checks/checkImportsMiscRule.js +1 -1
  398. package/schematics/ng-update/upgrade-rules/misc-checks/checkImportsMiscRule.js.map +1 -1
  399. package/schematics/ng-update/upgrade-rules/misc-checks/checkPropertyNamesMiscRule.js.map +1 -1
  400. package/schematics/ng-update/upgrade-rules/misc-checks/checkTemplateMiscRule.js.map +1 -1
  401. package/schematics/ng-update/upgrade-rules/misc-ripples-v7/ripple-speed-factor.js.map +1 -1
  402. package/schematics/ng-update/upgrade-rules/misc-ripples-v7/rippleSpeedFactorAssignmentRule.js.map +1 -1
  403. package/schematics/ng-update/upgrade-rules/misc-ripples-v7/rippleSpeedFactorTemplateRule.js.map +1 -1
  404. package/schematics/ng-update/upgrade-rules/package-imports-v8/updateAngularMaterialImportsRule.js +21 -10
  405. package/schematics/ng-update/upgrade-rules/package-imports-v8/updateAngularMaterialImportsRule.js.map +1 -1
  406. package/select/typings/index.metadata.json +1 -1
  407. package/select/typings/select.d.ts +3 -2
  408. package/sidenav/typings/drawer.d.ts +8 -11
  409. package/sidenav/typings/index.metadata.json +1 -1
  410. package/slide-toggle/typings/index.metadata.json +1 -1
  411. package/slide-toggle/typings/slide-toggle.d.ts +6 -11
  412. package/slider/typings/index.metadata.json +1 -1
  413. package/slider/typings/slider.d.ts +3 -2
  414. package/sort/typings/index.metadata.json +1 -1
  415. package/sort/typings/sort-header.d.ts +2 -2
  416. package/sort/typings/sort.d.ts +3 -2
  417. package/stepper/typings/index.metadata.json +1 -1
  418. package/stepper/typings/step-header.d.ts +2 -0
  419. package/table/typings/index.metadata.json +1 -1
  420. package/table/typings/public-api.d.ts +1 -0
  421. package/table/typings/text-column.d.ts +19 -0
  422. package/tabs/typings/index.d.ts +1 -5
  423. package/tabs/typings/index.metadata.json +1 -1
  424. package/tabs/typings/tab-group.d.ts +3 -2
  425. package/tabs/typings/tab-header.d.ts +3 -2
  426. package/tabs/typings/tab-label-wrapper.d.ts +3 -2
  427. package/tabs/typings/tab-nav-bar/tab-nav-bar.d.ts +5 -4
  428. package/tabs/typings/tab.d.ts +3 -2
  429. package/toolbar/typings/index.metadata.json +1 -1
  430. package/toolbar/typings/toolbar.d.ts +3 -2
  431. package/tree/typings/data-source/flat-data-source.d.ts +3 -3
  432. package/tree/typings/index.metadata.json +1 -1
  433. package/tree/typings/node.d.ts +3 -2
  434. package/typings/autocomplete/autocomplete-trigger.d.ts +13 -2
  435. package/typings/autocomplete/autocomplete.d.ts +3 -2
  436. package/typings/autocomplete/index.metadata.json +1 -1
  437. package/typings/badge/badge.d.ts +8 -2
  438. package/typings/badge/index.metadata.json +1 -1
  439. package/typings/button/button.d.ts +4 -3
  440. package/typings/button/index.metadata.json +1 -1
  441. package/typings/button-toggle/button-toggle.d.ts +7 -3
  442. package/typings/button-toggle/index.metadata.json +1 -1
  443. package/typings/checkbox/checkbox-module.d.ts +3 -0
  444. package/typings/checkbox/checkbox.d.ts +3 -2
  445. package/typings/checkbox/index.metadata.json +1 -1
  446. package/typings/chips/chip-list.d.ts +9 -2
  447. package/typings/chips/chip.d.ts +3 -2
  448. package/typings/chips/index.metadata.json +1 -1
  449. package/typings/core/index.metadata.json +1 -1
  450. package/typings/core/option/optgroup.d.ts +3 -2
  451. package/typings/core/public-api.d.ts +1 -0
  452. package/typings/core/ripple/ripple-renderer.d.ts +4 -4
  453. package/typings/{version.d.ts → core/version.d.ts} +0 -0
  454. package/typings/datepicker/datepicker.d.ts +3 -2
  455. package/typings/datepicker/index.d.ts +0 -1
  456. package/typings/datepicker/index.metadata.json +1 -1
  457. package/typings/datepicker/public-api.d.ts +1 -0
  458. package/typings/esm5/autocomplete/autocomplete-trigger.d.ts +13 -2
  459. package/typings/esm5/autocomplete/autocomplete.d.ts +3 -2
  460. package/typings/esm5/autocomplete/index.metadata.json +1 -1
  461. package/typings/esm5/badge/badge.d.ts +8 -2
  462. package/typings/esm5/badge/index.metadata.json +1 -1
  463. package/typings/esm5/button/button.d.ts +4 -3
  464. package/typings/esm5/button/index.metadata.json +1 -1
  465. package/typings/esm5/button-toggle/button-toggle.d.ts +7 -3
  466. package/typings/esm5/button-toggle/index.metadata.json +1 -1
  467. package/typings/esm5/checkbox/checkbox-module.d.ts +3 -0
  468. package/typings/esm5/checkbox/checkbox.d.ts +3 -2
  469. package/typings/esm5/checkbox/index.metadata.json +1 -1
  470. package/typings/esm5/chips/chip-list.d.ts +9 -2
  471. package/typings/esm5/chips/chip.d.ts +3 -2
  472. package/typings/esm5/chips/index.metadata.json +1 -1
  473. package/typings/esm5/core/index.metadata.json +1 -1
  474. package/typings/esm5/core/option/optgroup.d.ts +3 -2
  475. package/typings/esm5/core/public-api.d.ts +1 -0
  476. package/typings/esm5/core/ripple/ripple-renderer.d.ts +4 -4
  477. package/typings/esm5/core/version.d.ts +10 -0
  478. package/typings/esm5/datepicker/datepicker.d.ts +3 -2
  479. package/typings/esm5/datepicker/index.d.ts +0 -1
  480. package/typings/esm5/datepicker/index.metadata.json +1 -1
  481. package/typings/esm5/datepicker/public-api.d.ts +1 -0
  482. package/typings/esm5/form-field/form-field.d.ts +9 -3
  483. package/typings/esm5/form-field/index.metadata.json +1 -1
  484. package/typings/esm5/grid-list/index.d.ts +1 -1
  485. package/typings/esm5/grid-list/index.metadata.json +1 -1
  486. package/typings/esm5/icon/icon.d.ts +3 -2
  487. package/typings/esm5/icon/index.metadata.json +1 -1
  488. package/typings/esm5/index.metadata.json +1 -1
  489. package/typings/esm5/input/index.metadata.json +1 -1
  490. package/typings/esm5/input/input.d.ts +3 -2
  491. package/typings/esm5/list/index.metadata.json +1 -1
  492. package/typings/esm5/list/list.d.ts +5 -4
  493. package/typings/esm5/list/selection-list.d.ts +7 -4
  494. package/typings/esm5/menu/index.d.ts +2 -4
  495. package/typings/esm5/menu/index.metadata.json +1 -1
  496. package/typings/esm5/menu/menu-item.d.ts +3 -2
  497. package/typings/esm5/menu/menu-module.d.ts +6 -0
  498. package/typings/esm5/menu/menu-trigger.d.ts +1 -3
  499. package/typings/esm5/menu/menu.d.ts +158 -5
  500. package/typings/esm5/menu/public-api.d.ts +5 -2
  501. package/typings/esm5/paginator/index.metadata.json +1 -1
  502. package/typings/esm5/paginator/paginator.d.ts +3 -2
  503. package/typings/esm5/progress-bar/index.metadata.json +1 -1
  504. package/typings/esm5/progress-bar/progress-bar.d.ts +8 -7
  505. package/typings/esm5/progress-spinner/index.metadata.json +1 -1
  506. package/typings/esm5/progress-spinner/progress-spinner.d.ts +5 -4
  507. package/typings/esm5/public-api.d.ts +0 -1
  508. package/typings/esm5/radio/index.metadata.json +1 -1
  509. package/typings/esm5/radio/radio.d.ts +10 -4
  510. package/typings/esm5/select/index.metadata.json +1 -1
  511. package/typings/esm5/select/select.d.ts +3 -2
  512. package/typings/esm5/sidenav/drawer.d.ts +8 -11
  513. package/typings/esm5/sidenav/index.metadata.json +1 -1
  514. package/typings/esm5/slide-toggle/index.metadata.json +1 -1
  515. package/typings/esm5/slide-toggle/slide-toggle.d.ts +6 -11
  516. package/typings/esm5/slider/index.metadata.json +1 -1
  517. package/typings/esm5/slider/slider.d.ts +3 -2
  518. package/typings/esm5/sort/index.metadata.json +1 -1
  519. package/typings/esm5/sort/sort-header.d.ts +2 -2
  520. package/typings/esm5/sort/sort.d.ts +3 -2
  521. package/typings/esm5/stepper/index.metadata.json +1 -1
  522. package/typings/esm5/stepper/step-header.d.ts +2 -0
  523. package/typings/esm5/table/index.metadata.json +1 -1
  524. package/typings/esm5/table/public-api.d.ts +1 -0
  525. package/typings/esm5/table/text-column.d.ts +19 -0
  526. package/typings/esm5/tabs/index.d.ts +1 -5
  527. package/typings/esm5/tabs/index.metadata.json +1 -1
  528. package/typings/esm5/tabs/tab-group.d.ts +3 -2
  529. package/typings/esm5/tabs/tab-header.d.ts +3 -2
  530. package/typings/esm5/tabs/tab-label-wrapper.d.ts +3 -2
  531. package/typings/esm5/tabs/tab-nav-bar/tab-nav-bar.d.ts +5 -4
  532. package/typings/esm5/tabs/tab.d.ts +3 -2
  533. package/typings/esm5/toolbar/index.metadata.json +1 -1
  534. package/typings/esm5/toolbar/toolbar.d.ts +3 -2
  535. package/typings/esm5/tree/data-source/flat-data-source.d.ts +3 -3
  536. package/typings/esm5/tree/index.metadata.json +1 -1
  537. package/typings/esm5/tree/node.d.ts +3 -2
  538. package/typings/form-field/form-field.d.ts +9 -3
  539. package/typings/form-field/index.metadata.json +1 -1
  540. package/typings/grid-list/index.d.ts +1 -1
  541. package/typings/grid-list/index.metadata.json +1 -1
  542. package/typings/icon/icon.d.ts +3 -2
  543. package/typings/icon/index.metadata.json +1 -1
  544. package/typings/index.metadata.json +1 -1
  545. package/typings/input/index.metadata.json +1 -1
  546. package/typings/input/input.d.ts +3 -2
  547. package/typings/list/index.metadata.json +1 -1
  548. package/typings/list/list.d.ts +5 -4
  549. package/typings/list/selection-list.d.ts +7 -4
  550. package/typings/menu/index.d.ts +2 -4
  551. package/typings/menu/index.metadata.json +1 -1
  552. package/typings/menu/menu-item.d.ts +3 -2
  553. package/typings/menu/menu-module.d.ts +6 -0
  554. package/typings/menu/menu-trigger.d.ts +1 -3
  555. package/typings/menu/menu.d.ts +158 -5
  556. package/typings/menu/public-api.d.ts +5 -2
  557. package/typings/paginator/index.metadata.json +1 -1
  558. package/typings/paginator/paginator.d.ts +3 -2
  559. package/typings/progress-bar/index.metadata.json +1 -1
  560. package/typings/progress-bar/progress-bar.d.ts +8 -7
  561. package/typings/progress-spinner/index.metadata.json +1 -1
  562. package/typings/progress-spinner/progress-spinner.d.ts +5 -4
  563. package/typings/public-api.d.ts +0 -1
  564. package/typings/radio/index.metadata.json +1 -1
  565. package/typings/radio/radio.d.ts +10 -4
  566. package/typings/schematics/ng-add/fonts/project-index-html.d.ts +1 -1
  567. package/typings/schematics/ng-add/version-names.d.ts +1 -1
  568. package/typings/schematics/ng-update/upgrade-rules/misc-checks/checkImportsMiscRule.d.ts +1 -1
  569. package/typings/select/index.metadata.json +1 -1
  570. package/typings/select/select.d.ts +3 -2
  571. package/typings/sidenav/drawer.d.ts +8 -11
  572. package/typings/sidenav/index.metadata.json +1 -1
  573. package/typings/slide-toggle/index.metadata.json +1 -1
  574. package/typings/slide-toggle/slide-toggle.d.ts +6 -11
  575. package/typings/slider/index.metadata.json +1 -1
  576. package/typings/slider/slider.d.ts +3 -2
  577. package/typings/sort/index.metadata.json +1 -1
  578. package/typings/sort/sort-header.d.ts +2 -2
  579. package/typings/sort/sort.d.ts +3 -2
  580. package/typings/stepper/index.metadata.json +1 -1
  581. package/typings/stepper/step-header.d.ts +2 -0
  582. package/typings/table/index.metadata.json +1 -1
  583. package/typings/table/public-api.d.ts +1 -0
  584. package/typings/table/text-column.d.ts +19 -0
  585. package/typings/tabs/index.d.ts +1 -5
  586. package/typings/tabs/index.metadata.json +1 -1
  587. package/typings/tabs/tab-group.d.ts +3 -2
  588. package/typings/tabs/tab-header.d.ts +3 -2
  589. package/typings/tabs/tab-label-wrapper.d.ts +3 -2
  590. package/typings/tabs/tab-nav-bar/tab-nav-bar.d.ts +5 -4
  591. package/typings/tabs/tab.d.ts +3 -2
  592. package/typings/toolbar/index.metadata.json +1 -1
  593. package/typings/toolbar/toolbar.d.ts +3 -2
  594. package/typings/tree/data-source/flat-data-source.d.ts +3 -3
  595. package/typings/tree/index.metadata.json +1 -1
  596. package/typings/tree/node.d.ts +3 -2
  597. package/menu/typings/menu-directive.d.ts +0 -159
  598. package/typings/esm5/menu/menu-directive.d.ts +0 -159
  599. package/typings/menu/menu-directive.d.ts +0 -159
@@ -5,7 +5,7 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- import { InjectionToken, Component, ViewChild, ElementRef, ChangeDetectionStrategy, ViewEncapsulation, ChangeDetectorRef, EventEmitter, Inject, Optional, NgModule, Injectable, Injector, SkipSelf, TemplateRef, defineInjectable, inject, INJECTOR } from '@angular/core';
8
+ import { InjectionToken, Component, ViewChild, ElementRef, ChangeDetectionStrategy, ViewEncapsulation, ChangeDetectorRef, EventEmitter, Inject, Optional, NgModule, Injectable, Injector, SkipSelf, TemplateRef, ɵɵdefineInjectable, ɵɵinject, INJECTOR } from '@angular/core';
9
9
  import { animate, state, style, transition, trigger } from '@angular/animations';
10
10
  import { AnimationCurves, AnimationDurations, MatCommonModule } from '@angular/material/core';
11
11
  import { BasePortalOutlet, CdkPortalOutlet, PortalModule, ComponentPortal, PortalInjector, TemplatePortal } from '@angular/cdk/portal';
@@ -20,7 +20,7 @@ import { Directionality } from '@angular/cdk/bidi';
20
20
 
21
21
  /**
22
22
  * @fileoverview added by tsickle
23
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
23
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
24
24
  */
25
25
  /**
26
26
  * Injection token that can be used to access the data that was passed in to a bottom sheet.
@@ -72,7 +72,7 @@ class MatBottomSheetConfig {
72
72
 
73
73
  /**
74
74
  * @fileoverview added by tsickle
75
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
75
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
76
76
  */
77
77
  /**
78
78
  * Animations used by the Material bottom sheet.
@@ -92,7 +92,7 @@ const matBottomSheetAnimations = {
92
92
 
93
93
  /**
94
94
  * @fileoverview added by tsickle
95
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
95
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
96
96
  */
97
97
  // TODO(crisbeto): consolidate some logic between this, MatDialog and MatSnackBar
98
98
  /**
@@ -129,11 +129,14 @@ class MatBottomSheetContainer extends BasePortalOutlet {
129
129
  this._document = document;
130
130
  this._breakpointSubscription = breakpointObserver
131
131
  .observe([Breakpoints.Medium, Breakpoints.Large, Breakpoints.XLarge])
132
- .subscribe(() => {
132
+ .subscribe((/**
133
+ * @return {?}
134
+ */
135
+ () => {
133
136
  this._toggleClass('mat-bottom-sheet-container-medium', breakpointObserver.isMatched(Breakpoints.Medium));
134
137
  this._toggleClass('mat-bottom-sheet-container-large', breakpointObserver.isMatched(Breakpoints.Large));
135
138
  this._toggleClass('mat-bottom-sheet-container-xlarge', breakpointObserver.isMatched(Breakpoints.XLarge));
136
- });
139
+ }));
137
140
  }
138
141
  /**
139
142
  * Attach a component portal as content to this bottom sheet container.
@@ -237,7 +240,11 @@ class MatBottomSheetContainer extends BasePortalOutlet {
237
240
  const panelClass = this.bottomSheetConfig.panelClass;
238
241
  if (Array.isArray(panelClass)) {
239
242
  // Note that we can't use a spread here, because IE doesn't support multiple arguments.
240
- panelClass.forEach(cssClass => element.classList.add(cssClass));
243
+ panelClass.forEach((/**
244
+ * @param {?} cssClass
245
+ * @return {?}
246
+ */
247
+ cssClass => element.classList.add(cssClass)));
241
248
  }
242
249
  else if (panelClass) {
243
250
  element.classList.add(panelClass);
@@ -281,7 +288,10 @@ class MatBottomSheetContainer extends BasePortalOutlet {
281
288
  this._elementFocusedBeforeOpened = (/** @type {?} */ (this._document.activeElement));
282
289
  // The `focus` method isn't available during server-side rendering.
283
290
  if (this._elementRef.nativeElement.focus) {
284
- Promise.resolve().then(() => this._elementRef.nativeElement.focus());
291
+ Promise.resolve().then((/**
292
+ * @return {?}
293
+ */
294
+ () => this._elementRef.nativeElement.focus()));
285
295
  }
286
296
  }
287
297
  }
@@ -319,7 +329,7 @@ MatBottomSheetContainer.propDecorators = {
319
329
 
320
330
  /**
321
331
  * @fileoverview added by tsickle
322
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
332
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
323
333
  */
324
334
  class MatBottomSheetModule {
325
335
  }
@@ -339,7 +349,7 @@ MatBottomSheetModule.decorators = [
339
349
 
340
350
  /**
341
351
  * @fileoverview added by tsickle
342
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
352
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
343
353
  */
344
354
  /**
345
355
  * Reference to a bottom sheet dispatched from the bottom sheet service.
@@ -366,26 +376,50 @@ class MatBottomSheetRef {
366
376
  this.containerInstance = containerInstance;
367
377
  this.disableClose = containerInstance.bottomSheetConfig.disableClose;
368
378
  // Emit when opening animation completes
369
- containerInstance._animationStateChanged.pipe(filter(event => event.phaseName === 'done' && event.toState === 'visible'), take(1))
370
- .subscribe(() => {
379
+ containerInstance._animationStateChanged.pipe(filter((/**
380
+ * @param {?} event
381
+ * @return {?}
382
+ */
383
+ event => event.phaseName === 'done' && event.toState === 'visible')), take(1))
384
+ .subscribe((/**
385
+ * @return {?}
386
+ */
387
+ () => {
371
388
  this._afterOpened.next();
372
389
  this._afterOpened.complete();
373
- });
390
+ }));
374
391
  // Dispose overlay when closing animation is complete
375
392
  containerInstance._animationStateChanged
376
- .pipe(filter(event => event.phaseName === 'done' && event.toState === 'hidden'), take(1))
377
- .subscribe(() => {
393
+ .pipe(filter((/**
394
+ * @param {?} event
395
+ * @return {?}
396
+ */
397
+ event => event.phaseName === 'done' && event.toState === 'hidden')), take(1))
398
+ .subscribe((/**
399
+ * @return {?}
400
+ */
401
+ () => {
378
402
  _overlayRef.dispose();
379
- });
380
- _overlayRef.detachments().pipe(take(1)).subscribe(() => {
403
+ }));
404
+ _overlayRef.detachments().pipe(take(1)).subscribe((/**
405
+ * @return {?}
406
+ */
407
+ () => {
381
408
  this._afterDismissed.next(this._result);
382
409
  this._afterDismissed.complete();
383
- });
384
- merge(_overlayRef.backdropClick(), _overlayRef.keydownEvents().pipe(filter(event => event.keyCode === ESCAPE))).subscribe(() => {
410
+ }));
411
+ merge(_overlayRef.backdropClick(), _overlayRef.keydownEvents().pipe(filter((/**
412
+ * @param {?} event
413
+ * @return {?}
414
+ */
415
+ event => event.keyCode === ESCAPE)))).subscribe((/**
416
+ * @return {?}
417
+ */
418
+ () => {
385
419
  if (!this.disableClose) {
386
420
  this.dismiss();
387
421
  }
388
- });
422
+ }));
389
423
  }
390
424
  /**
391
425
  * Dismisses the bottom sheet.
@@ -395,7 +429,14 @@ class MatBottomSheetRef {
395
429
  dismiss(result) {
396
430
  if (!this._afterDismissed.closed) {
397
431
  // Transition the backdrop in parallel to the bottom sheet.
398
- this.containerInstance._animationStateChanged.pipe(filter(event => event.phaseName === 'start'), take(1)).subscribe(() => this._overlayRef.detachBackdrop());
432
+ this.containerInstance._animationStateChanged.pipe(filter((/**
433
+ * @param {?} event
434
+ * @return {?}
435
+ */
436
+ event => event.phaseName === 'start')), take(1)).subscribe((/**
437
+ * @return {?}
438
+ */
439
+ () => this._overlayRef.detachBackdrop()));
399
440
  this._result = result;
400
441
  this.containerInstance.exit();
401
442
  }
@@ -432,7 +473,7 @@ class MatBottomSheetRef {
432
473
 
433
474
  /**
434
475
  * @fileoverview added by tsickle
435
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
476
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
436
477
  */
437
478
  /**
438
479
  * Injection token that can be used to specify default bottom sheet options.
@@ -508,16 +549,22 @@ class MatBottomSheet {
508
549
  ref.instance = contentRef.instance;
509
550
  }
510
551
  // When the bottom sheet is dismissed, clear the reference to it.
511
- ref.afterDismissed().subscribe(() => {
552
+ ref.afterDismissed().subscribe((/**
553
+ * @return {?}
554
+ */
555
+ () => {
512
556
  // Clear the bottom sheet ref if it hasn't already been replaced by a newer one.
513
557
  if (this._openedBottomSheetRef == ref) {
514
558
  this._openedBottomSheetRef = null;
515
559
  }
516
- });
560
+ }));
517
561
  if (this._openedBottomSheetRef) {
518
562
  // If a bottom sheet is already in view, dismiss it and enter the
519
563
  // new bottom sheet after exit animation is complete.
520
- this._openedBottomSheetRef.afterDismissed().subscribe(() => ref.containerInstance.enter());
564
+ this._openedBottomSheetRef.afterDismissed().subscribe((/**
565
+ * @return {?}
566
+ */
567
+ () => ref.containerInstance.enter()));
521
568
  this._openedBottomSheetRef.dismiss();
522
569
  }
523
570
  else {
@@ -625,7 +672,7 @@ MatBottomSheet.ctorParameters = () => [
625
672
  { type: Location, decorators: [{ type: Optional }] },
626
673
  { type: MatBottomSheetConfig, decorators: [{ type: Optional }, { type: Inject, args: [MAT_BOTTOM_SHEET_DEFAULT_OPTIONS,] }] }
627
674
  ];
628
- /** @nocollapse */ MatBottomSheet.ngInjectableDef = defineInjectable({ factory: function MatBottomSheet_Factory() { return new MatBottomSheet(inject(Overlay), inject(INJECTOR), inject(MatBottomSheet, 12), inject(Location, 8), inject(MAT_BOTTOM_SHEET_DEFAULT_OPTIONS, 8)); }, token: MatBottomSheet, providedIn: MatBottomSheetModule });
675
+ /** @nocollapse */ MatBottomSheet.ngInjectableDef = ɵɵdefineInjectable({ factory: function MatBottomSheet_Factory() { return new MatBottomSheet(ɵɵinject(Overlay), ɵɵinject(INJECTOR), ɵɵinject(MatBottomSheet, 12), ɵɵinject(Location, 8), ɵɵinject(MAT_BOTTOM_SHEET_DEFAULT_OPTIONS, 8)); }, token: MatBottomSheet, providedIn: MatBottomSheetModule });
629
676
  /**
630
677
  * Applies default options to the bottom sheet config.
631
678
  * @param {?} defaults Object containing the default values to which to fall back.
@@ -638,12 +685,12 @@ function _applyConfigDefaults(defaults, config) {
638
685
 
639
686
  /**
640
687
  * @fileoverview added by tsickle
641
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
688
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
642
689
  */
643
690
 
644
691
  /**
645
692
  * @fileoverview added by tsickle
646
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
693
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
647
694
  */
648
695
 
649
696
  export { MatBottomSheetModule, MAT_BOTTOM_SHEET_DEFAULT_OPTIONS, MatBottomSheet, MAT_BOTTOM_SHEET_DATA, MatBottomSheetConfig, MatBottomSheetContainer, matBottomSheetAnimations, MatBottomSheetRef };
@@ -1 +1 @@
1
- {"version":3,"file":"bottom-sheet.js","sources":["../../../src/lib/bottom-sheet/bottom-sheet.ts","../../../src/lib/bottom-sheet/bottom-sheet-ref.ts","../../../src/lib/bottom-sheet/bottom-sheet-module.ts","../../../src/lib/bottom-sheet/bottom-sheet-container.ts","../../../src/lib/bottom-sheet/bottom-sheet-animations.ts","../../../src/lib/bottom-sheet/bottom-sheet-config.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directionality} from '@angular/cdk/bidi';\nimport {Overlay, OverlayConfig, OverlayRef} from '@angular/cdk/overlay';\nimport {ComponentPortal, ComponentType, PortalInjector, TemplatePortal} from '@angular/cdk/portal';\nimport {\n ComponentRef,\n Injectable,\n Injector,\n Optional,\n SkipSelf,\n TemplateRef,\n InjectionToken,\n Inject,\n OnDestroy,\n} from '@angular/core';\nimport {Location} from '@angular/common';\nimport {of as observableOf} from 'rxjs';\nimport {MAT_BOTTOM_SHEET_DATA, MatBottomSheetConfig} from './bottom-sheet-config';\nimport {MatBottomSheetContainer} from './bottom-sheet-container';\nimport {MatBottomSheetModule} from './bottom-sheet-module';\nimport {MatBottomSheetRef} from './bottom-sheet-ref';\n\n\n/** Injection token that can be used to specify default bottom sheet options. */\nexport const MAT_BOTTOM_SHEET_DEFAULT_OPTIONS =\n new InjectionToken<MatBottomSheetConfig>('mat-bottom-sheet-default-options');\n\n/**\n * Service to trigger Material Design bottom sheets.\n */\n@Injectable({providedIn: MatBottomSheetModule})\nexport class MatBottomSheet implements OnDestroy {\n private _bottomSheetRefAtThisLevel: MatBottomSheetRef<any> | null = null;\n\n /** Reference to the currently opened bottom sheet. */\n get _openedBottomSheetRef(): MatBottomSheetRef<any> | null {\n const parent = this._parentBottomSheet;\n return parent ? parent._openedBottomSheetRef : this._bottomSheetRefAtThisLevel;\n }\n\n set _openedBottomSheetRef(value: MatBottomSheetRef<any> | null) {\n if (this._parentBottomSheet) {\n this._parentBottomSheet._openedBottomSheetRef = value;\n } else {\n this._bottomSheetRefAtThisLevel = value;\n }\n }\n\n constructor(\n private _overlay: Overlay,\n private _injector: Injector,\n @Optional() @SkipSelf() private _parentBottomSheet: MatBottomSheet,\n @Optional() private _location?: Location,\n @Optional() @Inject(MAT_BOTTOM_SHEET_DEFAULT_OPTIONS)\n private _defaultOptions?: MatBottomSheetConfig) {}\n\n open<T, D = any, R = any>(component: ComponentType<T>,\n config?: MatBottomSheetConfig<D>): MatBottomSheetRef<T, R>;\n open<T, D = any, R = any>(template: TemplateRef<T>,\n config?: MatBottomSheetConfig<D>): MatBottomSheetRef<T, R>;\n\n open<T, D = any, R = any>(componentOrTemplateRef: ComponentType<T> | TemplateRef<T>,\n config?: MatBottomSheetConfig<D>): MatBottomSheetRef<T, R> {\n\n const _config =\n _applyConfigDefaults(this._defaultOptions || new MatBottomSheetConfig(), config);\n const overlayRef = this._createOverlay(_config);\n const container = this._attachContainer(overlayRef, _config);\n const ref = new MatBottomSheetRef<T, R>(container, overlayRef, this._location);\n\n if (componentOrTemplateRef instanceof TemplateRef) {\n container.attachTemplatePortal(new TemplatePortal<T>(componentOrTemplateRef, null!, {\n $implicit: _config.data,\n bottomSheetRef: ref\n } as any));\n } else {\n const portal = new ComponentPortal(componentOrTemplateRef, undefined,\n this._createInjector(_config, ref));\n const contentRef = container.attachComponentPortal(portal);\n ref.instance = contentRef.instance;\n }\n\n // When the bottom sheet is dismissed, clear the reference to it.\n ref.afterDismissed().subscribe(() => {\n // Clear the bottom sheet ref if it hasn't already been replaced by a newer one.\n if (this._openedBottomSheetRef == ref) {\n this._openedBottomSheetRef = null;\n }\n });\n\n if (this._openedBottomSheetRef) {\n // If a bottom sheet is already in view, dismiss it and enter the\n // new bottom sheet after exit animation is complete.\n this._openedBottomSheetRef.afterDismissed().subscribe(() => ref.containerInstance.enter());\n this._openedBottomSheetRef.dismiss();\n } else {\n // If no bottom sheet is in view, enter the new bottom sheet.\n ref.containerInstance.enter();\n }\n\n this._openedBottomSheetRef = ref;\n\n return ref;\n }\n\n /**\n * Dismisses the currently-visible bottom sheet.\n */\n dismiss(): void {\n if (this._openedBottomSheetRef) {\n this._openedBottomSheetRef.dismiss();\n }\n }\n\n ngOnDestroy() {\n if (this._bottomSheetRefAtThisLevel) {\n this._bottomSheetRefAtThisLevel.dismiss();\n }\n }\n\n /**\n * Attaches the bottom sheet container component to the overlay.\n */\n private _attachContainer(overlayRef: OverlayRef,\n config: MatBottomSheetConfig): MatBottomSheetContainer {\n\n const userInjector = config && config.viewContainerRef && config.viewContainerRef.injector;\n const injector = new PortalInjector(userInjector || this._injector, new WeakMap([\n [MatBottomSheetConfig, config]\n ]));\n\n const containerPortal =\n new ComponentPortal(MatBottomSheetContainer, config.viewContainerRef, injector);\n const containerRef: ComponentRef<MatBottomSheetContainer> = overlayRef.attach(containerPortal);\n return containerRef.instance;\n }\n\n /**\n * Creates a new overlay and places it in the correct location.\n * @param config The user-specified bottom sheet config.\n */\n private _createOverlay(config: MatBottomSheetConfig): OverlayRef {\n const overlayConfig = new OverlayConfig({\n direction: config.direction,\n hasBackdrop: config.hasBackdrop,\n disposeOnNavigation: config.closeOnNavigation,\n maxWidth: '100%',\n scrollStrategy: this._overlay.scrollStrategies.block(),\n positionStrategy: this._overlay.position()\n .global()\n .centerHorizontally()\n .bottom('0')\n });\n\n if (config.backdropClass) {\n overlayConfig.backdropClass = config.backdropClass;\n }\n\n return this._overlay.create(overlayConfig);\n }\n\n /**\n * Creates an injector to be used inside of a bottom sheet component.\n * @param config Config that was used to create the bottom sheet.\n * @param bottomSheetRef Reference to the bottom sheet.\n */\n private _createInjector<T>(config: MatBottomSheetConfig,\n bottomSheetRef: MatBottomSheetRef<T>): PortalInjector {\n\n const userInjector = config && config.viewContainerRef && config.viewContainerRef.injector;\n const injectionTokens = new WeakMap<any, any>([\n [MatBottomSheetRef, bottomSheetRef],\n [MAT_BOTTOM_SHEET_DATA, config.data]\n ]);\n\n if (config.direction &&\n (!userInjector || !userInjector.get<Directionality | null>(Directionality, null))) {\n injectionTokens.set(Directionality, {\n value: config.direction,\n change: observableOf()\n });\n }\n\n return new PortalInjector(userInjector || this._injector, injectionTokens);\n }\n}\n\n/**\n * Applies default options to the bottom sheet config.\n * @param defaults Object containing the default values to which to fall back.\n * @param config The configuration to which the defaults will be applied.\n * @returns The new configuration object with defaults applied.\n */\nfunction _applyConfigDefaults(defaults: MatBottomSheetConfig,\n config?: MatBottomSheetConfig): MatBottomSheetConfig {\n return {...defaults, ...config};\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Location} from '@angular/common';\nimport {ESCAPE} from '@angular/cdk/keycodes';\nimport {OverlayRef} from '@angular/cdk/overlay';\nimport {merge, Observable, Subject} from 'rxjs';\nimport {filter, take} from 'rxjs/operators';\nimport {MatBottomSheetContainer} from './bottom-sheet-container';\n\n\n/**\n * Reference to a bottom sheet dispatched from the bottom sheet service.\n */\nexport class MatBottomSheetRef<T = any, R = any> {\n /** Instance of the component making up the content of the bottom sheet. */\n instance: T;\n\n /**\n * Instance of the component into which the bottom sheet content is projected.\n * @docs-private\n */\n containerInstance: MatBottomSheetContainer;\n\n /** Whether the user is allowed to close the bottom sheet. */\n disableClose: boolean | undefined;\n\n /** Subject for notifying the user that the bottom sheet has been dismissed. */\n private readonly _afterDismissed = new Subject<R | undefined>();\n\n /** Subject for notifying the user that the bottom sheet has opened and appeared. */\n private readonly _afterOpened = new Subject<void>();\n\n /** Result to be passed down to the `afterDismissed` stream. */\n private _result: R | undefined;\n\n constructor(\n containerInstance: MatBottomSheetContainer,\n private _overlayRef: OverlayRef,\n // @breaking-change 8.0.0 `_location` parameter to be removed.\n _location?: Location) {\n this.containerInstance = containerInstance;\n this.disableClose = containerInstance.bottomSheetConfig.disableClose;\n\n // Emit when opening animation completes\n containerInstance._animationStateChanged.pipe(\n filter(event => event.phaseName === 'done' && event.toState === 'visible'),\n take(1)\n )\n .subscribe(() => {\n this._afterOpened.next();\n this._afterOpened.complete();\n });\n\n // Dispose overlay when closing animation is complete\n containerInstance._animationStateChanged\n .pipe(filter(event => event.phaseName === 'done' && event.toState === 'hidden'), take(1))\n .subscribe(() => {\n _overlayRef.dispose();\n });\n\n _overlayRef.detachments().pipe(take(1)).subscribe(() => {\n this._afterDismissed.next(this._result);\n this._afterDismissed.complete();\n });\n\n merge(\n _overlayRef.backdropClick(),\n _overlayRef.keydownEvents().pipe(filter(event => event.keyCode === ESCAPE))\n ).subscribe(() => {\n if (!this.disableClose) {\n this.dismiss();\n }\n });\n }\n\n /**\n * Dismisses the bottom sheet.\n * @param result Data to be passed back to the bottom sheet opener.\n */\n dismiss(result?: R): void {\n if (!this._afterDismissed.closed) {\n // Transition the backdrop in parallel to the bottom sheet.\n this.containerInstance._animationStateChanged.pipe(\n filter(event => event.phaseName === 'start'),\n take(1)\n ).subscribe(() => this._overlayRef.detachBackdrop());\n\n this._result = result;\n this.containerInstance.exit();\n }\n }\n\n /** Gets an observable that is notified when the bottom sheet is finished closing. */\n afterDismissed(): Observable<R | undefined> {\n return this._afterDismissed.asObservable();\n }\n\n /** Gets an observable that is notified when the bottom sheet has opened and appeared. */\n afterOpened(): Observable<void> {\n return this._afterOpened.asObservable();\n }\n\n /**\n * Gets an observable that emits when the overlay's backdrop has been clicked.\n */\n backdropClick(): Observable<MouseEvent> {\n return this._overlayRef.backdropClick();\n }\n\n /**\n * Gets an observable that emits when keydown events are targeted on the overlay.\n */\n keydownEvents(): Observable<KeyboardEvent> {\n return this._overlayRef.keydownEvents();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {OverlayModule} from '@angular/cdk/overlay';\nimport {PortalModule} from '@angular/cdk/portal';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatBottomSheetContainer} from './bottom-sheet-container';\n\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n MatCommonModule,\n PortalModule,\n ],\n exports: [MatBottomSheetContainer, MatCommonModule],\n declarations: [MatBottomSheetContainer],\n entryComponents: [MatBottomSheetContainer],\n})\nexport class MatBottomSheetModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n Component,\n ComponentRef,\n EmbeddedViewRef,\n ViewChild,\n OnDestroy,\n ElementRef,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n ChangeDetectorRef,\n EventEmitter,\n Inject,\n Optional,\n} from '@angular/core';\nimport {AnimationEvent} from '@angular/animations';\nimport {\n BasePortalOutlet,\n ComponentPortal,\n TemplatePortal,\n CdkPortalOutlet,\n} from '@angular/cdk/portal';\nimport {BreakpointObserver, Breakpoints} from '@angular/cdk/layout';\nimport {MatBottomSheetConfig} from './bottom-sheet-config';\nimport {matBottomSheetAnimations} from './bottom-sheet-animations';\nimport {Subscription} from 'rxjs';\nimport {DOCUMENT} from '@angular/common';\nimport {FocusTrap, FocusTrapFactory} from '@angular/cdk/a11y';\n\n// TODO(crisbeto): consolidate some logic between this, MatDialog and MatSnackBar\n\n/**\n * Internal component that wraps user-provided bottom sheet content.\n * @docs-private\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-bottom-sheet-container',\n templateUrl: 'bottom-sheet-container.html',\n styleUrls: ['bottom-sheet-container.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n animations: [matBottomSheetAnimations.bottomSheetState],\n host: {\n 'class': 'mat-bottom-sheet-container',\n 'tabindex': '-1',\n 'role': 'dialog',\n 'aria-modal': 'true',\n '[attr.aria-label]': 'bottomSheetConfig?.ariaLabel',\n '[@state]': '_animationState',\n '(@state.start)': '_onAnimationStart($event)',\n '(@state.done)': '_onAnimationDone($event)'\n },\n})\nexport class MatBottomSheetContainer extends BasePortalOutlet implements OnDestroy {\n private _breakpointSubscription: Subscription;\n\n /** The portal outlet inside of this container into which the content will be loaded. */\n @ViewChild(CdkPortalOutlet, {static: true}) _portalOutlet: CdkPortalOutlet;\n\n /** The state of the bottom sheet animations. */\n _animationState: 'void' | 'visible' | 'hidden' = 'void';\n\n /** Emits whenever the state of the animation changes. */\n _animationStateChanged = new EventEmitter<AnimationEvent>();\n\n /** The class that traps and manages focus within the bottom sheet. */\n private _focusTrap: FocusTrap;\n\n /** Element that was focused before the bottom sheet was opened. */\n private _elementFocusedBeforeOpened: HTMLElement | null = null;\n\n /** Server-side rendering-compatible reference to the global document object. */\n private _document: Document;\n\n /** Whether the component has been destroyed. */\n private _destroyed: boolean;\n\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _changeDetectorRef: ChangeDetectorRef,\n private _focusTrapFactory: FocusTrapFactory,\n breakpointObserver: BreakpointObserver,\n @Optional() @Inject(DOCUMENT) document: any,\n /** The bottom sheet configuration. */\n public bottomSheetConfig: MatBottomSheetConfig) {\n super();\n\n this._document = document;\n this._breakpointSubscription = breakpointObserver\n .observe([Breakpoints.Medium, Breakpoints.Large, Breakpoints.XLarge])\n .subscribe(() => {\n this._toggleClass('mat-bottom-sheet-container-medium',\n breakpointObserver.isMatched(Breakpoints.Medium));\n this._toggleClass('mat-bottom-sheet-container-large',\n breakpointObserver.isMatched(Breakpoints.Large));\n this._toggleClass('mat-bottom-sheet-container-xlarge',\n breakpointObserver.isMatched(Breakpoints.XLarge));\n });\n }\n\n /** Attach a component portal as content to this bottom sheet container. */\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\n this._validatePortalAttached();\n this._setPanelClass();\n this._savePreviouslyFocusedElement();\n return this._portalOutlet.attachComponentPortal(portal);\n }\n\n /** Attach a template portal as content to this bottom sheet container. */\n attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C> {\n this._validatePortalAttached();\n this._setPanelClass();\n this._savePreviouslyFocusedElement();\n return this._portalOutlet.attachTemplatePortal(portal);\n }\n\n /** Begin animation of bottom sheet entrance into view. */\n enter(): void {\n if (!this._destroyed) {\n this._animationState = 'visible';\n this._changeDetectorRef.detectChanges();\n }\n }\n\n /** Begin animation of the bottom sheet exiting from view. */\n exit(): void {\n if (!this._destroyed) {\n this._animationState = 'hidden';\n this._changeDetectorRef.markForCheck();\n }\n }\n\n ngOnDestroy() {\n this._breakpointSubscription.unsubscribe();\n this._destroyed = true;\n }\n\n _onAnimationDone(event: AnimationEvent) {\n if (event.toState === 'hidden') {\n this._restoreFocus();\n } else if (event.toState === 'visible') {\n this._trapFocus();\n }\n\n this._animationStateChanged.emit(event);\n }\n\n _onAnimationStart(event: AnimationEvent) {\n this._animationStateChanged.emit(event);\n }\n\n private _toggleClass(cssClass: string, add: boolean) {\n const classList = this._elementRef.nativeElement.classList;\n add ? classList.add(cssClass) : classList.remove(cssClass);\n }\n\n private _validatePortalAttached() {\n if (this._portalOutlet.hasAttached()) {\n throw Error('Attempting to attach bottom sheet content after content is already attached');\n }\n }\n\n private _setPanelClass() {\n const element: HTMLElement = this._elementRef.nativeElement;\n const panelClass = this.bottomSheetConfig.panelClass;\n\n if (Array.isArray(panelClass)) {\n // Note that we can't use a spread here, because IE doesn't support multiple arguments.\n panelClass.forEach(cssClass => element.classList.add(cssClass));\n } else if (panelClass) {\n element.classList.add(panelClass);\n }\n }\n\n\n /** Moves the focus inside the focus trap. */\n private _trapFocus() {\n if (!this._focusTrap) {\n this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);\n }\n\n if (this.bottomSheetConfig.autoFocus) {\n this._focusTrap.focusInitialElementWhenReady();\n }\n }\n\n /** Restores focus to the element that was focused before the bottom sheet was opened. */\n private _restoreFocus() {\n const toFocus = this._elementFocusedBeforeOpened;\n\n // We need the extra check, because IE can set the `activeElement` to null in some cases.\n if (this.bottomSheetConfig.restoreFocus && toFocus && typeof toFocus.focus === 'function') {\n toFocus.focus();\n }\n\n if (this._focusTrap) {\n this._focusTrap.destroy();\n }\n }\n\n /** Saves a reference to the element that was focused before the bottom sheet was opened. */\n private _savePreviouslyFocusedElement() {\n this._elementFocusedBeforeOpened = this._document.activeElement as HTMLElement;\n\n // The `focus` method isn't available during server-side rendering.\n if (this._elementRef.nativeElement.focus) {\n Promise.resolve().then(() => this._elementRef.nativeElement.focus());\n }\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\nimport {AnimationCurves, AnimationDurations} from '@angular/material/core';\n\n/** Animations used by the Material bottom sheet. */\nexport const matBottomSheetAnimations: {\n readonly bottomSheetState: AnimationTriggerMetadata;\n} = {\n /** Animation that shows and hides a bottom sheet. */\n bottomSheetState: trigger('state', [\n state('void, hidden', style({transform: 'translateY(100%)'})),\n state('visible', style({transform: 'translateY(0%)'})),\n transition('visible => void, visible => hidden',\n animate(`${AnimationDurations.COMPLEX} ${AnimationCurves.ACCELERATION_CURVE}`)),\n transition('void => visible',\n animate(`${AnimationDurations.EXITING} ${AnimationCurves.DECELERATION_CURVE}`)),\n ])\n};\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {ViewContainerRef, InjectionToken} from '@angular/core';\nimport {Direction} from '@angular/cdk/bidi';\n\n/** Injection token that can be used to access the data that was passed in to a bottom sheet. */\nexport const MAT_BOTTOM_SHEET_DATA = new InjectionToken<any>('MatBottomSheetData');\n\n/**\n * Configuration used when opening a bottom sheet.\n */\nexport class MatBottomSheetConfig<D = any> {\n /** The view container to place the overlay for the bottom sheet into. */\n viewContainerRef?: ViewContainerRef;\n\n /** Extra CSS classes to be added to the bottom sheet container. */\n panelClass?: string | string[];\n\n /** Text layout direction for the bottom sheet. */\n direction?: Direction;\n\n /** Data being injected into the child component. */\n data?: D | null = null;\n\n /** Whether the bottom sheet has a backdrop. */\n hasBackdrop?: boolean = true;\n\n /** Custom class for the backdrop. */\n backdropClass?: string;\n\n /** Whether the user can use escape or clicking outside to close the bottom sheet. */\n disableClose?: boolean = false;\n\n /** Aria label to assign to the bottom sheet element. */\n ariaLabel?: string | null = null;\n\n /**\n * Whether the bottom sheet should close when the user goes backwards/forwards in history.\n * Note that this usually doesn't include clicking on links (unless the user is using\n * the `HashLocationStrategy`).\n */\n closeOnNavigation?: boolean = true;\n\n // Note that this is disabled by default, because while the a11y recommendations are to focus\n // the first focusable element, doing so prevents screen readers from reading out the\n // rest of the bottom sheet content.\n /** Whether the bottom sheet should focus the first focusable element on open. */\n autoFocus?: boolean = false;\n\n /**\n * Whether the bottom sheet should restore focus to the\n * previously-focused element, after it's closed.\n */\n restoreFocus?: boolean = true;\n}\n"],"names":["observableOf"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AKYA,AAAA,MAAa,qBAAqB,GAAG,IAAI,cAAc,CAAM,oBAAoB,CAAC,CAAlF;;;;;AAKA,AAAA,MAAa,oBAAoB,CAAjC;IAAA,WAAA,GAAA;;;;QAWE,IAAF,CAAA,IAAM,GAAc,IAAI,CAAC;;;;QAGvB,IAAF,CAAA,WAAa,GAAa,IAAI,CAAC;;;;QAM7B,IAAF,CAAA,YAAc,GAAa,KAAK,CAAC;;;;QAG/B,IAAF,CAAA,SAAW,GAAmB,IAAI,CAAC;;;;;;QAOjC,IAAF,CAAA,iBAAmB,GAAa,IAAI,CAAC;;;;;;;QAMnC,IAAF,CAAA,SAAW,GAAa,KAAK,CAAC;;;;;QAM5B,IAAF,CAAA,YAAc,GAAa,IAAI,CAAC;KAC/B;CAAA;;;;;;;;;;AD1CD,AAAA,MAAa,wBAAwB,GAEjC;;;;IAEF,gBAAgB,EAAE,OAAO,CAAC,OAAO,EAAE;QACjC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,EAAC,SAAS,EAAE,kBAAkB,EAAC,CAAC,CAAC;QAC7D,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,EAAC,SAAS,EAAE,gBAAgB,EAAC,CAAC,CAAC;QACtD,UAAU,CAAC,oCAAoC,EAC3C,OAAO,CAAC,CADhB,EACmB,kBAAkB,CAAC,OAAO,CAD7C,CAAA,EACiD,eAAe,CAAC,kBAAkB,CADnF,CACqF,CAAC,CAAC;QACnF,UAAU,CAAC,iBAAiB,EACxB,OAAO,CAAC,CADhB,EACmB,kBAAkB,CAAC,OAAO,CAD7C,CAAA,EACiD,eAAe,CAAC,kBAAkB,CADnF,CACqF,CAAC,CAAC;KACpF,CAAC;CACH;;;;;;;;;;;AD+BD,AAAA,MAAa,uBAAwB,SAAQ,gBAAgB,CAA7D;;;;;;;;;IAwBE,WAAF,CACY,WAAoC,EACpC,kBAAqC,EACrC,iBAAmC,EAC3C,kBAAsC,EACR,QAAa,EAEpC,iBAAuC,EAPlD;QAQI,KAAK,EAAE,CAAC;QAPA,IAAZ,CAAA,WAAuB,GAAX,WAAW,CAAyB;QACpC,IAAZ,CAAA,kBAA8B,GAAlB,kBAAkB,CAAmB;QACrC,IAAZ,CAAA,iBAA6B,GAAjB,iBAAiB,CAAkB;QAIpC,IAAX,CAAA,iBAA4B,GAAjB,iBAAiB,CAAsB;;;;QAxBhD,IAAF,CAAA,eAAiB,GAAkC,MAAM,CAAC;;;;QAGxD,IAAF,CAAA,sBAAwB,GAAG,IAAI,YAAY,EAAkB,CAAC;;;;QAMpD,IAAV,CAAA,2BAAqC,GAAuB,IAAI,CAAC;QAkB7D,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,uBAAuB,GAAG,kBAAkB;aAC9C,OAAO,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;aACpE,SAAS,CAAC,MAAjB;YACQ,IAAI,CAAC,YAAY,CAAC,mCAAmC,EACjD,kBAAkB,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,YAAY,CAAC,kCAAkC,EAChD,kBAAkB,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,YAAY,CAAC,mCAAmC,EACjD,kBAAkB,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;SACvD,CAAC,CAAC;KACN;;;;;;;IAGD,qBAAqB,CAAI,MAA0B,EAArD;QACI,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,6BAA6B,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;KACzD;;;;;;;IAGD,oBAAoB,CAAI,MAAyB,EAAnD;QACI,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,6BAA6B,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;KACxD;;;;;IAGD,KAAK,GAAP;QACI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;YACjC,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,CAAC;SACzC;KACF;;;;;IAGD,IAAI,GAAN;QACI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;YAChC,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;SACxC;KACF;;;;IAED,WAAW,GAAb;QACI,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;KACxB;;;;;IAED,gBAAgB,CAAC,KAAqB,EAAxC;QACI,IAAI,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE;YAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;SACtB;aAAM,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE;YACtC,IAAI,CAAC,UAAU,EAAE,CAAC;SACnB;QAED,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACzC;;;;;IAED,iBAAiB,CAAC,KAAqB,EAAzC;QACI,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACzC;;;;;;;IAEO,YAAY,CAAC,QAAgB,EAAE,GAAY,EAArD;;QACA,MAAU,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,CAA9D;QACI,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;KAC5D;;;;;IAEO,uBAAuB,GAAjC;QACI,IAAI,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE;YACpC,MAAM,KAAK,CAAC,6EAA6E,CAAC,CAAC;SAC5F;KACF;;;;;IAEO,cAAc,GAAxB;;QACA,MAAU,OAAO,GAAgB,IAAI,CAAC,WAAW,CAAC,aAAa,CAA/D;;QACA,MAAU,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAxD;QAEI,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;;YAE7B,UAAU,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;SACjE;aAAM,IAAI,UAAU,EAAE;YACrB,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;SACnC;KACF;;;;;;IAIO,UAAU,GAApB;QACI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;SACjF;QAED,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE;YACpC,IAAI,CAAC,UAAU,CAAC,4BAA4B,EAAE,CAAC;SAChD;KACF;;;;;;IAGO,aAAa,GAAvB;;QACA,MAAU,OAAO,GAAG,IAAI,CAAC,2BAA2B,CAApD;;QAGI,IAAI,IAAI,CAAC,iBAAiB,CAAC,YAAY,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,UAAU,EAAE;YACzF,OAAO,CAAC,KAAK,EAAE,CAAC;SACjB;QAED,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;SAC3B;KACF;;;;;;IAGO,6BAA6B,GAAvC;QACI,IAAI,CAAC,2BAA2B,sBAAG,IAAI,CAAC,SAAS,CAAC,aAAa,EAAe,CAAC;;QAG/E,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,EAAE;YACxC,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC;SACtE;KACF;;;IA9KH,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW,CAAX,QAAA,EAAA,4BAAA;gBACE,QAAQ,EAAE,6CAAZ;gBACE,MAAF,EAAU,CAAV,6mBAAA,CAAA;gBACE,eAAF,EAAA,uBAAA,CAAA,MAAA;gBACE,aAAF,EAAA,iBAAA,CAAA,IAAA;gBACE,UAAF,EAAA,CAAA,wBAAA,CAAA,gBAAA,CAAA;gBACE,IAAF,EAAA;oBACA,OAAA,EAAe,4BAAf;oBACM,UAAN,EAAA,IAAA;oBACI,MAAJ,EAAA,QAAA;oBACI,YAAY,EAAhB,MAAA;oBACI,mBAAJ,EAAA,8BAAA;oBACI,UAAJ,EAAgB,iBAAhB;oBACI,gBAAJ,EAAA,2BAAA;oBACI,eAAJ,EAAA,0BAAA;iBACA;aACA,EAAA,EAAA;CACA,CAAA;;;;;IA7CA,EAAA,IAAA,EAAE,gBAAF,EAAA;IAGA,EAAA,IAAA,EAAE,kBAAF,EAAA;IAiBA,EAAA,IAAA,EAAmB,SAAnB,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,QAAA,EAAA,EAAA,CAAA,EAAA;IALA,EAAA,IAAA,EAAQ,oBAAR,EAAA;CA6DA,CAAA;AA5DA,uBAAA,CAAA,cAAA,GAAA;;;;;;;;ADHA,MAAa,oBAAoB,CAAjC;;;IAXA,EAAA,IAAA,EAAC,QAAQ,EAAT,IAAA,EAAA,CAAU;gBACR,OAAO,EAAE;oBACP,YAAY;oBACZ,aAAa;oBACb,eAAe;oBACf,YAAY;iBACb;gBACD,OAAO,EAAE,CAAC,uBAAuB,EAAE,eAAe,CAAC;gBACnD,YAAY,EAAE,CAAC,uBAAuB,CAAC;gBACvC,eAAe,EAAE,CAAC,uBAAuB,CAAC;aAC3C,EAAD,EAAA;;;;;;;;;;;ADPA,AAAA,MAAa,iBAAiB,CAA9B;;;;;;IAsBE,WAAF,CACI,iBAA0C,EAClC,WAAuB;;IAE/B,SAAoB,EAAxB;QAFY,IAAZ,CAAA,WAAuB,GAAX,WAAW,CAAY;;;;QAVhB,IAAnB,CAAA,eAAkC,GAAG,IAAI,OAAO,EAAiB,CAAC;;;;QAG/C,IAAnB,CAAA,YAA+B,GAAG,IAAI,OAAO,EAAQ,CAAC;QAUlD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,YAAY,CAAC;;QAGrE,iBAAiB,CAAC,sBAAsB,CAAC,IAAI,CAC3C,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,EAC1E,IAAI,CAAC,CAAC,CAAC,CACR;aACA,SAAS,CAAC,MAAf;YACM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YACzB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;SAC9B,CAAC,CAAC;;QAGH,iBAAiB,CAAC,sBAAsB;aACnC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;aACxF,SAAS,CAAC,MAAnB;YACU,WAAW,CAAC,OAAO,EAAE,CAAC;SACvB,CAAC,CAAC;QAEP,WAAW,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAtD;YACM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;SACjC,CAAC,CAAC;QAEH,KAAK,CACH,WAAW,CAAC,aAAa,EAAE,EAC3B,WAAW,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAC5E,CAAC,SAAS,CAAC,MAHhB;YAIM,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;gBACtB,IAAI,CAAC,OAAO,EAAE,CAAC;aAChB;SACF,CAAC,CAAC;KACJ;;;;;;IAMD,OAAO,CAAC,MAAU,EAApB;QACI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;;YAEhC,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,IAAI,CAChD,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,OAAO,CAAC,EAC5C,IAAI,CAAC,CAAC,CAAC,CACR,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC;YAErD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;YACtB,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;SAC/B;KACF;;;;;IAGD,cAAc,GAAhB;QACI,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;KAC5C;;;;;IAGD,WAAW,GAAb;QACI,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;KACzC;;;;;IAKD,aAAa,GAAf;QACI,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;KACzC;;;;;IAKD,aAAa,GAAf;QACI,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;KACzC;CACF;;;;;;;;;;AD1FD,AAAA,MAAa,gCAAgC,GACzC,IAAI,cAAc,CAAuB,kCAAkC,CAAC,CADhF;;;;AAOA,AAAA,MAAa,cAAc,CAA3B;;;;;;;;IAiBE,WAAF,CACc,QAAiB,EACjB,SAAmB,EACK,kBAAkC,EAC9C,SAAoB,EAE5B,eAAsC,EANxD;QACc,IAAd,CAAA,QAAsB,GAAR,QAAQ,CAAS;QACjB,IAAd,CAAA,SAAuB,GAAT,SAAS,CAAU;QACK,IAAtC,CAAA,kBAAwD,GAAlB,kBAAkB,CAAgB;QAC9C,IAA1B,CAAA,SAAmC,GAAT,SAAS,CAAW;QAE5B,IAAlB,CAAA,eAAiC,GAAf,eAAe,CAAuB;QAtB9C,IAAV,CAAA,0BAAoC,GAAkC,IAAI,CAAC;KAsBf;;;;;IAnB1D,IAAI,qBAAqB,GAA3B;;QACA,MAAU,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAA1C;QACI,OAAO,MAAM,GAAG,MAAM,CAAC,qBAAqB,GAAG,IAAI,CAAC,0BAA0B,CAAC;KAChF;;;;;IAED,IAAI,qBAAqB,CAAC,KAAoC,EAAhE;QACI,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC3B,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,GAAG,KAAK,CAAC;SACvD;aAAM;YACL,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC;SACzC;KACF;;;;;;;IAeD,IAAI,CAAsB,sBAAyD,EAClE,MAAgC,EADnD;;QAGA,MAAU,OAAO,GACT,oBAAoB,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,oBAAoB,EAAE,EAAE,MAAM,CAAC,CADxF;;QAEA,MAAU,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAnD;;QACA,MAAU,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAhE;;QACA,MAAU,GAAG,GAAG,IAAI,iBAAiB,CAAO,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAlF;QAEI,IAAI,sBAAsB,YAAY,WAAW,EAAE;YACjD,SAAS,CAAC,oBAAoB,CAAC,IAAI,cAAc,CAAI,sBAAsB,qBAAE,IAAI,uBAAG;gBAClF,SAAS,EAAE,OAAO,CAAC,IAAI;gBACvB,cAAc,EAAE,GAAG;aACpB,GAAQ,CAAC,CAAC;SACZ;aAAM;;YACX,MAAY,MAAM,GAAG,IAAI,eAAe,CAAC,sBAAsB,EAAE,SAAS,EAC9D,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAD/C;;YAEA,MAAY,UAAU,GAAG,SAAS,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAhE;YACM,GAAG,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;SACpC;;QAGD,GAAG,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC,MAAnC;;YAEM,IAAI,IAAI,CAAC,qBAAqB,IAAI,GAAG,EAAE;gBACrC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;aACnC;SACF,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,qBAAqB,EAAE;;;YAG9B,IAAI,CAAC,qBAAqB,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC;YAC3F,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC;SACtC;aAAM;;YAEL,GAAG,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;SAC/B;QAED,IAAI,CAAC,qBAAqB,GAAG,GAAG,CAAC;QAEjC,OAAO,GAAG,CAAC;KACZ;;;;;IAKD,OAAO,GAAT;QACI,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9B,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC;SACtC;KACF;;;;IAED,WAAW,GAAb;QACI,IAAI,IAAI,CAAC,0BAA0B,EAAE;YACnC,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,CAAC;SAC3C;KACF;;;;;;;;IAKO,gBAAgB,CAAC,UAAsB,EACtB,MAA4B,EADvD;;QAGA,MAAU,YAAY,GAAG,MAAM,IAAI,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAA9F;;QACA,MAAU,QAAQ,GAAG,IAAI,cAAc,CAAC,YAAY,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,OAAO,CAAC;YAC9E,CAAC,oBAAoB,EAAE,MAAM,CAAC;SAC/B,CAAC,CAAC,CAAP;;QAEA,MAAU,eAAe,GACjB,IAAI,eAAe,CAAC,uBAAuB,EAAE,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CADvF;;QAEA,MAAU,YAAY,GAA0C,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,CAAlG;QACI,OAAO,YAAY,CAAC,QAAQ,CAAC;KAC9B;;;;;;;IAMO,cAAc,CAAC,MAA4B,EAArD;;QACA,MAAU,aAAa,GAAG,IAAI,aAAa,CAAC;YACtC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,mBAAmB,EAAE,MAAM,CAAC,iBAAiB;YAC7C,QAAQ,EAAE,MAAM;YAChB,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,EAAE;YACtD,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;iBACvC,MAAM,EAAE;iBACR,kBAAkB,EAAE;iBACpB,MAAM,CAAC,GAAG,CAAC;SACf,CAAC,CAAN;QAEI,IAAI,MAAM,CAAC,aAAa,EAAE;YACxB,aAAa,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;SACpD;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;KAC5C;;;;;;;;;IAOO,eAAe,CAAI,MAA4B,EAC5B,cAAoC,EADjE;;QAGA,MAAU,YAAY,GAAG,MAAM,IAAI,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAA9F;;QACA,MAAU,eAAe,GAAG,IAAI,OAAO,CAAW;YAC5C,CAAC,iBAAiB,EAAE,cAAc,CAAC;YACnC,CAAC,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC;SACrC,CAAC,CAAN;QAEI,IAAI,MAAM,CAAC,SAAS;aACf,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,GAAG,CAAwB,cAAc,EAAE,IAAI,CAAC,CAAC,EAAE;YACrF,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE;gBAClC,KAAK,EAAE,MAAM,CAAC,SAAS;gBACvB,MAAM,EAAEA,EAAY,EAAE;aACvB,CAAC,CAAC;SACJ;QAED,OAAO,IAAI,cAAc,CAAC,YAAY,IAAI,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;KAC5E;;;IA1JH,EAAA,IAAA,EAAC,UAAU,EAAX,IAAA,EAAA,CAAY,EAAC,UAAU,EAAE,oBAAoB,EAAC,EAA9C,EAAA;;;;IA5BA,EAAA,IAAA,EAAQ,OAAO,EAAf;IAKA,EAAA,IAAA,EAAE,QAAQ,EAAV;IA4CA,EAAA,IAAA,EAA0D,cAAc,EAAxE,UAAA,EAAA,CAAA,EAAA,IAAA,EAAO,QAAQ,EAAf,EAAA,EAAA,IAAA,EAAmB,QAAQ,EAA3B,CAAA,EAAA;IApCA,EAAA,IAAA,EAAQ,QAAQ,EAAhB,UAAA,EAAA,CAAA,EAAA,IAAA,EAqCO,QAAQ,EArCf,CAAA,EAAA;IAEA,EAAA,IAAA,EAA+B,oBAAoB,EAAnD,UAAA,EAAA,CAAA,EAAA,IAAA,EAoCO,QAAQ,EApCf,EAAA,EAAA,IAAA,EAoCmB,MAAM,EApCzB,IAAA,EAAA,CAoC0B,gCAAgC,EApC1D,EAAA,CAAA,EAAA;;;;;;;;;AAgLA,SAAS,oBAAoB,CAAC,QAA8B,EAC9B,MAA6B,EAD3D;IAEE,OAAF,MAAA,CAAA,MAAA,CAAA,EAAA,EAAa,QAAQ,EAAK,MAAM,CAAhC,CAAkC;CACjC;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"bottom-sheet.js","sources":["../../../src/material/bottom-sheet/bottom-sheet.ts","../../../src/material/bottom-sheet/bottom-sheet-ref.ts","../../../src/material/bottom-sheet/bottom-sheet-module.ts","../../../src/material/bottom-sheet/bottom-sheet-container.ts","../../../src/material/bottom-sheet/bottom-sheet-animations.ts","../../../src/material/bottom-sheet/bottom-sheet-config.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directionality} from '@angular/cdk/bidi';\nimport {Overlay, OverlayConfig, OverlayRef} from '@angular/cdk/overlay';\nimport {ComponentPortal, ComponentType, PortalInjector, TemplatePortal} from '@angular/cdk/portal';\nimport {\n ComponentRef,\n Injectable,\n Injector,\n Optional,\n SkipSelf,\n TemplateRef,\n InjectionToken,\n Inject,\n OnDestroy,\n} from '@angular/core';\nimport {Location} from '@angular/common';\nimport {of as observableOf} from 'rxjs';\nimport {MAT_BOTTOM_SHEET_DATA, MatBottomSheetConfig} from './bottom-sheet-config';\nimport {MatBottomSheetContainer} from './bottom-sheet-container';\nimport {MatBottomSheetModule} from './bottom-sheet-module';\nimport {MatBottomSheetRef} from './bottom-sheet-ref';\n\n\n/** Injection token that can be used to specify default bottom sheet options. */\nexport const MAT_BOTTOM_SHEET_DEFAULT_OPTIONS =\n new InjectionToken<MatBottomSheetConfig>('mat-bottom-sheet-default-options');\n\n/**\n * Service to trigger Material Design bottom sheets.\n */\n@Injectable({providedIn: MatBottomSheetModule})\nexport class MatBottomSheet implements OnDestroy {\n private _bottomSheetRefAtThisLevel: MatBottomSheetRef<any> | null = null;\n\n /** Reference to the currently opened bottom sheet. */\n get _openedBottomSheetRef(): MatBottomSheetRef<any> | null {\n const parent = this._parentBottomSheet;\n return parent ? parent._openedBottomSheetRef : this._bottomSheetRefAtThisLevel;\n }\n\n set _openedBottomSheetRef(value: MatBottomSheetRef<any> | null) {\n if (this._parentBottomSheet) {\n this._parentBottomSheet._openedBottomSheetRef = value;\n } else {\n this._bottomSheetRefAtThisLevel = value;\n }\n }\n\n constructor(\n private _overlay: Overlay,\n private _injector: Injector,\n @Optional() @SkipSelf() private _parentBottomSheet: MatBottomSheet,\n @Optional() private _location?: Location,\n @Optional() @Inject(MAT_BOTTOM_SHEET_DEFAULT_OPTIONS)\n private _defaultOptions?: MatBottomSheetConfig) {}\n\n open<T, D = any, R = any>(component: ComponentType<T>,\n config?: MatBottomSheetConfig<D>): MatBottomSheetRef<T, R>;\n open<T, D = any, R = any>(template: TemplateRef<T>,\n config?: MatBottomSheetConfig<D>): MatBottomSheetRef<T, R>;\n\n open<T, D = any, R = any>(componentOrTemplateRef: ComponentType<T> | TemplateRef<T>,\n config?: MatBottomSheetConfig<D>): MatBottomSheetRef<T, R> {\n\n const _config =\n _applyConfigDefaults(this._defaultOptions || new MatBottomSheetConfig(), config);\n const overlayRef = this._createOverlay(_config);\n const container = this._attachContainer(overlayRef, _config);\n const ref = new MatBottomSheetRef<T, R>(container, overlayRef, this._location);\n\n if (componentOrTemplateRef instanceof TemplateRef) {\n container.attachTemplatePortal(new TemplatePortal<T>(componentOrTemplateRef, null!, {\n $implicit: _config.data,\n bottomSheetRef: ref\n } as any));\n } else {\n const portal = new ComponentPortal(componentOrTemplateRef, undefined,\n this._createInjector(_config, ref));\n const contentRef = container.attachComponentPortal(portal);\n ref.instance = contentRef.instance;\n }\n\n // When the bottom sheet is dismissed, clear the reference to it.\n ref.afterDismissed().subscribe(() => {\n // Clear the bottom sheet ref if it hasn't already been replaced by a newer one.\n if (this._openedBottomSheetRef == ref) {\n this._openedBottomSheetRef = null;\n }\n });\n\n if (this._openedBottomSheetRef) {\n // If a bottom sheet is already in view, dismiss it and enter the\n // new bottom sheet after exit animation is complete.\n this._openedBottomSheetRef.afterDismissed().subscribe(() => ref.containerInstance.enter());\n this._openedBottomSheetRef.dismiss();\n } else {\n // If no bottom sheet is in view, enter the new bottom sheet.\n ref.containerInstance.enter();\n }\n\n this._openedBottomSheetRef = ref;\n\n return ref;\n }\n\n /**\n * Dismisses the currently-visible bottom sheet.\n */\n dismiss(): void {\n if (this._openedBottomSheetRef) {\n this._openedBottomSheetRef.dismiss();\n }\n }\n\n ngOnDestroy() {\n if (this._bottomSheetRefAtThisLevel) {\n this._bottomSheetRefAtThisLevel.dismiss();\n }\n }\n\n /**\n * Attaches the bottom sheet container component to the overlay.\n */\n private _attachContainer(overlayRef: OverlayRef,\n config: MatBottomSheetConfig): MatBottomSheetContainer {\n\n const userInjector = config && config.viewContainerRef && config.viewContainerRef.injector;\n const injector = new PortalInjector(userInjector || this._injector, new WeakMap([\n [MatBottomSheetConfig, config]\n ]));\n\n const containerPortal =\n new ComponentPortal(MatBottomSheetContainer, config.viewContainerRef, injector);\n const containerRef: ComponentRef<MatBottomSheetContainer> = overlayRef.attach(containerPortal);\n return containerRef.instance;\n }\n\n /**\n * Creates a new overlay and places it in the correct location.\n * @param config The user-specified bottom sheet config.\n */\n private _createOverlay(config: MatBottomSheetConfig): OverlayRef {\n const overlayConfig = new OverlayConfig({\n direction: config.direction,\n hasBackdrop: config.hasBackdrop,\n disposeOnNavigation: config.closeOnNavigation,\n maxWidth: '100%',\n scrollStrategy: this._overlay.scrollStrategies.block(),\n positionStrategy: this._overlay.position()\n .global()\n .centerHorizontally()\n .bottom('0')\n });\n\n if (config.backdropClass) {\n overlayConfig.backdropClass = config.backdropClass;\n }\n\n return this._overlay.create(overlayConfig);\n }\n\n /**\n * Creates an injector to be used inside of a bottom sheet component.\n * @param config Config that was used to create the bottom sheet.\n * @param bottomSheetRef Reference to the bottom sheet.\n */\n private _createInjector<T>(config: MatBottomSheetConfig,\n bottomSheetRef: MatBottomSheetRef<T>): PortalInjector {\n\n const userInjector = config && config.viewContainerRef && config.viewContainerRef.injector;\n const injectionTokens = new WeakMap<any, any>([\n [MatBottomSheetRef, bottomSheetRef],\n [MAT_BOTTOM_SHEET_DATA, config.data]\n ]);\n\n if (config.direction &&\n (!userInjector || !userInjector.get<Directionality | null>(Directionality, null))) {\n injectionTokens.set(Directionality, {\n value: config.direction,\n change: observableOf()\n });\n }\n\n return new PortalInjector(userInjector || this._injector, injectionTokens);\n }\n}\n\n/**\n * Applies default options to the bottom sheet config.\n * @param defaults Object containing the default values to which to fall back.\n * @param config The configuration to which the defaults will be applied.\n * @returns The new configuration object with defaults applied.\n */\nfunction _applyConfigDefaults(defaults: MatBottomSheetConfig,\n config?: MatBottomSheetConfig): MatBottomSheetConfig {\n return {...defaults, ...config};\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Location} from '@angular/common';\nimport {ESCAPE} from '@angular/cdk/keycodes';\nimport {OverlayRef} from '@angular/cdk/overlay';\nimport {merge, Observable, Subject} from 'rxjs';\nimport {filter, take} from 'rxjs/operators';\nimport {MatBottomSheetContainer} from './bottom-sheet-container';\n\n\n/**\n * Reference to a bottom sheet dispatched from the bottom sheet service.\n */\nexport class MatBottomSheetRef<T = any, R = any> {\n /** Instance of the component making up the content of the bottom sheet. */\n instance: T;\n\n /**\n * Instance of the component into which the bottom sheet content is projected.\n * @docs-private\n */\n containerInstance: MatBottomSheetContainer;\n\n /** Whether the user is allowed to close the bottom sheet. */\n disableClose: boolean | undefined;\n\n /** Subject for notifying the user that the bottom sheet has been dismissed. */\n private readonly _afterDismissed = new Subject<R | undefined>();\n\n /** Subject for notifying the user that the bottom sheet has opened and appeared. */\n private readonly _afterOpened = new Subject<void>();\n\n /** Result to be passed down to the `afterDismissed` stream. */\n private _result: R | undefined;\n\n constructor(\n containerInstance: MatBottomSheetContainer,\n private _overlayRef: OverlayRef,\n // @breaking-change 8.0.0 `_location` parameter to be removed.\n _location?: Location) {\n this.containerInstance = containerInstance;\n this.disableClose = containerInstance.bottomSheetConfig.disableClose;\n\n // Emit when opening animation completes\n containerInstance._animationStateChanged.pipe(\n filter(event => event.phaseName === 'done' && event.toState === 'visible'),\n take(1)\n )\n .subscribe(() => {\n this._afterOpened.next();\n this._afterOpened.complete();\n });\n\n // Dispose overlay when closing animation is complete\n containerInstance._animationStateChanged\n .pipe(filter(event => event.phaseName === 'done' && event.toState === 'hidden'), take(1))\n .subscribe(() => {\n _overlayRef.dispose();\n });\n\n _overlayRef.detachments().pipe(take(1)).subscribe(() => {\n this._afterDismissed.next(this._result);\n this._afterDismissed.complete();\n });\n\n merge(\n _overlayRef.backdropClick(),\n _overlayRef.keydownEvents().pipe(filter(event => event.keyCode === ESCAPE))\n ).subscribe(() => {\n if (!this.disableClose) {\n this.dismiss();\n }\n });\n }\n\n /**\n * Dismisses the bottom sheet.\n * @param result Data to be passed back to the bottom sheet opener.\n */\n dismiss(result?: R): void {\n if (!this._afterDismissed.closed) {\n // Transition the backdrop in parallel to the bottom sheet.\n this.containerInstance._animationStateChanged.pipe(\n filter(event => event.phaseName === 'start'),\n take(1)\n ).subscribe(() => this._overlayRef.detachBackdrop());\n\n this._result = result;\n this.containerInstance.exit();\n }\n }\n\n /** Gets an observable that is notified when the bottom sheet is finished closing. */\n afterDismissed(): Observable<R | undefined> {\n return this._afterDismissed.asObservable();\n }\n\n /** Gets an observable that is notified when the bottom sheet has opened and appeared. */\n afterOpened(): Observable<void> {\n return this._afterOpened.asObservable();\n }\n\n /**\n * Gets an observable that emits when the overlay's backdrop has been clicked.\n */\n backdropClick(): Observable<MouseEvent> {\n return this._overlayRef.backdropClick();\n }\n\n /**\n * Gets an observable that emits when keydown events are targeted on the overlay.\n */\n keydownEvents(): Observable<KeyboardEvent> {\n return this._overlayRef.keydownEvents();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {OverlayModule} from '@angular/cdk/overlay';\nimport {PortalModule} from '@angular/cdk/portal';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatBottomSheetContainer} from './bottom-sheet-container';\n\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n MatCommonModule,\n PortalModule,\n ],\n exports: [MatBottomSheetContainer, MatCommonModule],\n declarations: [MatBottomSheetContainer],\n entryComponents: [MatBottomSheetContainer],\n})\nexport class MatBottomSheetModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n Component,\n ComponentRef,\n EmbeddedViewRef,\n ViewChild,\n OnDestroy,\n ElementRef,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n ChangeDetectorRef,\n EventEmitter,\n Inject,\n Optional,\n} from '@angular/core';\nimport {AnimationEvent} from '@angular/animations';\nimport {\n BasePortalOutlet,\n ComponentPortal,\n TemplatePortal,\n CdkPortalOutlet,\n} from '@angular/cdk/portal';\nimport {BreakpointObserver, Breakpoints} from '@angular/cdk/layout';\nimport {MatBottomSheetConfig} from './bottom-sheet-config';\nimport {matBottomSheetAnimations} from './bottom-sheet-animations';\nimport {Subscription} from 'rxjs';\nimport {DOCUMENT} from '@angular/common';\nimport {FocusTrap, FocusTrapFactory} from '@angular/cdk/a11y';\n\n// TODO(crisbeto): consolidate some logic between this, MatDialog and MatSnackBar\n\n/**\n * Internal component that wraps user-provided bottom sheet content.\n * @docs-private\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-bottom-sheet-container',\n templateUrl: 'bottom-sheet-container.html',\n styleUrls: ['bottom-sheet-container.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n animations: [matBottomSheetAnimations.bottomSheetState],\n host: {\n 'class': 'mat-bottom-sheet-container',\n 'tabindex': '-1',\n 'role': 'dialog',\n 'aria-modal': 'true',\n '[attr.aria-label]': 'bottomSheetConfig?.ariaLabel',\n '[@state]': '_animationState',\n '(@state.start)': '_onAnimationStart($event)',\n '(@state.done)': '_onAnimationDone($event)'\n },\n})\nexport class MatBottomSheetContainer extends BasePortalOutlet implements OnDestroy {\n private _breakpointSubscription: Subscription;\n\n /** The portal outlet inside of this container into which the content will be loaded. */\n @ViewChild(CdkPortalOutlet, {static: true}) _portalOutlet: CdkPortalOutlet;\n\n /** The state of the bottom sheet animations. */\n _animationState: 'void' | 'visible' | 'hidden' = 'void';\n\n /** Emits whenever the state of the animation changes. */\n _animationStateChanged = new EventEmitter<AnimationEvent>();\n\n /** The class that traps and manages focus within the bottom sheet. */\n private _focusTrap: FocusTrap;\n\n /** Element that was focused before the bottom sheet was opened. */\n private _elementFocusedBeforeOpened: HTMLElement | null = null;\n\n /** Server-side rendering-compatible reference to the global document object. */\n private _document: Document;\n\n /** Whether the component has been destroyed. */\n private _destroyed: boolean;\n\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _changeDetectorRef: ChangeDetectorRef,\n private _focusTrapFactory: FocusTrapFactory,\n breakpointObserver: BreakpointObserver,\n @Optional() @Inject(DOCUMENT) document: any,\n /** The bottom sheet configuration. */\n public bottomSheetConfig: MatBottomSheetConfig) {\n super();\n\n this._document = document;\n this._breakpointSubscription = breakpointObserver\n .observe([Breakpoints.Medium, Breakpoints.Large, Breakpoints.XLarge])\n .subscribe(() => {\n this._toggleClass('mat-bottom-sheet-container-medium',\n breakpointObserver.isMatched(Breakpoints.Medium));\n this._toggleClass('mat-bottom-sheet-container-large',\n breakpointObserver.isMatched(Breakpoints.Large));\n this._toggleClass('mat-bottom-sheet-container-xlarge',\n breakpointObserver.isMatched(Breakpoints.XLarge));\n });\n }\n\n /** Attach a component portal as content to this bottom sheet container. */\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\n this._validatePortalAttached();\n this._setPanelClass();\n this._savePreviouslyFocusedElement();\n return this._portalOutlet.attachComponentPortal(portal);\n }\n\n /** Attach a template portal as content to this bottom sheet container. */\n attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C> {\n this._validatePortalAttached();\n this._setPanelClass();\n this._savePreviouslyFocusedElement();\n return this._portalOutlet.attachTemplatePortal(portal);\n }\n\n /** Begin animation of bottom sheet entrance into view. */\n enter(): void {\n if (!this._destroyed) {\n this._animationState = 'visible';\n this._changeDetectorRef.detectChanges();\n }\n }\n\n /** Begin animation of the bottom sheet exiting from view. */\n exit(): void {\n if (!this._destroyed) {\n this._animationState = 'hidden';\n this._changeDetectorRef.markForCheck();\n }\n }\n\n ngOnDestroy() {\n this._breakpointSubscription.unsubscribe();\n this._destroyed = true;\n }\n\n _onAnimationDone(event: AnimationEvent) {\n if (event.toState === 'hidden') {\n this._restoreFocus();\n } else if (event.toState === 'visible') {\n this._trapFocus();\n }\n\n this._animationStateChanged.emit(event);\n }\n\n _onAnimationStart(event: AnimationEvent) {\n this._animationStateChanged.emit(event);\n }\n\n private _toggleClass(cssClass: string, add: boolean) {\n const classList = this._elementRef.nativeElement.classList;\n add ? classList.add(cssClass) : classList.remove(cssClass);\n }\n\n private _validatePortalAttached() {\n if (this._portalOutlet.hasAttached()) {\n throw Error('Attempting to attach bottom sheet content after content is already attached');\n }\n }\n\n private _setPanelClass() {\n const element: HTMLElement = this._elementRef.nativeElement;\n const panelClass = this.bottomSheetConfig.panelClass;\n\n if (Array.isArray(panelClass)) {\n // Note that we can't use a spread here, because IE doesn't support multiple arguments.\n panelClass.forEach(cssClass => element.classList.add(cssClass));\n } else if (panelClass) {\n element.classList.add(panelClass);\n }\n }\n\n\n /** Moves the focus inside the focus trap. */\n private _trapFocus() {\n if (!this._focusTrap) {\n this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);\n }\n\n if (this.bottomSheetConfig.autoFocus) {\n this._focusTrap.focusInitialElementWhenReady();\n }\n }\n\n /** Restores focus to the element that was focused before the bottom sheet was opened. */\n private _restoreFocus() {\n const toFocus = this._elementFocusedBeforeOpened;\n\n // We need the extra check, because IE can set the `activeElement` to null in some cases.\n if (this.bottomSheetConfig.restoreFocus && toFocus && typeof toFocus.focus === 'function') {\n toFocus.focus();\n }\n\n if (this._focusTrap) {\n this._focusTrap.destroy();\n }\n }\n\n /** Saves a reference to the element that was focused before the bottom sheet was opened. */\n private _savePreviouslyFocusedElement() {\n this._elementFocusedBeforeOpened = this._document.activeElement as HTMLElement;\n\n // The `focus` method isn't available during server-side rendering.\n if (this._elementRef.nativeElement.focus) {\n Promise.resolve().then(() => this._elementRef.nativeElement.focus());\n }\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\nimport {AnimationCurves, AnimationDurations} from '@angular/material/core';\n\n/** Animations used by the Material bottom sheet. */\nexport const matBottomSheetAnimations: {\n readonly bottomSheetState: AnimationTriggerMetadata;\n} = {\n /** Animation that shows and hides a bottom sheet. */\n bottomSheetState: trigger('state', [\n state('void, hidden', style({transform: 'translateY(100%)'})),\n state('visible', style({transform: 'translateY(0%)'})),\n transition('visible => void, visible => hidden',\n animate(`${AnimationDurations.COMPLEX} ${AnimationCurves.ACCELERATION_CURVE}`)),\n transition('void => visible',\n animate(`${AnimationDurations.EXITING} ${AnimationCurves.DECELERATION_CURVE}`)),\n ])\n};\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {ViewContainerRef, InjectionToken} from '@angular/core';\nimport {Direction} from '@angular/cdk/bidi';\n\n/** Injection token that can be used to access the data that was passed in to a bottom sheet. */\nexport const MAT_BOTTOM_SHEET_DATA = new InjectionToken<any>('MatBottomSheetData');\n\n/**\n * Configuration used when opening a bottom sheet.\n */\nexport class MatBottomSheetConfig<D = any> {\n /** The view container to place the overlay for the bottom sheet into. */\n viewContainerRef?: ViewContainerRef;\n\n /** Extra CSS classes to be added to the bottom sheet container. */\n panelClass?: string | string[];\n\n /** Text layout direction for the bottom sheet. */\n direction?: Direction;\n\n /** Data being injected into the child component. */\n data?: D | null = null;\n\n /** Whether the bottom sheet has a backdrop. */\n hasBackdrop?: boolean = true;\n\n /** Custom class for the backdrop. */\n backdropClass?: string;\n\n /** Whether the user can use escape or clicking outside to close the bottom sheet. */\n disableClose?: boolean = false;\n\n /** Aria label to assign to the bottom sheet element. */\n ariaLabel?: string | null = null;\n\n /**\n * Whether the bottom sheet should close when the user goes backwards/forwards in history.\n * Note that this usually doesn't include clicking on links (unless the user is using\n * the `HashLocationStrategy`).\n */\n closeOnNavigation?: boolean = true;\n\n // Note that this is disabled by default, because while the a11y recommendations are to focus\n // the first focusable element, doing so prevents screen readers from reading out the\n // rest of the bottom sheet content.\n /** Whether the bottom sheet should focus the first focusable element on open. */\n autoFocus?: boolean = false;\n\n /**\n * Whether the bottom sheet should restore focus to the\n * previously-focused element, after it's closed.\n */\n restoreFocus?: boolean = true;\n}\n"],"names":["observableOf"],"mappings":"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"}