@angular/material 6.4.2 → 6.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (518) hide show
  1. package/_theming.scss +9 -5
  2. package/autocomplete/typings/autocomplete-trigger.d.ts +12 -1
  3. package/autocomplete/typings/autocomplete.d.ts +1 -1
  4. package/autocomplete/typings/index.d.ts +1 -1
  5. package/autocomplete/typings/index.metadata.json +1 -1
  6. package/badge/typings/badge.d.ts +6 -2
  7. package/badge/typings/index.metadata.json +1 -1
  8. package/bottom-sheet/typings/bottom-sheet-container.d.ts +1 -1
  9. package/bottom-sheet/typings/index.metadata.json +1 -1
  10. package/bundles/material-autocomplete.umd.js +33 -2
  11. package/bundles/material-autocomplete.umd.js.map +1 -1
  12. package/bundles/material-autocomplete.umd.min.js +1 -1
  13. package/bundles/material-autocomplete.umd.min.js.map +1 -1
  14. package/bundles/material-badge.umd.js +6 -2
  15. package/bundles/material-badge.umd.js.map +1 -1
  16. package/bundles/material-badge.umd.min.js +1 -1
  17. package/bundles/material-badge.umd.min.js.map +1 -1
  18. package/bundles/material-bottom-sheet.umd.js.map +1 -1
  19. package/bundles/material-bottom-sheet.umd.min.js.map +1 -1
  20. package/bundles/material-button-toggle.umd.js +12 -3
  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 +2 -2
  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 +1 -1
  29. package/bundles/material-card.umd.js.map +1 -1
  30. package/bundles/material-card.umd.min.js +1 -1
  31. package/bundles/material-card.umd.min.js.map +1 -1
  32. package/bundles/material-checkbox.umd.js +7 -1
  33. package/bundles/material-checkbox.umd.js.map +1 -1
  34. package/bundles/material-checkbox.umd.min.js +1 -1
  35. package/bundles/material-checkbox.umd.min.js.map +1 -1
  36. package/bundles/material-chips.umd.js +113 -94
  37. package/bundles/material-chips.umd.js.map +1 -1
  38. package/bundles/material-chips.umd.min.js +1 -1
  39. package/bundles/material-chips.umd.min.js.map +1 -1
  40. package/bundles/material-core.umd.js +13 -16
  41. package/bundles/material-core.umd.js.map +1 -1
  42. package/bundles/material-core.umd.min.js +2 -2
  43. package/bundles/material-core.umd.min.js.map +1 -1
  44. package/bundles/material-datepicker.umd.js +35 -38
  45. package/bundles/material-datepicker.umd.js.map +1 -1
  46. package/bundles/material-datepicker.umd.min.js +2 -2
  47. package/bundles/material-datepicker.umd.min.js.map +1 -1
  48. package/bundles/material-dialog.umd.js.map +1 -1
  49. package/bundles/material-dialog.umd.min.js.map +1 -1
  50. package/bundles/material-expansion.umd.js +200 -74
  51. package/bundles/material-expansion.umd.js.map +1 -1
  52. package/bundles/material-expansion.umd.min.js +1 -1
  53. package/bundles/material-expansion.umd.min.js.map +1 -1
  54. package/bundles/material-form-field.umd.js +62 -51
  55. package/bundles/material-form-field.umd.js.map +1 -1
  56. package/bundles/material-form-field.umd.min.js +1 -1
  57. package/bundles/material-form-field.umd.min.js.map +1 -1
  58. package/bundles/material-grid-list.umd.js +10 -34
  59. package/bundles/material-grid-list.umd.js.map +1 -1
  60. package/bundles/material-grid-list.umd.min.js +1 -1
  61. package/bundles/material-grid-list.umd.min.js.map +1 -1
  62. package/bundles/material-icon.umd.js.map +1 -1
  63. package/bundles/material-icon.umd.min.js.map +1 -1
  64. package/bundles/material-input.umd.js +13 -6
  65. package/bundles/material-input.umd.js.map +1 -1
  66. package/bundles/material-input.umd.min.js +1 -1
  67. package/bundles/material-input.umd.min.js.map +1 -1
  68. package/bundles/material-list.umd.js +12 -14
  69. package/bundles/material-list.umd.js.map +1 -1
  70. package/bundles/material-list.umd.min.js +5 -5
  71. package/bundles/material-list.umd.min.js.map +1 -1
  72. package/bundles/material-menu.umd.js +25 -16
  73. package/bundles/material-menu.umd.js.map +1 -1
  74. package/bundles/material-menu.umd.min.js +1 -1
  75. package/bundles/material-menu.umd.min.js.map +1 -1
  76. package/bundles/material-paginator.umd.js +1 -1
  77. package/bundles/material-paginator.umd.js.map +1 -1
  78. package/bundles/material-paginator.umd.min.js +1 -1
  79. package/bundles/material-paginator.umd.min.js.map +1 -1
  80. package/bundles/material-progress-bar.umd.js +29 -11
  81. package/bundles/material-progress-bar.umd.js.map +1 -1
  82. package/bundles/material-progress-bar.umd.min.js +1 -1
  83. package/bundles/material-progress-bar.umd.min.js.map +1 -1
  84. package/bundles/material-radio.umd.js.map +1 -1
  85. package/bundles/material-radio.umd.min.js.map +1 -1
  86. package/bundles/material-select.umd.js +8 -3
  87. package/bundles/material-select.umd.js.map +1 -1
  88. package/bundles/material-select.umd.min.js +1 -1
  89. package/bundles/material-select.umd.min.js.map +1 -1
  90. package/bundles/material-sidenav.umd.js +5 -1
  91. package/bundles/material-sidenav.umd.js.map +1 -1
  92. package/bundles/material-sidenav.umd.min.js +1 -1
  93. package/bundles/material-sidenav.umd.min.js.map +1 -1
  94. package/bundles/material-slide-toggle.umd.js +8 -2
  95. package/bundles/material-slide-toggle.umd.js.map +1 -1
  96. package/bundles/material-slide-toggle.umd.min.js +1 -1
  97. package/bundles/material-slide-toggle.umd.min.js.map +1 -1
  98. package/bundles/material-slider.umd.js +1 -1
  99. package/bundles/material-slider.umd.js.map +1 -1
  100. package/bundles/material-slider.umd.min.js +1 -1
  101. package/bundles/material-slider.umd.min.js.map +1 -1
  102. package/bundles/material-snack-bar.umd.js +1 -1
  103. package/bundles/material-snack-bar.umd.js.map +1 -1
  104. package/bundles/material-snack-bar.umd.min.js +1 -1
  105. package/bundles/material-snack-bar.umd.min.js.map +1 -1
  106. package/bundles/material-stepper.umd.js +30 -18
  107. package/bundles/material-stepper.umd.js.map +1 -1
  108. package/bundles/material-stepper.umd.min.js +1 -1
  109. package/bundles/material-stepper.umd.min.js.map +1 -1
  110. package/bundles/material-table.umd.js +31 -31
  111. package/bundles/material-table.umd.js.map +1 -1
  112. package/bundles/material-table.umd.min.js +1 -1
  113. package/bundles/material-table.umd.min.js.map +1 -1
  114. package/bundles/material-tabs.umd.js +38 -45
  115. package/bundles/material-tabs.umd.js.map +1 -1
  116. package/bundles/material-tabs.umd.min.js +2 -2
  117. package/bundles/material-tabs.umd.min.js.map +1 -1
  118. package/bundles/material-tooltip.umd.js +11 -11
  119. package/bundles/material-tooltip.umd.js.map +1 -1
  120. package/bundles/material-tooltip.umd.min.js +1 -1
  121. package/bundles/material-tooltip.umd.min.js.map +1 -1
  122. package/bundles/material-tree.umd.js +16 -4
  123. package/bundles/material-tree.umd.js.map +1 -1
  124. package/bundles/material-tree.umd.min.js +1 -1
  125. package/bundles/material-tree.umd.min.js.map +1 -1
  126. package/bundles/material.umd.js +692 -452
  127. package/bundles/material.umd.js.map +1 -1
  128. package/bundles/material.umd.min.js +21 -21
  129. package/bundles/material.umd.min.js.map +1 -1
  130. package/button/typings/index.metadata.json +1 -1
  131. package/button-toggle/typings/button-toggle.d.ts +4 -2
  132. package/button-toggle/typings/index.metadata.json +1 -1
  133. package/card/typings/index.metadata.json +1 -1
  134. package/checkbox/typings/checkbox.d.ts +2 -2
  135. package/checkbox/typings/index.metadata.json +1 -1
  136. package/chips/typings/chip-input.d.ts +9 -9
  137. package/chips/typings/chip-list.d.ts +12 -19
  138. package/chips/typings/chip.d.ts +3 -2
  139. package/chips/typings/index.metadata.json +1 -1
  140. package/core/typings/index.metadata.json +1 -1
  141. package/core/typings/line/line.d.ts +1 -1
  142. package/core/typings/option/option.d.ts +3 -4
  143. package/core/typings/ripple/ripple-renderer.d.ts +1 -1
  144. package/core/typings/ripple/ripple.d.ts +1 -1
  145. package/datepicker/typings/calendar-body.d.ts +1 -1
  146. package/datepicker/typings/datepicker-input.d.ts +3 -5
  147. package/datepicker/typings/datepicker-toggle.d.ts +3 -1
  148. package/datepicker/typings/datepicker.d.ts +1 -1
  149. package/datepicker/typings/index.metadata.json +1 -1
  150. package/dialog/typings/dialog-container.d.ts +1 -1
  151. package/dialog/typings/dialog-content-directives.d.ts +2 -2
  152. package/dialog/typings/index.metadata.json +1 -1
  153. package/esm2015/autocomplete.js +30 -2
  154. package/esm2015/autocomplete.js.map +1 -1
  155. package/esm2015/badge.js +8 -3
  156. package/esm2015/badge.js.map +1 -1
  157. package/esm2015/bottom-sheet.js.map +1 -1
  158. package/esm2015/button-toggle.js +14 -4
  159. package/esm2015/button-toggle.js.map +1 -1
  160. package/esm2015/button.js +2 -2
  161. package/esm2015/button.js.map +1 -1
  162. package/esm2015/card.js +1 -1
  163. package/esm2015/card.js.map +1 -1
  164. package/esm2015/checkbox.js +6 -1
  165. package/esm2015/checkbox.js.map +1 -1
  166. package/esm2015/chips.js +99 -76
  167. package/esm2015/chips.js.map +1 -1
  168. package/esm2015/core.js +10 -7
  169. package/esm2015/core.js.map +1 -1
  170. package/esm2015/datepicker.js +35 -30
  171. package/esm2015/datepicker.js.map +1 -1
  172. package/esm2015/dialog.js.map +1 -1
  173. package/esm2015/expansion.js +158 -66
  174. package/esm2015/expansion.js.map +1 -1
  175. package/esm2015/form-field.js +60 -49
  176. package/esm2015/form-field.js.map +1 -1
  177. package/esm2015/grid-list.js +7 -30
  178. package/esm2015/grid-list.js.map +1 -1
  179. package/esm2015/icon.js.map +1 -1
  180. package/esm2015/input.js +13 -7
  181. package/esm2015/input.js.map +1 -1
  182. package/esm2015/list.js +11 -13
  183. package/esm2015/list.js.map +1 -1
  184. package/esm2015/material.js +10 -10
  185. package/esm2015/material.js.map +1 -1
  186. package/esm2015/menu.js +18 -10
  187. package/esm2015/menu.js.map +1 -1
  188. package/esm2015/paginator.js +1 -1
  189. package/esm2015/paginator.js.map +1 -1
  190. package/esm2015/progress-bar.js +26 -7
  191. package/esm2015/progress-bar.js.map +1 -1
  192. package/esm2015/radio.js.map +1 -1
  193. package/esm2015/select.js +8 -3
  194. package/esm2015/select.js.map +1 -1
  195. package/esm2015/sidenav.js +5 -1
  196. package/esm2015/sidenav.js.map +1 -1
  197. package/esm2015/slide-toggle.js +7 -2
  198. package/esm2015/slide-toggle.js.map +1 -1
  199. package/esm2015/slider.js +1 -1
  200. package/esm2015/slider.js.map +1 -1
  201. package/esm2015/snack-bar.js +1 -1
  202. package/esm2015/snack-bar.js.map +1 -1
  203. package/esm2015/stepper.js +25 -21
  204. package/esm2015/stepper.js.map +1 -1
  205. package/esm2015/table.js +22 -32
  206. package/esm2015/table.js.map +1 -1
  207. package/esm2015/tabs.js +28 -41
  208. package/esm2015/tabs.js.map +1 -1
  209. package/esm2015/tooltip.js +9 -9
  210. package/esm2015/tooltip.js.map +1 -1
  211. package/esm2015/tree.js +13 -5
  212. package/esm2015/tree.js.map +1 -1
  213. package/esm5/autocomplete.es5.js +33 -2
  214. package/esm5/autocomplete.es5.js.map +1 -1
  215. package/esm5/badge.es5.js +7 -3
  216. package/esm5/badge.es5.js.map +1 -1
  217. package/esm5/bottom-sheet.es5.js.map +1 -1
  218. package/esm5/button-toggle.es5.js +13 -4
  219. package/esm5/button-toggle.es5.js.map +1 -1
  220. package/esm5/button.es5.js +2 -2
  221. package/esm5/button.es5.js.map +1 -1
  222. package/esm5/card.es5.js +1 -1
  223. package/esm5/card.es5.js.map +1 -1
  224. package/esm5/checkbox.es5.js +7 -1
  225. package/esm5/checkbox.es5.js.map +1 -1
  226. package/esm5/chips.es5.js +112 -93
  227. package/esm5/chips.es5.js.map +1 -1
  228. package/esm5/core.es5.js +10 -12
  229. package/esm5/core.es5.js.map +1 -1
  230. package/esm5/datepicker.es5.js +36 -39
  231. package/esm5/datepicker.es5.js.map +1 -1
  232. package/esm5/dialog.es5.js.map +1 -1
  233. package/esm5/expansion.es5.js +202 -78
  234. package/esm5/expansion.es5.js.map +1 -1
  235. package/esm5/form-field.es5.js +59 -47
  236. package/esm5/form-field.es5.js.map +1 -1
  237. package/esm5/grid-list.es5.js +7 -30
  238. package/esm5/grid-list.es5.js.map +1 -1
  239. package/esm5/icon.es5.js.map +1 -1
  240. package/esm5/input.es5.js +13 -7
  241. package/esm5/input.es5.js.map +1 -1
  242. package/esm5/list.es5.js +12 -14
  243. package/esm5/list.es5.js.map +1 -1
  244. package/esm5/material.es5.js +10 -10
  245. package/esm5/material.es5.js.map +1 -1
  246. package/esm5/menu.es5.js +17 -8
  247. package/esm5/menu.es5.js.map +1 -1
  248. package/esm5/paginator.es5.js +1 -1
  249. package/esm5/paginator.es5.js.map +1 -1
  250. package/esm5/progress-bar.es5.js +26 -10
  251. package/esm5/progress-bar.es5.js.map +1 -1
  252. package/esm5/radio.es5.js.map +1 -1
  253. package/esm5/select.es5.js +8 -3
  254. package/esm5/select.es5.js.map +1 -1
  255. package/esm5/sidenav.es5.js +5 -1
  256. package/esm5/sidenav.es5.js.map +1 -1
  257. package/esm5/slide-toggle.es5.js +8 -2
  258. package/esm5/slide-toggle.es5.js.map +1 -1
  259. package/esm5/slider.es5.js +1 -1
  260. package/esm5/slider.es5.js.map +1 -1
  261. package/esm5/snack-bar.es5.js +1 -1
  262. package/esm5/snack-bar.es5.js.map +1 -1
  263. package/esm5/stepper.es5.js +25 -17
  264. package/esm5/stepper.es5.js.map +1 -1
  265. package/esm5/table.es5.js +22 -30
  266. package/esm5/table.es5.js.map +1 -1
  267. package/esm5/tabs.es5.js +29 -36
  268. package/esm5/tabs.es5.js.map +1 -1
  269. package/esm5/tooltip.es5.js +11 -11
  270. package/esm5/tooltip.es5.js.map +1 -1
  271. package/esm5/tree.es5.js +13 -5
  272. package/esm5/tree.es5.js.map +1 -1
  273. package/expansion/typings/accordion-base.d.ts +30 -0
  274. package/expansion/typings/accordion.d.ts +18 -4
  275. package/expansion/typings/expansion-panel-header.d.ts +13 -2
  276. package/expansion/typings/expansion-panel.d.ts +10 -6
  277. package/expansion/typings/index.metadata.json +1 -1
  278. package/expansion/typings/public-api.d.ts +1 -0
  279. package/form-field/typings/form-field.d.ts +3 -5
  280. package/form-field/typings/index.metadata.json +1 -1
  281. package/grid-list/typings/grid-list.d.ts +1 -1
  282. package/grid-list/typings/grid-tile.d.ts +2 -2
  283. package/grid-list/typings/index.metadata.json +1 -1
  284. package/icon/typings/icon.d.ts +1 -1
  285. package/icon/typings/index.metadata.json +1 -1
  286. package/input/typings/autosize.d.ts +2 -1
  287. package/input/typings/index.metadata.json +1 -1
  288. package/input/typings/input.d.ts +2 -2
  289. package/list/typings/index.metadata.json +1 -1
  290. package/list/typings/list.d.ts +1 -1
  291. package/list/typings/selection-list.d.ts +4 -4
  292. package/menu/typings/index.d.ts +4 -4
  293. package/menu/typings/index.metadata.json +1 -1
  294. package/menu/typings/menu-content.d.ts +3 -0
  295. package/menu/typings/menu-directive.d.ts +1 -1
  296. package/menu/typings/menu-item.d.ts +1 -1
  297. package/menu/typings/menu-trigger.d.ts +1 -1
  298. package/package.json +7 -5
  299. package/paginator/typings/index.metadata.json +1 -1
  300. package/prebuilt-themes/deeppurple-amber.css +1 -1
  301. package/prebuilt-themes/indigo-pink.css +1 -1
  302. package/prebuilt-themes/pink-bluegrey.css +1 -1
  303. package/prebuilt-themes/purple-green.css +1 -1
  304. package/progress-bar/typings/index.metadata.json +1 -1
  305. package/progress-bar/typings/progress-bar.d.ts +17 -3
  306. package/radio/typings/radio.d.ts +1 -1
  307. package/sidenav/typings/drawer.d.ts +2 -2
  308. package/sidenav/typings/index.metadata.json +1 -1
  309. package/slide-toggle/typings/index.metadata.json +1 -1
  310. package/slide-toggle/typings/slide-toggle.d.ts +3 -3
  311. package/slider/typings/index.metadata.json +1 -1
  312. package/snack-bar/typings/index.metadata.json +1 -1
  313. package/snack-bar/typings/snack-bar-container.d.ts +1 -1
  314. package/stepper/typings/index.metadata.json +1 -1
  315. package/stepper/typings/step-header.d.ts +2 -2
  316. package/stepper/typings/step-label.d.ts +2 -10
  317. package/stepper/typings/stepper-button.d.ts +4 -2
  318. package/stepper/typings/stepper.d.ts +4 -3
  319. package/table/typings/cell.d.ts +8 -5
  320. package/table/typings/index.metadata.json +1 -1
  321. package/table/typings/row.d.ts +6 -3
  322. package/table/typings/table.d.ts +2 -8
  323. package/tabs/typings/index.d.ts +5 -5
  324. package/tabs/typings/index.metadata.json +1 -1
  325. package/tabs/typings/ink-bar.d.ts +1 -1
  326. package/tabs/typings/tab-body.d.ts +1 -1
  327. package/tabs/typings/tab-label.d.ts +2 -10
  328. package/tabs/typings/tab.d.ts +2 -4
  329. package/tooltip/typings/index.metadata.json +1 -1
  330. package/tooltip/typings/tooltip.d.ts +3 -3
  331. package/tree/typings/index.metadata.json +1 -1
  332. package/tree/typings/node.d.ts +6 -5
  333. package/tree/typings/padding.d.ts +2 -1
  334. package/tree/typings/toggle.d.ts +9 -1
  335. package/tree/typings/tree.d.ts +9 -1
  336. package/typings/autocomplete/autocomplete-trigger.d.ts +12 -1
  337. package/typings/autocomplete/autocomplete.d.ts +1 -1
  338. package/typings/autocomplete/index.d.ts +1 -1
  339. package/typings/autocomplete/index.metadata.json +1 -1
  340. package/typings/badge/badge.d.ts +6 -2
  341. package/typings/badge/index.metadata.json +1 -1
  342. package/typings/bottom-sheet/bottom-sheet-container.d.ts +1 -1
  343. package/typings/bottom-sheet/index.metadata.json +1 -1
  344. package/typings/button/index.metadata.json +1 -1
  345. package/typings/button-toggle/button-toggle.d.ts +4 -2
  346. package/typings/button-toggle/index.metadata.json +1 -1
  347. package/typings/card/index.metadata.json +1 -1
  348. package/typings/checkbox/checkbox.d.ts +2 -2
  349. package/typings/checkbox/index.metadata.json +1 -1
  350. package/typings/chips/chip-input.d.ts +9 -9
  351. package/typings/chips/chip-list.d.ts +12 -19
  352. package/typings/chips/chip.d.ts +3 -2
  353. package/typings/chips/index.metadata.json +1 -1
  354. package/typings/core/index.metadata.json +1 -1
  355. package/typings/core/line/line.d.ts +1 -1
  356. package/typings/core/option/option.d.ts +3 -4
  357. package/typings/core/ripple/ripple-renderer.d.ts +1 -1
  358. package/typings/core/ripple/ripple.d.ts +1 -1
  359. package/typings/datepicker/calendar-body.d.ts +1 -1
  360. package/typings/datepicker/datepicker-input.d.ts +3 -5
  361. package/typings/datepicker/datepicker-toggle.d.ts +3 -1
  362. package/typings/datepicker/datepicker.d.ts +1 -1
  363. package/typings/datepicker/index.metadata.json +1 -1
  364. package/typings/dialog/dialog-container.d.ts +1 -1
  365. package/typings/dialog/dialog-content-directives.d.ts +2 -2
  366. package/typings/dialog/index.metadata.json +1 -1
  367. package/typings/esm5/autocomplete/autocomplete-trigger.d.ts +12 -1
  368. package/typings/esm5/autocomplete/autocomplete.d.ts +1 -1
  369. package/typings/esm5/autocomplete/index.d.ts +1 -1
  370. package/typings/esm5/autocomplete/index.metadata.json +1 -1
  371. package/typings/esm5/badge/badge.d.ts +6 -2
  372. package/typings/esm5/badge/index.metadata.json +1 -1
  373. package/typings/esm5/bottom-sheet/bottom-sheet-container.d.ts +1 -1
  374. package/typings/esm5/bottom-sheet/index.metadata.json +1 -1
  375. package/typings/esm5/button/index.metadata.json +1 -1
  376. package/typings/esm5/button-toggle/button-toggle.d.ts +4 -2
  377. package/typings/esm5/button-toggle/index.metadata.json +1 -1
  378. package/typings/esm5/card/index.metadata.json +1 -1
  379. package/typings/esm5/checkbox/checkbox.d.ts +2 -2
  380. package/typings/esm5/checkbox/index.metadata.json +1 -1
  381. package/typings/esm5/chips/chip-input.d.ts +9 -9
  382. package/typings/esm5/chips/chip-list.d.ts +12 -19
  383. package/typings/esm5/chips/chip.d.ts +3 -2
  384. package/typings/esm5/chips/index.metadata.json +1 -1
  385. package/typings/esm5/core/index.metadata.json +1 -1
  386. package/typings/esm5/core/line/line.d.ts +1 -1
  387. package/typings/esm5/core/option/option.d.ts +3 -4
  388. package/typings/esm5/core/ripple/ripple-renderer.d.ts +1 -1
  389. package/typings/esm5/core/ripple/ripple.d.ts +1 -1
  390. package/typings/esm5/datepicker/calendar-body.d.ts +1 -1
  391. package/typings/esm5/datepicker/datepicker-input.d.ts +3 -5
  392. package/typings/esm5/datepicker/datepicker-toggle.d.ts +3 -1
  393. package/typings/esm5/datepicker/datepicker.d.ts +1 -1
  394. package/typings/esm5/datepicker/index.metadata.json +1 -1
  395. package/typings/esm5/dialog/dialog-container.d.ts +1 -1
  396. package/typings/esm5/dialog/dialog-content-directives.d.ts +2 -2
  397. package/typings/esm5/dialog/index.metadata.json +1 -1
  398. package/typings/esm5/expansion/accordion-base.d.ts +30 -0
  399. package/typings/esm5/expansion/accordion.d.ts +18 -4
  400. package/typings/esm5/expansion/expansion-panel-header.d.ts +13 -2
  401. package/typings/esm5/expansion/expansion-panel.d.ts +10 -6
  402. package/typings/esm5/expansion/index.metadata.json +1 -1
  403. package/typings/esm5/expansion/public-api.d.ts +1 -0
  404. package/typings/esm5/form-field/form-field.d.ts +3 -5
  405. package/typings/esm5/form-field/index.metadata.json +1 -1
  406. package/typings/esm5/grid-list/grid-list.d.ts +1 -1
  407. package/typings/esm5/grid-list/grid-tile.d.ts +2 -2
  408. package/typings/esm5/grid-list/index.metadata.json +1 -1
  409. package/typings/esm5/icon/icon.d.ts +1 -1
  410. package/typings/esm5/icon/index.metadata.json +1 -1
  411. package/typings/esm5/index.metadata.json +1 -1
  412. package/typings/esm5/input/autosize.d.ts +2 -1
  413. package/typings/esm5/input/index.metadata.json +1 -1
  414. package/typings/esm5/input/input.d.ts +2 -2
  415. package/typings/esm5/list/index.metadata.json +1 -1
  416. package/typings/esm5/list/list.d.ts +1 -1
  417. package/typings/esm5/list/selection-list.d.ts +4 -4
  418. package/typings/esm5/menu/index.d.ts +4 -4
  419. package/typings/esm5/menu/index.metadata.json +1 -1
  420. package/typings/esm5/menu/menu-content.d.ts +3 -0
  421. package/typings/esm5/menu/menu-directive.d.ts +1 -1
  422. package/typings/esm5/menu/menu-item.d.ts +1 -1
  423. package/typings/esm5/menu/menu-trigger.d.ts +1 -1
  424. package/typings/esm5/paginator/index.metadata.json +1 -1
  425. package/typings/esm5/progress-bar/index.metadata.json +1 -1
  426. package/typings/esm5/progress-bar/progress-bar.d.ts +17 -3
  427. package/typings/esm5/radio/radio.d.ts +1 -1
  428. package/typings/esm5/sidenav/drawer.d.ts +2 -2
  429. package/typings/esm5/sidenav/index.metadata.json +1 -1
  430. package/typings/esm5/slide-toggle/index.metadata.json +1 -1
  431. package/typings/esm5/slide-toggle/slide-toggle.d.ts +3 -3
  432. package/typings/esm5/slider/index.metadata.json +1 -1
  433. package/typings/esm5/snack-bar/index.metadata.json +1 -1
  434. package/typings/esm5/snack-bar/snack-bar-container.d.ts +1 -1
  435. package/typings/esm5/stepper/index.metadata.json +1 -1
  436. package/typings/esm5/stepper/step-header.d.ts +2 -2
  437. package/typings/esm5/stepper/step-label.d.ts +2 -10
  438. package/typings/esm5/stepper/stepper-button.d.ts +4 -2
  439. package/typings/esm5/stepper/stepper.d.ts +4 -3
  440. package/typings/esm5/table/cell.d.ts +8 -5
  441. package/typings/esm5/table/index.metadata.json +1 -1
  442. package/typings/esm5/table/row.d.ts +6 -3
  443. package/typings/esm5/table/table.d.ts +2 -8
  444. package/typings/esm5/tabs/index.d.ts +5 -5
  445. package/typings/esm5/tabs/index.metadata.json +1 -1
  446. package/typings/esm5/tabs/ink-bar.d.ts +1 -1
  447. package/typings/esm5/tabs/tab-body.d.ts +1 -1
  448. package/typings/esm5/tabs/tab-label.d.ts +2 -10
  449. package/typings/esm5/tabs/tab.d.ts +2 -4
  450. package/typings/esm5/tooltip/index.metadata.json +1 -1
  451. package/typings/esm5/tooltip/tooltip.d.ts +3 -3
  452. package/typings/esm5/tree/index.metadata.json +1 -1
  453. package/typings/esm5/tree/node.d.ts +6 -5
  454. package/typings/esm5/tree/padding.d.ts +2 -1
  455. package/typings/esm5/tree/toggle.d.ts +9 -1
  456. package/typings/esm5/tree/tree.d.ts +9 -1
  457. package/typings/expansion/accordion-base.d.ts +30 -0
  458. package/typings/expansion/accordion.d.ts +18 -4
  459. package/typings/expansion/expansion-panel-header.d.ts +13 -2
  460. package/typings/expansion/expansion-panel.d.ts +10 -6
  461. package/typings/expansion/index.metadata.json +1 -1
  462. package/typings/expansion/public-api.d.ts +1 -0
  463. package/typings/form-field/form-field.d.ts +3 -5
  464. package/typings/form-field/index.metadata.json +1 -1
  465. package/typings/grid-list/grid-list.d.ts +1 -1
  466. package/typings/grid-list/grid-tile.d.ts +2 -2
  467. package/typings/grid-list/index.metadata.json +1 -1
  468. package/typings/icon/icon.d.ts +1 -1
  469. package/typings/icon/index.metadata.json +1 -1
  470. package/typings/index.metadata.json +1 -1
  471. package/typings/input/autosize.d.ts +2 -1
  472. package/typings/input/index.metadata.json +1 -1
  473. package/typings/input/input.d.ts +2 -2
  474. package/typings/list/index.metadata.json +1 -1
  475. package/typings/list/list.d.ts +1 -1
  476. package/typings/list/selection-list.d.ts +4 -4
  477. package/typings/menu/index.d.ts +4 -4
  478. package/typings/menu/index.metadata.json +1 -1
  479. package/typings/menu/menu-content.d.ts +3 -0
  480. package/typings/menu/menu-directive.d.ts +1 -1
  481. package/typings/menu/menu-item.d.ts +1 -1
  482. package/typings/menu/menu-trigger.d.ts +1 -1
  483. package/typings/paginator/index.metadata.json +1 -1
  484. package/typings/progress-bar/index.metadata.json +1 -1
  485. package/typings/progress-bar/progress-bar.d.ts +17 -3
  486. package/typings/radio/radio.d.ts +1 -1
  487. package/typings/sidenav/drawer.d.ts +2 -2
  488. package/typings/sidenav/index.metadata.json +1 -1
  489. package/typings/slide-toggle/index.metadata.json +1 -1
  490. package/typings/slide-toggle/slide-toggle.d.ts +3 -3
  491. package/typings/slider/index.metadata.json +1 -1
  492. package/typings/snack-bar/index.metadata.json +1 -1
  493. package/typings/snack-bar/snack-bar-container.d.ts +1 -1
  494. package/typings/stepper/index.metadata.json +1 -1
  495. package/typings/stepper/step-header.d.ts +2 -2
  496. package/typings/stepper/step-label.d.ts +2 -10
  497. package/typings/stepper/stepper-button.d.ts +4 -2
  498. package/typings/stepper/stepper.d.ts +4 -3
  499. package/typings/table/cell.d.ts +8 -5
  500. package/typings/table/index.metadata.json +1 -1
  501. package/typings/table/row.d.ts +6 -3
  502. package/typings/table/table.d.ts +2 -8
  503. package/typings/tabs/index.d.ts +5 -5
  504. package/typings/tabs/index.metadata.json +1 -1
  505. package/typings/tabs/ink-bar.d.ts +1 -1
  506. package/typings/tabs/tab-body.d.ts +1 -1
  507. package/typings/tabs/tab-label.d.ts +2 -10
  508. package/typings/tabs/tab.d.ts +2 -4
  509. package/typings/tooltip/index.metadata.json +1 -1
  510. package/typings/tooltip/tooltip.d.ts +3 -3
  511. package/typings/tree/index.metadata.json +1 -1
  512. package/typings/tree/node.d.ts +6 -5
  513. package/typings/tree/padding.d.ts +2 -1
  514. package/typings/tree/toggle.d.ts +9 -1
  515. package/typings/tree/tree.d.ts +9 -1
  516. package/grid-list/typings/grid-list-measure.d.ts +0 -17
  517. package/typings/esm5/grid-list/grid-list-measure.d.ts +0 -17
  518. package/typings/grid-list/grid-list-measure.d.ts +0 -17
@@ -5,5 +5,5 @@
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
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/cdk/coercion"),require("@angular/cdk/accordion"),require("@angular/animations"),require("@angular/cdk/collections"),require("@angular/cdk/portal"),require("rxjs"),require("rxjs/operators"),require("@angular/cdk/a11y"),require("@angular/cdk/keycodes"),require("@angular/common")):"function"==typeof define&&define.amd?define("@angular/material/expansion",["exports","@angular/core","@angular/cdk/coercion","@angular/cdk/accordion","@angular/animations","@angular/cdk/collections","@angular/cdk/portal","rxjs","rxjs/operators","@angular/cdk/a11y","@angular/cdk/keycodes","@angular/common"],t):t((e.ng=e.ng||{},e.ng.material=e.ng.material||{},e.ng.material.expansion={}),e.ng.core,e.ng.cdk.coercion,e.ng.cdk.accordion,e.ng.animations,e.ng.cdk.collections,e.ng.cdk.portal,e.rxjs,e.rxjs.operators,e.ng.cdk.a11y,e.ng.cdk.keycodes,e.ng.common)}(this,function(e,t,n,a,o,i,r,p,s,d,c,l){"use strict";function g(e,t){function n(){this.constructor=e}u(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var u=function(e,t){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},h=function(e){function a(){var t=null!==e&&e.apply(this,arguments)||this;return t._hideToggle=!1,t.displayMode="default",t}return g(a,e),Object.defineProperty(a.prototype,"hideToggle",{get:function(){return this._hideToggle},set:function(e){this._hideToggle=n.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),a.decorators=[{type:t.Directive,args:[{selector:"mat-accordion",exportAs:"matAccordion",host:{class:"mat-accordion"}}]}],a.propDecorators={hideToggle:[{type:t.Input}],displayMode:[{type:t.Input}]},a}(a.CdkAccordion),m={indicatorRotate:o.trigger("indicatorRotate",[o.state("collapsed",o.style({transform:"rotate(0deg)"})),o.state("expanded",o.style({transform:"rotate(180deg)"})),o.transition("expanded <=> collapsed",o.animate("225ms cubic-bezier(0.4,0.0,0.2,1)"))]),expansionHeaderHeight:o.trigger("expansionHeight",[o.state("collapsed",o.style({height:"{{collapsedHeight}}"}),{params:{collapsedHeight:"48px"}}),o.state("expanded",o.style({height:"{{expandedHeight}}"}),{params:{expandedHeight:"64px"}}),o.transition("expanded <=> collapsed",o.group([o.query("@indicatorRotate",o.animateChild(),{optional:!0}),o.animate("225ms cubic-bezier(0.4,0.0,0.2,1)")]))]),bodyExpansion:o.trigger("bodyExpansion",[o.state("collapsed",o.style({height:"0px",visibility:"hidden"})),o.state("expanded",o.style({height:"*",visibility:"visible"})),o.transition("expanded <=> collapsed",o.animate("225ms cubic-bezier(0.4,0.0,0.2,1)"))])},x=function(){function e(e){this._template=e}return e.decorators=[{type:t.Directive,args:[{selector:"ng-template[matExpansionPanelContent]"}]}],e.ctorParameters=function(){return[{type:t.TemplateRef}]},e}(),y=0,f=function(e){function a(t,n,a,o){var i=e.call(this,t,n,a)||this;return i._viewContainerRef=o,i._hideToggle=!1,i._inputChanges=new p.Subject,i._headerId="mat-expansion-panel-header-"+y++,i.accordion=t,i}return g(a,e),Object.defineProperty(a.prototype,"hideToggle",{get:function(){return this._hideToggle},set:function(e){this._hideToggle=n.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),a.prototype._getHideToggle=function(){return this.accordion?this.accordion.hideToggle:this.hideToggle},a.prototype._hasSpacing=function(){return!!this.accordion&&"default"===(this.expanded?this.accordion.displayMode:this._getExpandedState())},a.prototype._getExpandedState=function(){return this.expanded?"expanded":"collapsed"},a.prototype.ngAfterContentInit=function(){var e=this;this._lazyContent&&this.opened.pipe(s.startWith(null),s.filter(function(){return e.expanded&&!e._portal}),s.take(1)).subscribe(function(){e._portal=new r.TemplatePortal(e._lazyContent._template,e._viewContainerRef)})},a.prototype.ngOnChanges=function(e){this._inputChanges.next(e)},a.prototype.ngOnDestroy=function(){e.prototype.ngOnDestroy.call(this),this._inputChanges.complete()},a.prototype._bodyAnimation=function(e){var t=e.element.classList,n=e.phaseName,a=e.toState;"done"===n&&"expanded"===a?t.add("mat-expanded"):"start"===n&&"collapsed"===a&&t.remove("mat-expanded")},a.decorators=[{type:t.Component,args:[{styles:[".mat-expansion-panel{transition:box-shadow 280ms cubic-bezier(.4,0,.2,1);box-sizing:content-box;display:block;margin:0;transition:margin 225ms cubic-bezier(.4,0,.2,1)}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}@media screen and (-ms-high-contrast:active){.mat-expansion-panel{outline:solid 1px}}.mat-expansion-panel-content{overflow:hidden}.mat-expansion-panel-content.mat-expanded{overflow:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row button.mat-button{margin-left:8px}[dir=rtl] .mat-action-row button.mat-button{margin-left:0;margin-right:8px}"],selector:"mat-expansion-panel",exportAs:"matExpansionPanel",template:'<ng-content select="mat-expansion-panel-header"></ng-content><div class="mat-expansion-panel-content" role="region" [@bodyExpansion]="_getExpandedState()" (@bodyExpansion.done)="_bodyAnimation($event)" (@bodyExpansion.start)="_bodyAnimation($event)" [attr.aria-labelledby]="_headerId" [id]="id" #body><div class="mat-expansion-panel-body"><ng-content></ng-content><ng-template [cdkPortalOutlet]="_portal"></ng-template></div><ng-content select="mat-action-row"></ng-content></div>',encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush,inputs:["disabled","expanded"],outputs:["opened","closed","expandedChange"],animations:[m.bodyExpansion],providers:[{provide:h,useValue:void 0}],host:{class:"mat-expansion-panel","[class.mat-expanded]":"expanded","[class.mat-expansion-panel-spacing]":"_hasSpacing()"}}]}],a.ctorParameters=function(){return[{type:h,decorators:[{type:t.Optional},{type:t.SkipSelf}]},{type:t.ChangeDetectorRef},{type:i.UniqueSelectionDispatcher},{type:t.ViewContainerRef}]},a.propDecorators={hideToggle:[{type:t.Input}],_lazyContent:[{type:t.ContentChild,args:[x]}]},a}(a.CdkAccordionItem),b=function(){function e(){}return e.decorators=[{type:t.Directive,args:[{selector:"mat-action-row",host:{class:"mat-action-row"}}]}],e}(),_=function(){function e(e,t,n,a){var o=this;this.panel=e,this._element=t,this._focusMonitor=n,this._changeDetectorRef=a,this._parentChangeSubscription=p.Subscription.EMPTY,this._parentChangeSubscription=p.merge(e.opened,e.closed,e._inputChanges.pipe(s.filter(function(e){return!(!e.hideToggle&&!e.disabled)}))).subscribe(function(){return o._changeDetectorRef.markForCheck()}),n.monitor(t.nativeElement)}return e.prototype._toggle=function(){this.panel.toggle()},e.prototype._isExpanded=function(){return this.panel.expanded},e.prototype._getExpandedState=function(){return this.panel._getExpandedState()},e.prototype._getPanelId=function(){return this.panel.id},e.prototype._showToggle=function(){return!this.panel.hideToggle&&!this.panel.disabled},e.prototype._keydown=function(e){switch(e.keyCode){case c.SPACE:case c.ENTER:e.preventDefault(),this._toggle();break;default:return}},e.prototype.ngOnDestroy=function(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element.nativeElement)},e.decorators=[{type:t.Component,args:[{selector:"mat-expansion-panel-header",styles:[".mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:0}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-description,.mat-expansion-panel-header-title{display:flex;flex-grow:1;margin-right:16px}[dir=rtl] .mat-expansion-panel-header-description,[dir=rtl] .mat-expansion-panel-header-title{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:'';display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}"],template:'<span class="mat-content"><ng-content select="mat-panel-title"></ng-content><ng-content select="mat-panel-description"></ng-content><ng-content></ng-content></span><span [@indicatorRotate]="_getExpandedState()" *ngIf="_showToggle()" class="mat-expansion-indicator"></span>',encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush,animations:[m.indicatorRotate,m.expansionHeaderHeight],host:{class:"mat-expansion-panel-header",role:"button","[attr.id]":"panel._headerId","[attr.tabindex]":"panel.disabled ? -1 : 0","[attr.aria-controls]":"_getPanelId()","[attr.aria-expanded]":"_isExpanded()","[attr.aria-disabled]":"panel.disabled","[class.mat-expanded]":"_isExpanded()","(click)":"_toggle()","(keydown)":"_keydown($event)","[@expansionHeight]":"{\n value: _getExpandedState(),\n params: {\n collapsedHeight: collapsedHeight,\n expandedHeight: expandedHeight\n }\n }"}}]}],e.ctorParameters=function(){return[{type:f,decorators:[{type:t.Host}]},{type:t.ElementRef},{type:d.FocusMonitor},{type:t.ChangeDetectorRef}]},e.propDecorators={expandedHeight:[{type:t.Input}],collapsedHeight:[{type:t.Input}]},e}(),v=function(){function e(){}return e.decorators=[{type:t.Directive,args:[{selector:"mat-panel-description",host:{class:"mat-expansion-panel-header-description"}}]}],e}(),k=function(){function e(){}return e.decorators=[{type:t.Directive,args:[{selector:"mat-panel-title",host:{class:"mat-expansion-panel-header-title"}}]}],e}(),E=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[l.CommonModule,a.CdkAccordionModule,r.PortalModule],exports:[h,f,b,_,k,v,x],declarations:[h,f,b,_,k,v,x]}]}],e}();e.MatExpansionModule=E,e.MatAccordion=h,e.MatExpansionPanel=f,e.MatExpansionPanelActionRow=b,e.MatExpansionPanelHeader=_,e.MatExpansionPanelDescription=v,e.MatExpansionPanelTitle=k,e.MatExpansionPanelContent=x,e.EXPANSION_PANEL_ANIMATION_TIMING="225ms cubic-bezier(0.4,0.0,0.2,1)",e.matExpansionAnimations=m,Object.defineProperty(e,"__esModule",{value:!0})});
8
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/animations"),require("@angular/cdk/accordion"),require("@angular/cdk/coercion"),require("@angular/cdk/collections"),require("@angular/cdk/portal"),require("@angular/common"),require("rxjs"),require("rxjs/operators"),require("@angular/cdk/a11y"),require("@angular/cdk/keycodes")):"function"==typeof define&&define.amd?define("@angular/material/expansion",["exports","@angular/core","@angular/animations","@angular/cdk/accordion","@angular/cdk/coercion","@angular/cdk/collections","@angular/cdk/portal","@angular/common","rxjs","rxjs/operators","@angular/cdk/a11y","@angular/cdk/keycodes"],t):t((e.ng=e.ng||{},e.ng.material=e.ng.material||{},e.ng.material.expansion={}),e.ng.core,e.ng.animations,e.ng.cdk.accordion,e.ng.cdk.coercion,e.ng.cdk.collections,e.ng.cdk.portal,e.ng.common,e.rxjs,e.rxjs.operators,e.ng.cdk.a11y,e.ng.cdk.keycodes)}(this,function(e,t,n,a,o,i,r,s,p,c,d,l){"use strict";function u(e,t){function n(){this.constructor=e}g(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var g=function(e,t){return(g=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)},h=new t.InjectionToken("MAT_ACCORDION"),m={indicatorRotate:n.trigger("indicatorRotate",[n.state("collapsed",n.style({transform:"rotate(0deg)"})),n.state("expanded",n.style({transform:"rotate(180deg)"})),n.transition("expanded <=> collapsed",n.animate("225ms cubic-bezier(0.4,0.0,0.2,1)"))]),expansionHeaderHeight:n.trigger("expansionHeight",[n.state("collapsed",n.style({height:"{{collapsedHeight}}"}),{params:{collapsedHeight:"48px"}}),n.state("expanded",n.style({height:"{{expandedHeight}}"}),{params:{expandedHeight:"64px"}}),n.transition("expanded <=> collapsed",n.group([n.query("@indicatorRotate",n.animateChild(),{optional:!0}),n.animate("225ms cubic-bezier(0.4,0.0,0.2,1)")]))]),bodyExpansion:n.trigger("bodyExpansion",[n.state("collapsed",n.style({height:"0px",visibility:"hidden"})),n.state("expanded",n.style({height:"*",visibility:"visible"})),n.transition("expanded <=> collapsed",n.animate("225ms cubic-bezier(0.4,0.0,0.2,1)"))])},x=function(){function e(e){this._template=e}return e.decorators=[{type:t.Directive,args:[{selector:"ng-template[matExpansionPanelContent]"}]}],e.ctorParameters=function(){return[{type:t.TemplateRef}]},e}(),y=a.CdkAccordionItem,f=0,b=function(e){function n(t,n,a,o,i){var r=e.call(this,t,n,a)||this;return r._viewContainerRef=o,r._hideToggle=!1,r._inputChanges=new p.Subject,r._headerId="mat-expansion-panel-header-"+f++,r.accordion=t,r._document=i,r}return u(n,e),Object.defineProperty(n.prototype,"hideToggle",{get:function(){return this._hideToggle||this.accordion&&this.accordion.hideToggle},set:function(e){this._hideToggle=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),n.prototype._hasSpacing=function(){return!!this.accordion&&"default"===(this.expanded?this.accordion.displayMode:this._getExpandedState())},n.prototype._getExpandedState=function(){return this.expanded?"expanded":"collapsed"},n.prototype.ngAfterContentInit=function(){var e=this;this._lazyContent&&this.opened.pipe(c.startWith(null),c.filter(function(){return e.expanded&&!e._portal}),c.take(1)).subscribe(function(){e._portal=new r.TemplatePortal(e._lazyContent._template,e._viewContainerRef)})},n.prototype.ngOnChanges=function(e){this._inputChanges.next(e)},n.prototype.ngOnDestroy=function(){e.prototype.ngOnDestroy.call(this),this._inputChanges.complete()},n.prototype._bodyAnimation=function(e){var t=e.element.classList,n=e.phaseName,a=e.toState;"done"===n&&"expanded"===a?t.add("mat-expanded"):"start"===n&&"collapsed"===a&&t.remove("mat-expanded")},n.prototype._containsFocus=function(){if(this._body&&this._document){var e=this._document.activeElement,t=this._body.nativeElement;return e===t||t.contains(e)}return!1},n.decorators=[{type:t.Component,args:[{styles:[".mat-expansion-panel{transition:box-shadow 280ms cubic-bezier(.4,0,.2,1);box-sizing:content-box;display:block;margin:0;transition:margin 225ms cubic-bezier(.4,0,.2,1)}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}@media screen and (-ms-high-contrast:active){.mat-expansion-panel{outline:solid 1px}}.mat-expansion-panel-content{overflow:hidden}.mat-expansion-panel-content.mat-expanded{overflow:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row button.mat-button{margin-left:8px}[dir=rtl] .mat-action-row button.mat-button{margin-left:0;margin-right:8px}"],selector:"mat-expansion-panel",exportAs:"matExpansionPanel",template:'<ng-content select="mat-expansion-panel-header"></ng-content><div class="mat-expansion-panel-content" role="region" [@bodyExpansion]="_getExpandedState()" (@bodyExpansion.done)="_bodyAnimation($event)" (@bodyExpansion.start)="_bodyAnimation($event)" [attr.aria-labelledby]="_headerId" [id]="id" #body><div class="mat-expansion-panel-body"><ng-content></ng-content><ng-template [cdkPortalOutlet]="_portal"></ng-template></div><ng-content select="mat-action-row"></ng-content></div>',encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush,inputs:["disabled","expanded"],outputs:["opened","closed","expandedChange"],animations:[m.bodyExpansion],providers:[{provide:h,useValue:void 0}],host:{class:"mat-expansion-panel","[class.mat-expanded]":"expanded","[class.mat-expansion-panel-spacing]":"_hasSpacing()"}}]}],n.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Optional},{type:t.SkipSelf},{type:t.Inject,args:[h]}]},{type:t.ChangeDetectorRef},{type:i.UniqueSelectionDispatcher},{type:t.ViewContainerRef},{type:void 0,decorators:[{type:t.Inject,args:[s.DOCUMENT]}]}]},n.propDecorators={hideToggle:[{type:t.Input}],_lazyContent:[{type:t.ContentChild,args:[x]}],_body:[{type:t.ViewChild,args:["body"]}]},n}(a.CdkAccordionItem),_=function(){function e(){}return e.decorators=[{type:t.Directive,args:[{selector:"mat-action-row",host:{class:"mat-action-row"}}]}],e}(),v=function(){function e(e,t,n,a){var o=this;this.panel=e,this._element=t,this._focusMonitor=n,this._changeDetectorRef=a,this._parentChangeSubscription=p.Subscription.EMPTY;var i=e.accordion?e.accordion._stateChanges.pipe(c.filter(function(e){return!!e.hideToggle})):p.EMPTY;this._parentChangeSubscription=p.merge(e.opened,e.closed,i,e._inputChanges.pipe(c.filter(function(e){return!(!e.hideToggle&&!e.disabled)}))).subscribe(function(){return o._changeDetectorRef.markForCheck()}),e.closed.pipe(c.filter(function(){return e._containsFocus()})).subscribe(function(){return n.focusVia(t.nativeElement,"program")}),n.monitor(t.nativeElement).subscribe(function(t){t&&e.accordion&&e.accordion._handleHeaderFocus(o)})}return Object.defineProperty(e.prototype,"disabled",{get:function(){return this.panel.disabled},enumerable:!0,configurable:!0}),e.prototype._toggle=function(){this.panel.toggle()},e.prototype._isExpanded=function(){return this.panel.expanded},e.prototype._getExpandedState=function(){return this.panel._getExpandedState()},e.prototype._getPanelId=function(){return this.panel.id},e.prototype._showToggle=function(){return!this.panel.hideToggle&&!this.panel.disabled},e.prototype._keydown=function(e){switch(e.keyCode){case l.SPACE:case l.ENTER:e.preventDefault(),this._toggle();break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(e))}},e.prototype.focus=function(e){void 0===e&&(e="program"),this._focusMonitor.focusVia(this._element.nativeElement,e)},e.prototype.ngOnDestroy=function(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element.nativeElement)},e.decorators=[{type:t.Component,args:[{selector:"mat-expansion-panel-header",styles:[".mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:0}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-description,.mat-expansion-panel-header-title{display:flex;flex-grow:1;margin-right:16px}[dir=rtl] .mat-expansion-panel-header-description,[dir=rtl] .mat-expansion-panel-header-title{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:'';display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}"],template:'<span class="mat-content"><ng-content select="mat-panel-title"></ng-content><ng-content select="mat-panel-description"></ng-content><ng-content></ng-content></span><span [@indicatorRotate]="_getExpandedState()" *ngIf="_showToggle()" class="mat-expansion-indicator"></span>',encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush,animations:[m.indicatorRotate,m.expansionHeaderHeight],host:{class:"mat-expansion-panel-header",role:"button","[attr.id]":"panel._headerId","[attr.tabindex]":"disabled ? -1 : 0","[attr.aria-controls]":"_getPanelId()","[attr.aria-expanded]":"_isExpanded()","[attr.aria-disabled]":"panel.disabled","[class.mat-expanded]":"_isExpanded()","(click)":"_toggle()","(keydown)":"_keydown($event)","[@expansionHeight]":"{\n value: _getExpandedState(),\n params: {\n collapsedHeight: collapsedHeight,\n expandedHeight: expandedHeight\n }\n }"}}]}],e.ctorParameters=function(){return[{type:b,decorators:[{type:t.Host}]},{type:t.ElementRef},{type:d.FocusMonitor},{type:t.ChangeDetectorRef}]},e.propDecorators={expandedHeight:[{type:t.Input}],collapsedHeight:[{type:t.Input}]},e}(),C=function(){function e(){}return e.decorators=[{type:t.Directive,args:[{selector:"mat-panel-description",host:{class:"mat-expansion-panel-header-description"}}]}],e}(),k=function(){function e(){}return e.decorators=[{type:t.Directive,args:[{selector:"mat-panel-title",host:{class:"mat-expansion-panel-header-title"}}]}],e}(),E=function(e){function n(){var t=null!==e&&e.apply(this,arguments)||this;return t._hideToggle=!1,t.displayMode="default",t}return u(n,e),Object.defineProperty(n.prototype,"hideToggle",{get:function(){return this._hideToggle},set:function(e){this._hideToggle=o.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),n.prototype.ngAfterContentInit=function(){this._keyManager=new d.FocusKeyManager(this._headers).withWrap()},n.prototype._handleHeaderKeydown=function(e){var t=e.keyCode,n=this._keyManager;t===l.HOME?(n.setFirstItemActive(),e.preventDefault()):t===l.END?(n.setLastItemActive(),e.preventDefault()):this._keyManager.onKeydown(e)},n.prototype._handleHeaderFocus=function(e){this._keyManager.updateActiveItem(e)},n.decorators=[{type:t.Directive,args:[{selector:"mat-accordion",exportAs:"matAccordion",inputs:["multi"],providers:[{provide:h,useExisting:n}],host:{class:"mat-accordion"}}]}],n.propDecorators={_headers:[{type:t.ContentChildren,args:[v,{descendants:!0}]}],hideToggle:[{type:t.Input}],displayMode:[{type:t.Input}]},n}(a.CdkAccordion),w=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,a.CdkAccordionModule,r.PortalModule],exports:[E,b,_,v,k,C,x],declarations:[E,b,_,v,k,C,x]}]}],e}();e.MatExpansionModule=w,e.MatAccordion=E,e.MAT_ACCORDION=h,e._CdkAccordionItem=y,e.MatExpansionPanel=b,e.MatExpansionPanelActionRow=_,e.MatExpansionPanelHeader=v,e.MatExpansionPanelDescription=C,e.MatExpansionPanelTitle=k,e.MatExpansionPanelContent=x,e.EXPANSION_PANEL_ANIMATION_TIMING="225ms cubic-bezier(0.4,0.0,0.2,1)",e.matExpansionAnimations=m,Object.defineProperty(e,"__esModule",{value:!0})});
9
9
  //# sourceMappingURL=material-expansion.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"material-expansion.umd.min.js","sources":["../../node_modules/tslib/tslib.es6.js","../../src/lib/expansion/accordion.ts","../../src/lib/expansion/expansion-animations.ts","../../src/lib/expansion/expansion-panel-content.ts","../../src/lib/expansion/expansion-panel.ts","../../src/lib/expansion/expansion-panel-header.ts","../../src/lib/expansion/expansion-module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\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 {Directive, Input} from '@angular/core';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {CdkAccordion} from '@angular/cdk/accordion';\n\n/** MatAccordion's display modes. */\nexport type MatAccordionDisplayMode = 'default' | 'flat';\n\n/**\n * Directive for a Material Design Accordion.\n */\n@Directive({\n selector: 'mat-accordion',\n exportAs: 'matAccordion',\n host: {\n class: 'mat-accordion'\n }\n})\nexport class MatAccordion extends CdkAccordion {\n /** Whether the expansion indicator should be hidden. */\n @Input()\n get hideToggle(): boolean { return this._hideToggle; }\n set hideToggle(show: boolean) { this._hideToggle = coerceBooleanProperty(show); }\n private _hideToggle: boolean = false;\n\n /**\n * The display mode used for all expansion panels in the accordion. Currently two display\n * modes exist:\n * default - a gutter-like spacing is placed around any expanded panel, placing the expanded\n * panel at a different elevation from the rest of the accordion.\n * flat - no spacing is placed around expanded panels, showing all panels at the same\n * elevation.\n */\n @Input() displayMode: MatAccordionDisplayMode = 'default';\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 animateChild,\n group,\n state,\n style,\n transition,\n trigger,\n query,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\n/** Time and timing curve for expansion panel animations. */\nexport const EXPANSION_PANEL_ANIMATION_TIMING = '225ms cubic-bezier(0.4,0.0,0.2,1)';\n\n/** Animations used by the Material expansion panel. */\nexport const matExpansionAnimations: {\n readonly indicatorRotate: AnimationTriggerMetadata;\n readonly expansionHeaderHeight: AnimationTriggerMetadata;\n readonly bodyExpansion: AnimationTriggerMetadata;\n} = {\n /** Animation that rotates the indicator arrow. */\n indicatorRotate: trigger('indicatorRotate', [\n state('collapsed', style({transform: 'rotate(0deg)'})),\n state('expanded', style({transform: 'rotate(180deg)'})),\n transition('expanded <=> collapsed', animate(EXPANSION_PANEL_ANIMATION_TIMING)),\n ]),\n\n /** Animation that expands and collapses the panel header height. */\n expansionHeaderHeight: trigger('expansionHeight', [\n state('collapsed', style({\n height: '{{collapsedHeight}}',\n }), {\n params: {collapsedHeight: '48px'},\n }),\n state('expanded', style({\n height: '{{expandedHeight}}'\n }), {\n params: {expandedHeight: '64px'}\n }),\n transition('expanded <=> collapsed', group([\n query('@indicatorRotate', animateChild(), {optional: true}),\n animate(EXPANSION_PANEL_ANIMATION_TIMING),\n ])),\n ]),\n\n /** Animation that expands and collapses the panel content. */\n bodyExpansion: trigger('bodyExpansion', [\n state('collapsed', style({height: '0px', visibility: 'hidden'})),\n state('expanded', style({height: '*', visibility: 'visible'})),\n transition('expanded <=> collapsed', animate(EXPANSION_PANEL_ANIMATION_TIMING)),\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 {Directive, TemplateRef} from '@angular/core';\n\n/**\n * Expansion panel content that will be rendered lazily\n * after the panel is opened for the first time.\n */\n@Directive({\n selector: 'ng-template[matExpansionPanelContent]'\n})\nexport class MatExpansionPanelContent {\n constructor(public _template: TemplateRef<any>) {}\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 {AnimationEvent} from '@angular/animations';\nimport {CdkAccordionItem} from '@angular/cdk/accordion';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {UniqueSelectionDispatcher} from '@angular/cdk/collections';\nimport {TemplatePortal} from '@angular/cdk/portal';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n Directive,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n SimpleChanges,\n SkipSelf,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {Subject} from 'rxjs';\nimport {filter, startWith, take} from 'rxjs/operators';\nimport {MatAccordion} from './accordion';\nimport {matExpansionAnimations} from './expansion-animations';\nimport {MatExpansionPanelContent} from './expansion-panel-content';\n\n\n/** MatExpansionPanel's states. */\nexport type MatExpansionPanelState = 'expanded' | 'collapsed';\n\n/** Counter for generating unique element ids. */\nlet uniqueId = 0;\n\n/**\n * `<mat-expansion-panel>`\n *\n * This component can be used as a single element to show expandable content, or as one of\n * multiple children of an element with the MatAccordion directive attached.\n */\n@Component({\n moduleId: module.id,\n styleUrls: ['./expansion-panel.css'],\n selector: 'mat-expansion-panel',\n exportAs: 'matExpansionPanel',\n templateUrl: './expansion-panel.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n inputs: ['disabled', 'expanded'],\n outputs: ['opened', 'closed', 'expandedChange'],\n animations: [matExpansionAnimations.bodyExpansion],\n providers: [\n // Provide MatAccordion as undefined to prevent nested expansion panels from registering\n // to the same accordion.\n {provide: MatAccordion, useValue: undefined},\n ],\n host: {\n 'class': 'mat-expansion-panel',\n '[class.mat-expanded]': 'expanded',\n '[class.mat-expansion-panel-spacing]': '_hasSpacing()',\n }\n})\nexport class MatExpansionPanel extends CdkAccordionItem\n implements AfterContentInit, OnChanges, OnDestroy {\n /** Whether the toggle indicator should be hidden. */\n @Input()\n get hideToggle(): boolean { return this._hideToggle; }\n set hideToggle(value: boolean) {\n this._hideToggle = coerceBooleanProperty(value);\n }\n private _hideToggle = false;\n\n /** Stream that emits for changes in `@Input` properties. */\n readonly _inputChanges = new Subject<SimpleChanges>();\n\n /** Optionally defined accordion the expansion panel belongs to. */\n accordion: MatAccordion;\n\n /** Content that will be rendered lazily. */\n @ContentChild(MatExpansionPanelContent) _lazyContent: MatExpansionPanelContent;\n\n /** Portal holding the user's content. */\n _portal: TemplatePortal;\n\n /** ID for the associated header element. Used for a11y labelling. */\n _headerId = `mat-expansion-panel-header-${uniqueId++}`;\n\n constructor(@Optional() @SkipSelf() accordion: MatAccordion,\n _changeDetectorRef: ChangeDetectorRef,\n _uniqueSelectionDispatcher: UniqueSelectionDispatcher,\n private _viewContainerRef: ViewContainerRef) {\n super(accordion, _changeDetectorRef, _uniqueSelectionDispatcher);\n this.accordion = accordion;\n }\n\n /** Whether the expansion indicator should be hidden. */\n _getHideToggle(): boolean {\n if (this.accordion) {\n return this.accordion.hideToggle;\n }\n return this.hideToggle;\n }\n\n /** Determines whether the expansion panel should have spacing between it and its siblings. */\n _hasSpacing(): boolean {\n if (this.accordion) {\n return (this.expanded ? this.accordion.displayMode : this._getExpandedState()) === 'default';\n }\n return false;\n }\n\n /** Gets the expanded state string. */\n _getExpandedState(): MatExpansionPanelState {\n return this.expanded ? 'expanded' : 'collapsed';\n }\n\n ngAfterContentInit() {\n if (this._lazyContent) {\n // Render the content as soon as the panel becomes open.\n this.opened.pipe(\n startWith(null!),\n filter(() => this.expanded && !this._portal),\n take(1)\n ).subscribe(() => {\n this._portal = new TemplatePortal(this._lazyContent._template, this._viewContainerRef);\n });\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this._inputChanges.next(changes);\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\n this._inputChanges.complete();\n }\n\n _bodyAnimation(event: AnimationEvent) {\n const classList = event.element.classList;\n const cssClass = 'mat-expanded';\n const {phaseName, toState} = event;\n\n // Toggle the body's `overflow: hidden` class when closing starts or when expansion ends in\n // order to prevent the cases where switching too early would cause the animation to jump.\n // Note that we do it directly on the DOM element to avoid the slight delay that comes\n // with doing it via change detection.\n if (phaseName === 'done' && toState === 'expanded') {\n classList.add(cssClass);\n } else if (phaseName === 'start' && toState === 'collapsed') {\n classList.remove(cssClass);\n }\n }\n}\n\n@Directive({\n selector: 'mat-action-row',\n host: {\n class: 'mat-action-row'\n }\n})\nexport class MatExpansionPanelActionRow {}\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 {FocusMonitor} from '@angular/cdk/a11y';\nimport {ENTER, SPACE} from '@angular/cdk/keycodes';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n Host,\n Input,\n OnDestroy,\n ViewEncapsulation,\n} from '@angular/core';\nimport {merge, Subscription} from 'rxjs';\nimport {filter} from 'rxjs/operators';\nimport {matExpansionAnimations} from './expansion-animations';\nimport {MatExpansionPanel} from './expansion-panel';\n\n\n/**\n * `<mat-expansion-panel-header>`\n *\n * This component corresponds to the header element of an `<mat-expansion-panel>`.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-expansion-panel-header',\n styleUrls: ['./expansion-panel-header.css'],\n templateUrl: './expansion-panel-header.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n matExpansionAnimations.indicatorRotate,\n matExpansionAnimations.expansionHeaderHeight\n ],\n host: {\n 'class': 'mat-expansion-panel-header',\n 'role': 'button',\n '[attr.id]': 'panel._headerId',\n '[attr.tabindex]': 'panel.disabled ? -1 : 0',\n '[attr.aria-controls]': '_getPanelId()',\n '[attr.aria-expanded]': '_isExpanded()',\n '[attr.aria-disabled]': 'panel.disabled',\n '[class.mat-expanded]': '_isExpanded()',\n '(click)': '_toggle()',\n '(keydown)': '_keydown($event)',\n '[@expansionHeight]': `{\n value: _getExpandedState(),\n params: {\n collapsedHeight: collapsedHeight,\n expandedHeight: expandedHeight\n }\n }`,\n },\n})\nexport class MatExpansionPanelHeader implements OnDestroy {\n private _parentChangeSubscription = Subscription.EMPTY;\n\n constructor(\n @Host() public panel: MatExpansionPanel,\n private _element: ElementRef,\n private _focusMonitor: FocusMonitor,\n private _changeDetectorRef: ChangeDetectorRef) {\n\n // Since the toggle state depends on an @Input on the panel, we\n // need to subscribe and trigger change detection manually.\n this._parentChangeSubscription = merge(\n panel.opened,\n panel.closed,\n panel._inputChanges.pipe(filter(changes => !!(changes.hideToggle || changes.disabled)))\n )\n .subscribe(() => this._changeDetectorRef.markForCheck());\n\n _focusMonitor.monitor(_element.nativeElement);\n }\n\n /** Height of the header while the panel is expanded. */\n @Input() expandedHeight: string;\n\n /** Height of the header while the panel is collapsed. */\n @Input() collapsedHeight: string;\n\n /** Toggles the expanded state of the panel. */\n _toggle(): void {\n this.panel.toggle();\n }\n\n /** Gets whether the panel is expanded. */\n _isExpanded(): boolean {\n return this.panel.expanded;\n }\n\n /** Gets the expanded state string of the panel. */\n _getExpandedState(): string {\n return this.panel._getExpandedState();\n }\n\n /** Gets the panel id. */\n _getPanelId(): string {\n return this.panel.id;\n }\n\n /** Gets whether the expand indicator should be shown. */\n _showToggle(): boolean {\n return !this.panel.hideToggle && !this.panel.disabled;\n }\n\n /** Handle keydown event calling to toggle() if appropriate. */\n _keydown(event: KeyboardEvent) {\n switch (event.keyCode) {\n // Toggle for space and enter keys.\n case SPACE:\n case ENTER:\n event.preventDefault();\n this._toggle();\n break;\n default:\n return;\n }\n }\n\n ngOnDestroy() {\n this._parentChangeSubscription.unsubscribe();\n this._focusMonitor.stopMonitoring(this._element.nativeElement);\n }\n}\n\n/**\n * `<mat-panel-description>`\n *\n * This directive is to be used inside of the MatExpansionPanelHeader component.\n */\n@Directive({\n selector: 'mat-panel-description',\n host : {\n class: 'mat-expansion-panel-header-description'\n }\n})\nexport class MatExpansionPanelDescription {}\n\n/**\n * `<mat-panel-title>`\n *\n * This directive is to be used inside of the MatExpansionPanelHeader component.\n */\n@Directive({\n selector: 'mat-panel-title',\n host : {\n class: 'mat-expansion-panel-header-title'\n }\n})\nexport class MatExpansionPanelTitle {}\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 {CdkAccordionModule} from '@angular/cdk/accordion';\nimport {PortalModule} from '@angular/cdk/portal';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatAccordion} from './accordion';\nimport {MatExpansionPanel, MatExpansionPanelActionRow} from './expansion-panel';\nimport {MatExpansionPanelContent} from './expansion-panel-content';\nimport {\n MatExpansionPanelDescription,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n} from './expansion-panel-header';\n\n\n@NgModule({\n imports: [CommonModule, CdkAccordionModule, PortalModule],\n exports: [\n MatAccordion,\n MatExpansionPanel,\n MatExpansionPanelActionRow,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n MatExpansionPanelDescription,\n MatExpansionPanelContent,\n ],\n declarations: [\n MatAccordion,\n MatExpansionPanel,\n MatExpansionPanelActionRow,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n MatExpansionPanelDescription,\n MatExpansionPanelContent,\n ],\n})\nexport class MatExpansionModule {}\n"],"names":["__extends","d","b","__","this","constructor","extendStatics","prototype","Object","create","setPrototypeOf","__proto__","Array","p","hasOwnProperty","_this","_hideToggle","displayMode","tslib_1.__extends","MatAccordion","_super","defineProperty","show","coerceBooleanProperty","type","Directive","args","selector","exportAs","host","class","hideToggle","Input","CdkAccordion","matExpansionAnimations","indicatorRotate","trigger","state","style","transform","transition","animate","expansionHeaderHeight","height","params","collapsedHeight","expandedHeight","group","query","animateChild","optional","bodyExpansion","visibility","MatExpansionPanelContent","_template","TemplateRef","uniqueId","MatExpansionPanel","accordion","_changeDetectorRef","_uniqueSelectionDispatcher","_viewContainerRef","call","_inputChanges","Subject","_headerId","value","_getHideToggle","_hasSpacing","expanded","_getExpandedState","ngAfterContentInit","_lazyContent","opened","pipe","startWith","filter","_portal","take","subscribe","TemplatePortal","ngOnChanges","changes","next","ngOnDestroy","complete","_bodyAnimation","event","classList","element","phaseName","toState","add","remove","Component","styles","template","encapsulation","ViewEncapsulation","None","changeDetection","ChangeDetectionStrategy","OnPush","inputs","outputs","animations","providers","undefined","[class.mat-expanded]","[class.mat-expansion-panel-spacing]","UniqueSelectionDispatcher","ViewContainerRef","propDecorators","MatExpansionPanelActionRow","MatExpansionPanelHeader","panel","_element","_focusMonitor","_parentChangeSubscription","Subscription","EMPTY","merge","closed","markForCheck","monitor","nativeElement","_toggle","toggle","_isExpanded","_getPanelId","id","_showToggle","disabled","_keydown","keyCode","SPACE","ENTER","preventDefault","unsubscribe","stopMonitoring","role","[attr.id]","[attr.tabindex]","[attr.aria-controls]","[attr.aria-expanded]","[attr.aria-disabled]","(click)","(keydown)","[@expansionHeight]","FocusMonitor","ChangeDetectorRef","MatExpansionPanelDescription","MatExpansionPanelTitle","NgModule","imports","CommonModule","CdkAccordionModule","PortalModule","exports","declarations","MatExpansionModule"],"mappings":"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"}
1
+ {"version":3,"file":"material-expansion.umd.min.js","sources":["../../node_modules/tslib/tslib.es6.js","../../src/lib/expansion/accordion-base.ts","../../src/lib/expansion/expansion-animations.ts","../../src/lib/expansion/expansion-panel-content.ts","../../src/lib/expansion/expansion-panel.ts","../../src/lib/expansion/expansion-panel-header.ts","../../src/lib/expansion/accordion.ts","../../src/lib/expansion/expansion-module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\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 {InjectionToken} from '@angular/core';\nimport {CdkAccordion} from '@angular/cdk/accordion';\n\n/** MatAccordion's display modes. */\nexport type MatAccordionDisplayMode = 'default' | 'flat';\n\n/**\n * Base interface for a `MatAccordion`.\n * @docs-private\n */\nexport interface MatAccordionBase extends CdkAccordion {\n /** Whether the expansion indicator should be hidden. */\n hideToggle: boolean;\n\n /** Display mode used for all expansion panels in the accordion. */\n displayMode: MatAccordionDisplayMode;\n\n /** Handles keyboard events coming in from the panel headers. */\n _handleHeaderKeydown: (event: KeyboardEvent) => void;\n\n /** Handles focus events on the panel headers. */\n _handleHeaderFocus: (header: any) => void;\n}\n\n\n/**\n * Token used to provide a `MatAccordion` to `MatExpansionPanel`.\n * Used primarily to avoid circular imports between `MatAccordion` and `MatExpansionPanel`.\n */\nexport const MAT_ACCORDION = new InjectionToken<MatAccordionBase>('MAT_ACCORDION');\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 animateChild,\n group,\n state,\n style,\n transition,\n trigger,\n query,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\n/** Time and timing curve for expansion panel animations. */\nexport const EXPANSION_PANEL_ANIMATION_TIMING = '225ms cubic-bezier(0.4,0.0,0.2,1)';\n\n/** Animations used by the Material expansion panel. */\nexport const matExpansionAnimations: {\n readonly indicatorRotate: AnimationTriggerMetadata;\n readonly expansionHeaderHeight: AnimationTriggerMetadata;\n readonly bodyExpansion: AnimationTriggerMetadata;\n} = {\n /** Animation that rotates the indicator arrow. */\n indicatorRotate: trigger('indicatorRotate', [\n state('collapsed', style({transform: 'rotate(0deg)'})),\n state('expanded', style({transform: 'rotate(180deg)'})),\n transition('expanded <=> collapsed', animate(EXPANSION_PANEL_ANIMATION_TIMING)),\n ]),\n\n /** Animation that expands and collapses the panel header height. */\n expansionHeaderHeight: trigger('expansionHeight', [\n state('collapsed', style({\n height: '{{collapsedHeight}}',\n }), {\n params: {collapsedHeight: '48px'},\n }),\n state('expanded', style({\n height: '{{expandedHeight}}'\n }), {\n params: {expandedHeight: '64px'}\n }),\n transition('expanded <=> collapsed', group([\n query('@indicatorRotate', animateChild(), {optional: true}),\n animate(EXPANSION_PANEL_ANIMATION_TIMING),\n ])),\n ]),\n\n /** Animation that expands and collapses the panel content. */\n bodyExpansion: trigger('bodyExpansion', [\n state('collapsed', style({height: '0px', visibility: 'hidden'})),\n state('expanded', style({height: '*', visibility: 'visible'})),\n transition('expanded <=> collapsed', animate(EXPANSION_PANEL_ANIMATION_TIMING)),\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 {Directive, TemplateRef} from '@angular/core';\n\n/**\n * Expansion panel content that will be rendered lazily\n * after the panel is opened for the first time.\n */\n@Directive({\n selector: 'ng-template[matExpansionPanelContent]'\n})\nexport class MatExpansionPanelContent {\n constructor(public _template: TemplateRef<any>) {}\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 {AnimationEvent} from '@angular/animations';\nimport {CdkAccordionItem} from '@angular/cdk/accordion';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {UniqueSelectionDispatcher} from '@angular/cdk/collections';\nimport {TemplatePortal} from '@angular/cdk/portal';\nimport {DOCUMENT} from '@angular/common';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n Directive,\n ElementRef,\n Inject,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n SimpleChanges,\n SkipSelf,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {Subject} from 'rxjs';\nimport {filter, startWith, take} from 'rxjs/operators';\nimport {matExpansionAnimations} from './expansion-animations';\nimport {MatExpansionPanelContent} from './expansion-panel-content';\nimport {MAT_ACCORDION, MatAccordionBase} from './accordion-base';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkAccordionItem = CdkAccordionItem;\n\n/** MatExpansionPanel's states. */\nexport type MatExpansionPanelState = 'expanded' | 'collapsed';\n\n/** Counter for generating unique element ids. */\nlet uniqueId = 0;\n\n/**\n * `<mat-expansion-panel>`\n *\n * This component can be used as a single element to show expandable content, or as one of\n * multiple children of an element with the MatAccordion directive attached.\n */\n@Component({\n moduleId: module.id,\n styleUrls: ['./expansion-panel.css'],\n selector: 'mat-expansion-panel',\n exportAs: 'matExpansionPanel',\n templateUrl: './expansion-panel.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n inputs: ['disabled', 'expanded'],\n outputs: ['opened', 'closed', 'expandedChange'],\n animations: [matExpansionAnimations.bodyExpansion],\n providers: [\n // Provide MatAccordion as undefined to prevent nested expansion panels from registering\n // to the same accordion.\n {provide: MAT_ACCORDION, useValue: undefined},\n ],\n host: {\n 'class': 'mat-expansion-panel',\n '[class.mat-expanded]': 'expanded',\n '[class.mat-expansion-panel-spacing]': '_hasSpacing()',\n }\n})\nexport class MatExpansionPanel extends CdkAccordionItem implements AfterContentInit, OnChanges,\n OnDestroy {\n\n // @breaking-change 8.0.0 Remove `| undefined` from here\n // when the `_document` constructor param is required.\n private _document: Document | undefined;\n\n /** Whether the toggle indicator should be hidden. */\n @Input()\n get hideToggle(): boolean {\n return this._hideToggle || (this.accordion && this.accordion.hideToggle);\n }\n set hideToggle(value: boolean) {\n this._hideToggle = coerceBooleanProperty(value);\n }\n private _hideToggle = false;\n\n /** Stream that emits for changes in `@Input` properties. */\n readonly _inputChanges = new Subject<SimpleChanges>();\n\n /** Optionally defined accordion the expansion panel belongs to. */\n accordion: MatAccordionBase;\n\n /** Content that will be rendered lazily. */\n @ContentChild(MatExpansionPanelContent) _lazyContent: MatExpansionPanelContent;\n\n /** Element containing the panel's user-provided content. */\n @ViewChild('body') _body: ElementRef<HTMLElement>;\n\n /** Portal holding the user's content. */\n _portal: TemplatePortal;\n\n /** ID for the associated header element. Used for a11y labelling. */\n _headerId = `mat-expansion-panel-header-${uniqueId++}`;\n\n constructor(@Optional() @SkipSelf() @Inject(MAT_ACCORDION) accordion: MatAccordionBase,\n _changeDetectorRef: ChangeDetectorRef,\n _uniqueSelectionDispatcher: UniqueSelectionDispatcher,\n private _viewContainerRef: ViewContainerRef,\n @Inject(DOCUMENT) _document?: any) {\n super(accordion, _changeDetectorRef, _uniqueSelectionDispatcher);\n this.accordion = accordion;\n this._document = _document;\n }\n\n /** Determines whether the expansion panel should have spacing between it and its siblings. */\n _hasSpacing(): boolean {\n if (this.accordion) {\n // We don't need to subscribe to the `stateChanges` of the parent accordion because each time\n // the [displayMode] input changes, the change detection will also cover the host bindings\n // of this expansion panel.\n return (this.expanded ? this.accordion.displayMode : this._getExpandedState()) === 'default';\n }\n return false;\n }\n\n /** Gets the expanded state string. */\n _getExpandedState(): MatExpansionPanelState {\n return this.expanded ? 'expanded' : 'collapsed';\n }\n\n ngAfterContentInit() {\n if (this._lazyContent) {\n // Render the content as soon as the panel becomes open.\n this.opened.pipe(\n startWith(null!),\n filter(() => this.expanded && !this._portal),\n take(1)\n ).subscribe(() => {\n this._portal = new TemplatePortal(this._lazyContent._template, this._viewContainerRef);\n });\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this._inputChanges.next(changes);\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\n this._inputChanges.complete();\n }\n\n _bodyAnimation(event: AnimationEvent) {\n const classList = event.element.classList;\n const cssClass = 'mat-expanded';\n const {phaseName, toState} = event;\n\n // Toggle the body's `overflow: hidden` class when closing starts or when expansion ends in\n // order to prevent the cases where switching too early would cause the animation to jump.\n // Note that we do it directly on the DOM element to avoid the slight delay that comes\n // with doing it via change detection.\n if (phaseName === 'done' && toState === 'expanded') {\n classList.add(cssClass);\n } else if (phaseName === 'start' && toState === 'collapsed') {\n classList.remove(cssClass);\n }\n }\n\n /** Checks whether the expansion panel's content contains the currently-focused element. */\n _containsFocus(): boolean {\n if (this._body && this._document) {\n const focusedElement = this._document.activeElement;\n const bodyElement = this._body.nativeElement;\n return focusedElement === bodyElement || bodyElement.contains(focusedElement);\n }\n\n return false;\n }\n}\n\n@Directive({\n selector: 'mat-action-row',\n host: {\n class: 'mat-action-row'\n }\n})\nexport class MatExpansionPanelActionRow {}\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 {FocusMonitor, FocusableOption, FocusOrigin} from '@angular/cdk/a11y';\nimport {ENTER, SPACE} from '@angular/cdk/keycodes';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n Host,\n Input,\n OnDestroy,\n ViewEncapsulation,\n} from '@angular/core';\nimport {merge, Subscription, EMPTY} from 'rxjs';\nimport {filter} from 'rxjs/operators';\nimport {matExpansionAnimations} from './expansion-animations';\nimport {MatExpansionPanel} from './expansion-panel';\n\n\n/**\n * `<mat-expansion-panel-header>`\n *\n * This component corresponds to the header element of an `<mat-expansion-panel>`.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-expansion-panel-header',\n styleUrls: ['./expansion-panel-header.css'],\n templateUrl: './expansion-panel-header.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n matExpansionAnimations.indicatorRotate,\n matExpansionAnimations.expansionHeaderHeight\n ],\n host: {\n 'class': 'mat-expansion-panel-header',\n 'role': 'button',\n '[attr.id]': 'panel._headerId',\n '[attr.tabindex]': 'disabled ? -1 : 0',\n '[attr.aria-controls]': '_getPanelId()',\n '[attr.aria-expanded]': '_isExpanded()',\n '[attr.aria-disabled]': 'panel.disabled',\n '[class.mat-expanded]': '_isExpanded()',\n '(click)': '_toggle()',\n '(keydown)': '_keydown($event)',\n '[@expansionHeight]': `{\n value: _getExpandedState(),\n params: {\n collapsedHeight: collapsedHeight,\n expandedHeight: expandedHeight\n }\n }`,\n },\n})\nexport class MatExpansionPanelHeader implements OnDestroy, FocusableOption {\n private _parentChangeSubscription = Subscription.EMPTY;\n\n constructor(\n @Host() public panel: MatExpansionPanel,\n private _element: ElementRef,\n private _focusMonitor: FocusMonitor,\n private _changeDetectorRef: ChangeDetectorRef) {\n\n const accordionHideToggleChange = panel.accordion ?\n panel.accordion._stateChanges.pipe(filter(changes => !!changes.hideToggle)) : EMPTY;\n\n // Since the toggle state depends on an @Input on the panel, we\n // need to subscribe and trigger change detection manually.\n this._parentChangeSubscription = merge(\n panel.opened,\n panel.closed,\n accordionHideToggleChange,\n panel._inputChanges.pipe(filter(changes => !!(changes.hideToggle || changes.disabled)))\n )\n .subscribe(() => this._changeDetectorRef.markForCheck());\n\n // Avoids focus being lost if the panel contained the focused element and was closed.\n panel.closed\n .pipe(filter(() => panel._containsFocus()))\n .subscribe(() => _focusMonitor.focusVia(_element.nativeElement, 'program'));\n\n _focusMonitor.monitor(_element.nativeElement).subscribe(origin => {\n if (origin && panel.accordion) {\n panel.accordion._handleHeaderFocus(this);\n }\n });\n }\n\n /** Height of the header while the panel is expanded. */\n @Input() expandedHeight: string;\n\n /** Height of the header while the panel is collapsed. */\n @Input() collapsedHeight: string;\n\n /**\n * Whether the associated panel is disabled. Implemented as a part of `FocusableOption`.\n * @docs-private\n */\n get disabled() {\n return this.panel.disabled;\n }\n\n /** Toggles the expanded state of the panel. */\n _toggle(): void {\n this.panel.toggle();\n }\n\n /** Gets whether the panel is expanded. */\n _isExpanded(): boolean {\n return this.panel.expanded;\n }\n\n /** Gets the expanded state string of the panel. */\n _getExpandedState(): string {\n return this.panel._getExpandedState();\n }\n\n /** Gets the panel id. */\n _getPanelId(): string {\n return this.panel.id;\n }\n\n /** Gets whether the expand indicator should be shown. */\n _showToggle(): boolean {\n return !this.panel.hideToggle && !this.panel.disabled;\n }\n\n /** Handle keydown event calling to toggle() if appropriate. */\n _keydown(event: KeyboardEvent) {\n switch (event.keyCode) {\n // Toggle for space and enter keys.\n case SPACE:\n case ENTER:\n event.preventDefault();\n this._toggle();\n break;\n default:\n if (this.panel.accordion) {\n this.panel.accordion._handleHeaderKeydown(event);\n }\n\n return;\n }\n }\n\n /**\n * Focuses the panel header. Implemented as a part of `FocusableOption`.\n * @param origin Origin of the action that triggered the focus.\n * @docs-private\n */\n focus(origin: FocusOrigin = 'program') {\n this._focusMonitor.focusVia(this._element.nativeElement, origin);\n }\n\n ngOnDestroy() {\n this._parentChangeSubscription.unsubscribe();\n this._focusMonitor.stopMonitoring(this._element.nativeElement);\n }\n}\n\n/**\n * `<mat-panel-description>`\n *\n * This directive is to be used inside of the MatExpansionPanelHeader component.\n */\n@Directive({\n selector: 'mat-panel-description',\n host: {\n class: 'mat-expansion-panel-header-description'\n }\n})\nexport class MatExpansionPanelDescription {}\n\n/**\n * `<mat-panel-title>`\n *\n * This directive is to be used inside of the MatExpansionPanelHeader component.\n */\n@Directive({\n selector: 'mat-panel-title',\n host: {\n class: 'mat-expansion-panel-header-title'\n }\n})\nexport class MatExpansionPanelTitle {}\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 {Directive, Input, ContentChildren, QueryList, AfterContentInit} from '@angular/core';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {CdkAccordion} from '@angular/cdk/accordion';\nimport {FocusKeyManager} from '@angular/cdk/a11y';\nimport {HOME, END} from '@angular/cdk/keycodes';\nimport {MAT_ACCORDION, MatAccordionBase, MatAccordionDisplayMode} from './accordion-base';\nimport {MatExpansionPanelHeader} from './expansion-panel-header';\n\n/**\n * Directive for a Material Design Accordion.\n */\n@Directive({\n selector: 'mat-accordion',\n exportAs: 'matAccordion',\n inputs: ['multi'],\n providers: [{\n provide: MAT_ACCORDION,\n useExisting: MatAccordion\n }],\n host: {\n class: 'mat-accordion'\n }\n})\nexport class MatAccordion extends CdkAccordion implements MatAccordionBase, AfterContentInit {\n private _keyManager: FocusKeyManager<MatExpansionPanelHeader>;\n\n @ContentChildren(MatExpansionPanelHeader, {descendants: true})\n _headers: QueryList<MatExpansionPanelHeader>;\n\n /** Whether the expansion indicator should be hidden. */\n @Input()\n get hideToggle(): boolean { return this._hideToggle; }\n set hideToggle(show: boolean) { this._hideToggle = coerceBooleanProperty(show); }\n private _hideToggle: boolean = false;\n\n /**\n * Display mode used for all expansion panels in the accordion. Currently two display\n * modes exist:\n * default - a gutter-like spacing is placed around any expanded panel, placing the expanded\n * panel at a different elevation from the rest of the accordion.\n * flat - no spacing is placed around expanded panels, showing all panels at the same\n * elevation.\n */\n @Input() displayMode: MatAccordionDisplayMode = 'default';\n\n ngAfterContentInit() {\n this._keyManager = new FocusKeyManager(this._headers).withWrap();\n }\n\n /** Handles keyboard events coming in from the panel headers. */\n _handleHeaderKeydown(event: KeyboardEvent) {\n const {keyCode} = event;\n const manager = this._keyManager;\n\n if (keyCode === HOME) {\n manager.setFirstItemActive();\n event.preventDefault();\n } else if (keyCode === END) {\n manager.setLastItemActive();\n event.preventDefault();\n } else {\n this._keyManager.onKeydown(event);\n }\n }\n\n _handleHeaderFocus(header: MatExpansionPanelHeader) {\n this._keyManager.updateActiveItem(header);\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 {CdkAccordionModule} from '@angular/cdk/accordion';\nimport {PortalModule} from '@angular/cdk/portal';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatAccordion} from './accordion';\nimport {MatExpansionPanel, MatExpansionPanelActionRow} from './expansion-panel';\nimport {MatExpansionPanelContent} from './expansion-panel-content';\nimport {\n MatExpansionPanelDescription,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n} from './expansion-panel-header';\n\n\n@NgModule({\n imports: [CommonModule, CdkAccordionModule, PortalModule],\n exports: [\n MatAccordion,\n MatExpansionPanel,\n MatExpansionPanelActionRow,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n MatExpansionPanelDescription,\n MatExpansionPanelContent,\n ],\n declarations: [\n MatAccordion,\n MatExpansionPanel,\n MatExpansionPanelActionRow,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n MatExpansionPanelDescription,\n MatExpansionPanelContent,\n ],\n})\nexport class MatExpansionModule {}\n"],"names":["__extends","d","b","__","this","constructor","extendStatics","prototype","Object","create","setPrototypeOf","__proto__","Array","p","hasOwnProperty","MAT_ACCORDION","InjectionToken","matExpansionAnimations","indicatorRotate","trigger","state","style","transform","transition","animate","expansionHeaderHeight","height","params","collapsedHeight","expandedHeight","group","query","animateChild","optional","bodyExpansion","visibility","MatExpansionPanelContent","_template","type","Directive","args","selector","TemplateRef","_CdkAccordionItem","CdkAccordionItem","uniqueId","MatExpansionPanel","accordion","_changeDetectorRef","_uniqueSelectionDispatcher","_viewContainerRef","_document","_this","_super","call","_hideToggle","_inputChanges","Subject","_headerId","tslib_1.__extends","defineProperty","hideToggle","value","coerceBooleanProperty","_hasSpacing","expanded","displayMode","_getExpandedState","ngAfterContentInit","_lazyContent","opened","pipe","startWith","filter","_portal","take","subscribe","TemplatePortal","ngOnChanges","changes","next","ngOnDestroy","complete","_bodyAnimation","event","classList","element","phaseName","toState","add","remove","_containsFocus","_body","focusedElement","activeElement","bodyElement","nativeElement","contains","Component","styles","exportAs","template","encapsulation","ViewEncapsulation","None","changeDetection","ChangeDetectionStrategy","OnPush","inputs","outputs","animations","providers","undefined","host","class","[class.mat-expanded]","[class.mat-expansion-panel-spacing]","UniqueSelectionDispatcher","ViewContainerRef","decorators","Inject","DOCUMENT","propDecorators","ViewChild","MatExpansionPanelActionRow","MatExpansionPanelHeader","panel","_element","_focusMonitor","_parentChangeSubscription","Subscription","EMPTY","accordionHideToggleChange","_stateChanges","merge","closed","markForCheck","focusVia","monitor","origin","_handleHeaderFocus","disabled","_toggle","toggle","_isExpanded","_getPanelId","id","_showToggle","_keydown","keyCode","SPACE","ENTER","preventDefault","_handleHeaderKeydown","focus","unsubscribe","stopMonitoring","role","[attr.id]","[attr.tabindex]","[attr.aria-controls]","[attr.aria-expanded]","[attr.aria-disabled]","(click)","(keydown)","[@expansionHeight]","FocusMonitor","ChangeDetectorRef","MatExpansionPanelDescription","MatExpansionPanelTitle","MatAccordion","show","_keyManager","FocusKeyManager","_headers","withWrap","manager","HOME","setFirstItemActive","END","setLastItemActive","onKeydown","header","updateActiveItem","provide","useExisting","ContentChildren","descendants","Input","CdkAccordion","NgModule","imports","CommonModule","CdkAccordionModule","PortalModule","exports","declarations","MatExpansionModule"],"mappings":"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"}
@@ -6,10 +6,10 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  (function (global, factory) {
9
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/animations'), require('@angular/cdk/bidi'), require('@angular/cdk/coercion'), require('@angular/material/core'), require('rxjs'), require('rxjs/operators'), require('@angular/cdk/platform'), require('@angular/platform-browser/animations'), require('@angular/common')) :
10
- typeof define === 'function' && define.amd ? define('@angular/material/formField', ['exports', '@angular/core', '@angular/animations', '@angular/cdk/bidi', '@angular/cdk/coercion', '@angular/material/core', 'rxjs', 'rxjs/operators', '@angular/cdk/platform', '@angular/platform-browser/animations', '@angular/common'], factory) :
11
- (factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.formField = {}),global.ng.core,global.ng.animations,global.ng.cdk.bidi,global.ng.cdk.coercion,global.ng.material.core,global.rxjs,global.rxjs.operators,global.ng.cdk.platform,global.ng.platformBrowser.animations,global.ng.common));
12
- }(this, (function (exports,core,animations,bidi,coercion,core$1,rxjs,operators,platform,animations$1,common) { 'use strict';
9
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/animations'), require('@angular/cdk/bidi'), require('@angular/cdk/coercion'), require('@angular/material/core'), require('rxjs'), require('rxjs/operators'), require('@angular/cdk/platform'), require('@angular/platform-browser/animations'), require('@angular/common'), require('@angular/cdk/observers')) :
10
+ typeof define === 'function' && define.amd ? define('@angular/material/formField', ['exports', '@angular/core', '@angular/animations', '@angular/cdk/bidi', '@angular/cdk/coercion', '@angular/material/core', 'rxjs', 'rxjs/operators', '@angular/cdk/platform', '@angular/platform-browser/animations', '@angular/common', '@angular/cdk/observers'], factory) :
11
+ (factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.formField = {}),global.ng.core,global.ng.animations,global.ng.cdk.bidi,global.ng.cdk.coercion,global.ng.material.core,global.rxjs,global.rxjs.operators,global.ng.cdk.platform,global.ng.platformBrowser.animations,global.ng.common,global.ng.cdk.observers));
12
+ }(this, (function (exports,core,animations,bidi,coercion,core$1,rxjs,operators,platform,animations$1,common,observers) { 'use strict';
13
13
 
14
14
  /*! *****************************************************************************
15
15
  Copyright (c) Microsoft Corporation. All rights reserved.
@@ -287,14 +287,15 @@ var /** @type {?} */ MAT_FORM_FIELD_DEFAULT_OPTIONS = new core.InjectionToken('M
287
287
  */
288
288
  var MatFormField = /** @class */ (function (_super) {
289
289
  __extends(MatFormField, _super);
290
- function MatFormField(_elementRef, _changeDetectorRef, labelOptions, _dir, _defaultOptions, _platform, _ngZone, _animationMode) {
290
+ function MatFormField(_elementRef, _changeDetectorRef, labelOptions, _dir, _defaults, _platform, _ngZone, _animationMode) {
291
291
  var _this = _super.call(this, _elementRef) || this;
292
292
  _this._elementRef = _elementRef;
293
293
  _this._changeDetectorRef = _changeDetectorRef;
294
294
  _this._dir = _dir;
295
- _this._defaultOptions = _defaultOptions;
295
+ _this._defaults = _defaults;
296
296
  _this._platform = _platform;
297
297
  _this._ngZone = _ngZone;
298
+ _this._outlineGapCalculationNeeded = false;
298
299
  /**
299
300
  * Override for the logic that disables the label animation in certain cases.
300
301
  */
@@ -308,12 +309,12 @@ var MatFormField = /** @class */ (function (_super) {
308
309
  _this._hintLabelId = "mat-hint-" + nextUniqueId$2++;
309
310
  // Unique id for the internal form field label.
310
311
  _this._labelId = "mat-form-field-label-" + nextUniqueId$2++;
311
- _this._outlineGapWidth = 0;
312
- _this._outlineGapStart = 0;
313
- _this._initialGapCalculated = false;
314
312
  _this._labelOptions = labelOptions ? labelOptions : {};
315
313
  _this.floatLabel = _this._labelOptions.float || 'auto';
316
314
  _this._animationsEnabled = _animationMode !== 'NoopAnimations';
315
+ // Set the default through here so we invoke the setter on the first run.
316
+ // Set the default through here so we invoke the setter on the first run.
317
+ _this.appearance = (_defaults && _defaults.appearance) ? _defaults.appearance : 'legacy';
317
318
  return _this;
318
319
  }
319
320
  Object.defineProperty(MatFormField.prototype, "appearance", {
@@ -321,19 +322,26 @@ var MatFormField = /** @class */ (function (_super) {
321
322
  * The form-field appearance style.
322
323
  * @return {?}
323
324
  */
324
- function () {
325
- return this._appearance || this._defaultOptions && this._defaultOptions.appearance || 'legacy';
326
- },
325
+ function () { return this._appearance; },
327
326
  set: /**
328
327
  * @param {?} value
329
328
  * @return {?}
330
329
  */
331
330
  function (value) {
332
- // If we're switching to `outline` from another appearance, we have to recalculate the gap.
333
- if (value !== this._appearance && value === 'outline') {
334
- this._initialGapCalculated = false;
331
+ var _this = this;
332
+ var /** @type {?} */ oldValue = this._appearance;
333
+ this._appearance = value || (this._defaults && this._defaults.appearance) || 'legacy';
334
+ if (this._appearance === 'outline' && oldValue !== value) {
335
+ // @breaking-change 7.0.0 Remove this check and else block once _ngZone is required.
336
+ if (this._ngZone) {
337
+ /** @type {?} */ ((this._ngZone)).onStable.pipe(operators.take(1)).subscribe(function () {
338
+ /** @type {?} */ ((_this._ngZone)).runOutsideAngular(function () { return _this.updateOutlineGap(); });
339
+ });
340
+ }
341
+ else {
342
+ Promise.resolve().then(function () { return _this.updateOutlineGap(); });
343
+ }
335
344
  }
336
- this._appearance = value;
337
345
  },
338
346
  enumerable: true,
339
347
  configurable: true
@@ -477,21 +485,9 @@ var MatFormField = /** @class */ (function (_super) {
477
485
  * @return {?}
478
486
  */
479
487
  function () {
480
- var _this = this;
481
488
  this._validateControlChild();
482
- if (!this._initialGapCalculated) {
483
- // @breaking-change 7.0.0 Remove this check and else block once _ngZone is required.
484
- if (this._ngZone) {
485
- // It's important that we run this outside the `_ngZone`, because the `Promise.resolve`
486
- // can kick us into an infinite change detection loop, if the `_initialGapCalculated`
487
- // wasn't flipped on for some reason.
488
- this._ngZone.runOutsideAngular(function () {
489
- Promise.resolve().then(function () { return _this.updateOutlineGap(); });
490
- });
491
- }
492
- else {
493
- Promise.resolve().then(function () { return _this.updateOutlineGap(); });
494
- }
489
+ if (this._outlineGapCalculationNeeded) {
490
+ this.updateOutlineGap();
495
491
  }
496
492
  };
497
493
  /**
@@ -726,31 +722,43 @@ var MatFormField = /** @class */ (function (_super) {
726
722
  * @return {?}
727
723
  */
728
724
  function () {
729
- if (this.appearance === 'outline' && this._label && this._label.nativeElement.children.length) {
730
- if (this._platform && !this._platform.isBrowser) {
731
- // getBoundingClientRect isn't available on the server.
732
- this._initialGapCalculated = true;
733
- return;
734
- }
735
- if (!document.documentElement.contains(this._elementRef.nativeElement)) {
736
- return;
737
- }
725
+ var /** @type {?} */ labelEl = this._label ? this._label.nativeElement : null;
726
+ if (this.appearance !== 'outline' || !labelEl || !labelEl.children.length ||
727
+ !labelEl.textContent.trim()) {
728
+ return;
729
+ }
730
+ if (this._platform && !this._platform.isBrowser) {
731
+ // getBoundingClientRect isn't available on the server.
732
+ return;
733
+ }
734
+ // If the element is not present in the DOM, the outline gap will need to be calculated
735
+ // the next time it is checked and in the DOM.
736
+ if (!document.documentElement.contains(this._elementRef.nativeElement)) {
737
+ this._outlineGapCalculationNeeded = true;
738
+ return;
739
+ }
740
+ var /** @type {?} */ startWidth = 0;
741
+ var /** @type {?} */ gapWidth = 0;
742
+ var /** @type {?} */ startEls = this._connectionContainerRef.nativeElement.querySelectorAll('.mat-form-field-outline-start');
743
+ var /** @type {?} */ gapEls = this._connectionContainerRef.nativeElement.querySelectorAll('.mat-form-field-outline-gap');
744
+ if (this._label && this._label.nativeElement.children.length) {
738
745
  var /** @type {?} */ containerStart = this._getStartEnd(this._connectionContainerRef.nativeElement.getBoundingClientRect());
739
- var /** @type {?} */ labelStart = this._getStartEnd(this._label.nativeElement.children[0].getBoundingClientRect());
746
+ var /** @type {?} */ labelStart = this._getStartEnd(labelEl.children[0].getBoundingClientRect());
740
747
  var /** @type {?} */ labelWidth = 0;
741
- for (var _i = 0, _a = this._label.nativeElement.children; _i < _a.length; _i++) {
748
+ for (var _i = 0, _a = labelEl.children; _i < _a.length; _i++) {
742
749
  var child = _a[_i];
743
750
  labelWidth += child.offsetWidth;
744
751
  }
745
- this._outlineGapStart = labelStart - containerStart - outlineGapPadding;
746
- this._outlineGapWidth = labelWidth * floatingLabelScale + outlineGapPadding * 2;
752
+ startWidth = labelStart - containerStart - outlineGapPadding;
753
+ gapWidth = labelWidth > 0 ? labelWidth * floatingLabelScale + outlineGapPadding * 2 : 0;
747
754
  }
748
- else {
749
- this._outlineGapStart = 0;
750
- this._outlineGapWidth = 0;
755
+ for (var /** @type {?} */ i = 0; i < startEls.length; i++) {
756
+ startEls.item(i).style.width = startWidth + "px";
751
757
  }
752
- this._initialGapCalculated = true;
753
- this._changeDetectorRef.markForCheck();
758
+ for (var /** @type {?} */ i = 0; i < gapEls.length; i++) {
759
+ gapEls.item(i).style.width = gapWidth + "px";
760
+ }
761
+ this._outlineGapCalculationNeeded = false;
754
762
  };
755
763
  /**
756
764
  * Gets the start end of the rect considering the current directionality.
@@ -768,11 +776,11 @@ var MatFormField = /** @class */ (function (_super) {
768
776
  MatFormField.decorators = [
769
777
  { type: core.Component, args: [{selector: 'mat-form-field',
770
778
  exportAs: 'matFormField',
771
- template: "<div class=\"mat-form-field-wrapper\"><div class=\"mat-form-field-flex\" #connectionContainer (click)=\"_control.onContainerClick && _control.onContainerClick($event)\"><ng-container *ngIf=\"appearance == 'outline'\"><div class=\"mat-form-field-outline\"><div class=\"mat-form-field-outline-start\" [style.width.px]=\"_outlineGapStart\"></div><div class=\"mat-form-field-outline-gap\" [style.width.px]=\"_outlineGapWidth\"></div><div class=\"mat-form-field-outline-end\"></div></div><div class=\"mat-form-field-outline mat-form-field-outline-thick\"><div class=\"mat-form-field-outline-start\" [style.width.px]=\"_outlineGapStart\"></div><div class=\"mat-form-field-outline-gap\" [style.width.px]=\"_outlineGapWidth\"></div><div class=\"mat-form-field-outline-end\"></div></div></ng-container><div class=\"mat-form-field-prefix\" *ngIf=\"_prefixChildren.length\"><ng-content select=\"[matPrefix]\"></ng-content></div><div class=\"mat-form-field-infix\" #inputContainer><ng-content></ng-content><span class=\"mat-form-field-label-wrapper\"><label class=\"mat-form-field-label\" [id]=\"_labelId\" [attr.for]=\"_control.id\" [attr.aria-owns]=\"_control.id\" [class.mat-empty]=\"_control.empty && !_shouldAlwaysFloat\" [class.mat-form-field-empty]=\"_control.empty && !_shouldAlwaysFloat\" [class.mat-accent]=\"color == 'accent'\" [class.mat-warn]=\"color == 'warn'\" #label *ngIf=\"_hasFloatingLabel()\" [ngSwitch]=\"_hasLabel()\"><ng-container *ngSwitchCase=\"false\"><ng-content select=\"mat-placeholder\"></ng-content>{{_control.placeholder}}</ng-container><ng-content select=\"mat-label\" *ngSwitchCase=\"true\"></ng-content><span class=\"mat-placeholder-required mat-form-field-required-marker\" aria-hidden=\"true\" *ngIf=\"!hideRequiredMarker && _control.required && !_control.disabled\">&nbsp;*</span></label></span></div><div class=\"mat-form-field-suffix\" *ngIf=\"_suffixChildren.length\"><ng-content select=\"[matSuffix]\"></ng-content></div></div><div class=\"mat-form-field-underline\" #underline *ngIf=\"appearance != 'outline'\"><span class=\"mat-form-field-ripple\" [class.mat-accent]=\"color == 'accent'\" [class.mat-warn]=\"color == 'warn'\"></span></div><div class=\"mat-form-field-subscript-wrapper\" [ngSwitch]=\"_getDisplayedMessages()\"><div *ngSwitchCase=\"'error'\" [@transitionMessages]=\"_subscriptAnimationState\"><ng-content select=\"mat-error\"></ng-content></div><div class=\"mat-form-field-hint-wrapper\" *ngSwitchCase=\"'hint'\" [@transitionMessages]=\"_subscriptAnimationState\"><div *ngIf=\"hintLabel\" [id]=\"_hintLabelId\" class=\"mat-hint\">{{hintLabel}}</div><ng-content select=\"mat-hint:not([align='end'])\"></ng-content><div class=\"mat-form-field-hint-spacer\"></div><ng-content select=\"mat-hint[align='end']\"></ng-content></div></div></div>",
779
+ template: "<div class=\"mat-form-field-wrapper\"><div class=\"mat-form-field-flex\" #connectionContainer (click)=\"_control.onContainerClick && _control.onContainerClick($event)\"><ng-container *ngIf=\"appearance == 'outline'\"><div class=\"mat-form-field-outline\"><div class=\"mat-form-field-outline-start\"></div><div class=\"mat-form-field-outline-gap\"></div><div class=\"mat-form-field-outline-end\"></div></div><div class=\"mat-form-field-outline mat-form-field-outline-thick\"><div class=\"mat-form-field-outline-start\"></div><div class=\"mat-form-field-outline-gap\"></div><div class=\"mat-form-field-outline-end\"></div></div></ng-container><div class=\"mat-form-field-prefix\" *ngIf=\"_prefixChildren.length\"><ng-content select=\"[matPrefix]\"></ng-content></div><div class=\"mat-form-field-infix\" #inputContainer><ng-content></ng-content><span class=\"mat-form-field-label-wrapper\"><label class=\"mat-form-field-label\" (cdkObserveContent)=\"updateOutlineGap()\" [id]=\"_labelId\" [attr.for]=\"_control.id\" [attr.aria-owns]=\"_control.id\" [class.mat-empty]=\"_control.empty && !_shouldAlwaysFloat\" [class.mat-form-field-empty]=\"_control.empty && !_shouldAlwaysFloat\" [class.mat-accent]=\"color == 'accent'\" [class.mat-warn]=\"color == 'warn'\" #label *ngIf=\"_hasFloatingLabel()\" [ngSwitch]=\"_hasLabel()\"><ng-container *ngSwitchCase=\"false\"><ng-content select=\"mat-placeholder\"></ng-content>{{_control.placeholder}}</ng-container><ng-content select=\"mat-label\" *ngSwitchCase=\"true\"></ng-content><span class=\"mat-placeholder-required mat-form-field-required-marker\" aria-hidden=\"true\" *ngIf=\"!hideRequiredMarker && _control.required && !_control.disabled\">&nbsp;*</span></label></span></div><div class=\"mat-form-field-suffix\" *ngIf=\"_suffixChildren.length\"><ng-content select=\"[matSuffix]\"></ng-content></div></div><div class=\"mat-form-field-underline\" #underline *ngIf=\"appearance != 'outline'\"><span class=\"mat-form-field-ripple\" [class.mat-accent]=\"color == 'accent'\" [class.mat-warn]=\"color == 'warn'\"></span></div><div class=\"mat-form-field-subscript-wrapper\" [ngSwitch]=\"_getDisplayedMessages()\"><div *ngSwitchCase=\"'error'\" [@transitionMessages]=\"_subscriptAnimationState\"><ng-content select=\"mat-error\"></ng-content></div><div class=\"mat-form-field-hint-wrapper\" *ngSwitchCase=\"'hint'\" [@transitionMessages]=\"_subscriptAnimationState\"><div *ngIf=\"hintLabel\" [id]=\"_hintLabelId\" class=\"mat-hint\">{{hintLabel}}</div><ng-content select=\"mat-hint:not([align='end'])\"></ng-content><div class=\"mat-form-field-hint-spacer\"></div><ng-content select=\"mat-hint[align='end']\"></ng-content></div></div></div>",
772
780
  // MatInput is a directive and can't have styles, so we need to include its styles here.
773
781
  // The MatInput styles are fairly minimal so it shouldn't be a big deal for people who
774
782
  // aren't using MatInput.
775
- styles: [".mat-form-field{display:inline-block;position:relative;text-align:left}[dir=rtl] .mat-form-field{text-align:right}.mat-form-field-wrapper{position:relative}.mat-form-field-flex{display:inline-flex;align-items:baseline;box-sizing:border-box;width:100%}.mat-form-field-prefix,.mat-form-field-suffix{white-space:nowrap;flex:none;position:relative}.mat-form-field-infix{display:block;position:relative;flex:auto;min-width:0;width:180px}@media screen and (-ms-high-contrast:active){.mat-form-field-infix{border-image:linear-gradient(transparent,transparent)}}.mat-form-field-label-wrapper{position:absolute;left:0;box-sizing:content-box;width:100%;height:100%;overflow:hidden;pointer-events:none}.mat-form-field-label{position:absolute;left:0;font:inherit;pointer-events:none;width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transform-origin:0 0;transition:transform .4s cubic-bezier(.25,.8,.25,1),color .4s cubic-bezier(.25,.8,.25,1),width .4s cubic-bezier(.25,.8,.25,1);display:none}[dir=rtl] .mat-form-field-label{transform-origin:100% 0;left:auto;right:0}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-empty.mat-form-field-label{display:block}.mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{display:none}.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{display:block;transition:none}.mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label,.mat-input-server[placeholder]:not(:placeholder-shown)+.mat-form-field-label-wrapper .mat-form-field-label{display:none}.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label,.mat-form-field-can-float .mat-input-server[placeholder]:not(:placeholder-shown)+.mat-form-field-label-wrapper .mat-form-field-label{display:block}.mat-form-field-label:not(.mat-form-field-empty){transition:none}.mat-form-field-underline{position:absolute;width:100%;pointer-events:none;transform:scaleY(1.0001)}.mat-form-field-ripple{position:absolute;left:0;width:100%;transform-origin:50%;transform:scaleX(.5);opacity:0;transition:background-color .3s cubic-bezier(.55,0,.55,.2)}.mat-form-field.mat-focused .mat-form-field-ripple,.mat-form-field.mat-form-field-invalid .mat-form-field-ripple{opacity:1;transform:scaleX(1);transition:transform .3s cubic-bezier(.25,.8,.25,1),opacity .1s cubic-bezier(.25,.8,.25,1),background-color .3s cubic-bezier(.25,.8,.25,1)}.mat-form-field-subscript-wrapper{position:absolute;box-sizing:border-box;width:100%;overflow:hidden}.mat-form-field-label-wrapper .mat-icon,.mat-form-field-subscript-wrapper .mat-icon{width:1em;height:1em;font-size:inherit;vertical-align:baseline}.mat-form-field-hint-wrapper{display:flex}.mat-form-field-hint-spacer{flex:1 0 1em}.mat-error{display:block}.mat-form-field._mat-animation-noopable .mat-form-field-label,.mat-form-field._mat-animation-noopable .mat-form-field-ripple{transition:none} .mat-form-field-appearance-fill .mat-form-field-flex{border-radius:4px 4px 0 0;padding:.75em .75em 0 .75em}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-fill .mat-form-field-flex{outline:solid 1px}}.mat-form-field-appearance-fill .mat-form-field-underline::before{content:'';display:block;position:absolute;bottom:0;height:1px;width:100%}.mat-form-field-appearance-fill .mat-form-field-ripple{bottom:0;height:2px}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-fill .mat-form-field-ripple{height:0;border-top:solid 2px}}.mat-form-field-appearance-fill:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple{opacity:1;transform:none;transition:opacity .6s cubic-bezier(.25,.8,.25,1)}.mat-form-field-appearance-fill._mat-animation-noopable:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple{transition:none}.mat-form-field-appearance-fill .mat-form-field-subscript-wrapper{padding:0 1em} .mat-form-field-appearance-legacy .mat-form-field-label{transform:perspective(100px);-ms-transform:none}.mat-form-field-appearance-legacy .mat-form-field-prefix .mat-icon,.mat-form-field-appearance-legacy .mat-form-field-suffix .mat-icon{width:1em}.mat-form-field-appearance-legacy .mat-form-field-prefix .mat-icon-button,.mat-form-field-appearance-legacy .mat-form-field-suffix .mat-icon-button{font:inherit;vertical-align:baseline}.mat-form-field-appearance-legacy .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field-appearance-legacy .mat-form-field-suffix .mat-icon-button .mat-icon{font-size:inherit}.mat-form-field-appearance-legacy .mat-form-field-underline{height:1px}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-legacy .mat-form-field-underline{height:0;border-top:solid 1px}}.mat-form-field-appearance-legacy .mat-form-field-ripple{top:0;height:2px}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-legacy .mat-form-field-ripple{height:0;border-top:solid 2px}}.mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline{background-position:0;background-color:transparent}.mat-form-field-appearance-legacy.mat-form-field-invalid:not(.mat-focused) .mat-form-field-ripple{height:1px} .mat-form-field-appearance-outline .mat-form-field-wrapper{margin:.25em 0}.mat-form-field-appearance-outline .mat-form-field-flex{padding:0 .75em 0 .75em;margin-top:-.25em;position:relative}.mat-form-field-appearance-outline .mat-form-field-prefix,.mat-form-field-appearance-outline .mat-form-field-suffix{top:.25em}.mat-form-field-appearance-outline .mat-form-field-outline{display:flex;position:absolute;top:.25em;left:0;right:0;bottom:0;pointer-events:none}.mat-form-field-appearance-outline .mat-form-field-outline-end,.mat-form-field-appearance-outline .mat-form-field-outline-start{border:1px solid currentColor;min-width:5px}.mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:5px 0 0 5px;border-right-style:none}[dir=rtl] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-right-style:solid;border-left-style:none;border-radius:0 5px 5px 0}.mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 5px 5px 0;border-left-style:none;flex-grow:1}[dir=rtl] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-left-style:solid;border-right-style:none;border-radius:5px 0 0 5px}.mat-form-field-appearance-outline .mat-form-field-outline-gap{border-radius:.000001px;border:1px solid currentColor;border-left-style:none;border-right-style:none}.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-outline-gap{border-top-color:transparent}.mat-form-field-appearance-outline .mat-form-field-outline-thick{opacity:0}.mat-form-field-appearance-outline .mat-form-field-outline-thick .mat-form-field-outline-end,.mat-form-field-appearance-outline .mat-form-field-outline-thick .mat-form-field-outline-gap,.mat-form-field-appearance-outline .mat-form-field-outline-thick .mat-form-field-outline-start{border-width:2px;transition:border-color .3s cubic-bezier(.25,.8,.25,1)}.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline,.mat-form-field-appearance-outline.mat-form-field-invalid .mat-form-field-outline{opacity:0;transition:opacity .1s cubic-bezier(.25,.8,.25,1)}.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline-thick,.mat-form-field-appearance-outline.mat-form-field-invalid .mat-form-field-outline-thick{opacity:1}.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-form-field-flex:hover .mat-form-field-outline{opacity:0;transition:opacity .6s cubic-bezier(.25,.8,.25,1)}.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-form-field-flex:hover .mat-form-field-outline-thick{opacity:1}.mat-form-field-appearance-outline .mat-form-field-subscript-wrapper{padding:0 1em}.mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline,.mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline-end,.mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline-gap,.mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline-start,.mat-form-field-appearance-outline._mat-animation-noopable:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-outline{transition:none} .mat-form-field-appearance-standard .mat-form-field-flex{padding-top:.75em}.mat-form-field-appearance-standard .mat-form-field-underline{height:1px}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-standard .mat-form-field-underline{height:0;border-top:solid 1px}}.mat-form-field-appearance-standard .mat-form-field-ripple{bottom:0;height:2px}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-standard .mat-form-field-ripple{height:0;border-top:2px}}.mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline{background-position:0;background-color:transparent}.mat-form-field-appearance-standard:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple{opacity:1;transform:none;transition:opacity .6s cubic-bezier(.25,.8,.25,1)}.mat-form-field-appearance-standard._mat-animation-noopable:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple{transition:none} .mat-input-element{font:inherit;background:0 0;color:currentColor;border:none;outline:0;padding:0;margin:0;width:100%;max-width:100%;vertical-align:bottom;text-align:inherit}.mat-input-element:-moz-ui-invalid{box-shadow:none}.mat-input-element::-ms-clear,.mat-input-element::-ms-reveal{display:none}.mat-input-element::-webkit-caps-lock-indicator,.mat-input-element::-webkit-contacts-auto-fill-button,.mat-input-element::-webkit-credentials-auto-fill-button{visibility:hidden}.mat-input-element[type=date]::after,.mat-input-element[type=datetime-local]::after,.mat-input-element[type=datetime]::after,.mat-input-element[type=month]::after,.mat-input-element[type=time]::after,.mat-input-element[type=week]::after{content:' ';white-space:pre;width:1px}.mat-input-element::placeholder{transition:color .4s .133s cubic-bezier(.25,.8,.25,1)}.mat-input-element::-moz-placeholder{transition:color .4s .133s cubic-bezier(.25,.8,.25,1)}.mat-input-element::-webkit-input-placeholder{transition:color .4s .133s cubic-bezier(.25,.8,.25,1)}.mat-input-element:-ms-input-placeholder{transition:color .4s .133s cubic-bezier(.25,.8,.25,1)}.mat-form-field-hide-placeholder .mat-input-element::placeholder{color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-form-field-hide-placeholder .mat-input-element::-moz-placeholder{color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-form-field-hide-placeholder .mat-input-element::-webkit-input-placeholder{color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-form-field-hide-placeholder .mat-input-element:-ms-input-placeholder{color:transparent!important;-webkit-text-fill-color:transparent;transition:none}textarea.mat-input-element{resize:vertical;overflow:auto}textarea.mat-input-element.cdk-textarea-autosize{resize:none}textarea.mat-input-element{padding:2px 0;margin:-2px 0}"],
783
+ styles: [".mat-form-field{display:inline-block;position:relative;text-align:left}[dir=rtl] .mat-form-field{text-align:right}.mat-form-field-wrapper{position:relative}.mat-form-field-flex{display:inline-flex;align-items:baseline;box-sizing:border-box;width:100%}.mat-form-field-prefix,.mat-form-field-suffix{white-space:nowrap;flex:none;position:relative}.mat-form-field-infix{display:block;position:relative;flex:auto;min-width:0;width:180px}@media screen and (-ms-high-contrast:active){.mat-form-field-infix{border-image:linear-gradient(transparent,transparent)}}.mat-form-field-label-wrapper{position:absolute;left:0;box-sizing:content-box;width:100%;height:100%;overflow:hidden;pointer-events:none}.mat-form-field-label{position:absolute;left:0;font:inherit;pointer-events:none;width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transform-origin:0 0;transition:transform .4s cubic-bezier(.25,.8,.25,1),color .4s cubic-bezier(.25,.8,.25,1),width .4s cubic-bezier(.25,.8,.25,1);display:none}[dir=rtl] .mat-form-field-label{transform-origin:100% 0;left:auto;right:0}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-empty.mat-form-field-label{display:block}.mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{display:none}.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{display:block;transition:none}.mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label,.mat-input-server[placeholder]:not(:placeholder-shown)+.mat-form-field-label-wrapper .mat-form-field-label{display:none}.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label,.mat-form-field-can-float .mat-input-server[placeholder]:not(:placeholder-shown)+.mat-form-field-label-wrapper .mat-form-field-label{display:block}.mat-form-field-label:not(.mat-form-field-empty){transition:none}.mat-form-field-underline{position:absolute;width:100%;pointer-events:none;transform:scaleY(1.0001)}.mat-form-field-ripple{position:absolute;left:0;width:100%;transform-origin:50%;transform:scaleX(.5);opacity:0;transition:background-color .3s cubic-bezier(.55,0,.55,.2)}.mat-form-field.mat-focused .mat-form-field-ripple,.mat-form-field.mat-form-field-invalid .mat-form-field-ripple{opacity:1;transform:scaleX(1);transition:transform .3s cubic-bezier(.25,.8,.25,1),opacity .1s cubic-bezier(.25,.8,.25,1),background-color .3s cubic-bezier(.25,.8,.25,1)}.mat-form-field-subscript-wrapper{position:absolute;box-sizing:border-box;width:100%;overflow:hidden}.mat-form-field-label-wrapper .mat-icon,.mat-form-field-subscript-wrapper .mat-icon{width:1em;height:1em;font-size:inherit;vertical-align:baseline}.mat-form-field-hint-wrapper{display:flex}.mat-form-field-hint-spacer{flex:1 0 1em}.mat-error{display:block}.mat-form-field._mat-animation-noopable .mat-form-field-label,.mat-form-field._mat-animation-noopable .mat-form-field-ripple{transition:none} .mat-form-field-appearance-fill .mat-form-field-flex{border-radius:4px 4px 0 0;padding:.75em .75em 0 .75em}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-fill .mat-form-field-flex{outline:solid 1px}}.mat-form-field-appearance-fill .mat-form-field-underline::before{content:'';display:block;position:absolute;bottom:0;height:1px;width:100%}.mat-form-field-appearance-fill .mat-form-field-ripple{bottom:0;height:2px}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-fill .mat-form-field-ripple{height:0;border-top:solid 2px}}.mat-form-field-appearance-fill:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple{opacity:1;transform:none;transition:opacity .6s cubic-bezier(.25,.8,.25,1)}.mat-form-field-appearance-fill._mat-animation-noopable:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple{transition:none}.mat-form-field-appearance-fill .mat-form-field-subscript-wrapper{padding:0 1em} .mat-form-field-appearance-legacy .mat-form-field-label{transform:perspective(100px);-ms-transform:none}.mat-form-field-appearance-legacy .mat-form-field-prefix .mat-icon,.mat-form-field-appearance-legacy .mat-form-field-suffix .mat-icon{width:1em}.mat-form-field-appearance-legacy .mat-form-field-prefix .mat-icon-button,.mat-form-field-appearance-legacy .mat-form-field-suffix .mat-icon-button{font:inherit;vertical-align:baseline}.mat-form-field-appearance-legacy .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field-appearance-legacy .mat-form-field-suffix .mat-icon-button .mat-icon{font-size:inherit}.mat-form-field-appearance-legacy .mat-form-field-underline{height:1px}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-legacy .mat-form-field-underline{height:0;border-top:solid 1px}}.mat-form-field-appearance-legacy .mat-form-field-ripple{top:0;height:2px;overflow:hidden}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-legacy .mat-form-field-ripple{height:0;border-top:solid 2px}}.mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline{background-position:0;background-color:transparent}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline{border-top-style:dotted;border-top-width:2px}}.mat-form-field-appearance-legacy.mat-form-field-invalid:not(.mat-focused) .mat-form-field-ripple{height:1px} .mat-form-field-appearance-outline .mat-form-field-wrapper{margin:.25em 0}.mat-form-field-appearance-outline .mat-form-field-flex{padding:0 .75em 0 .75em;margin-top:-.25em;position:relative}.mat-form-field-appearance-outline .mat-form-field-prefix,.mat-form-field-appearance-outline .mat-form-field-suffix{top:.25em}.mat-form-field-appearance-outline .mat-form-field-outline{display:flex;position:absolute;top:.25em;left:0;right:0;bottom:0;pointer-events:none}.mat-form-field-appearance-outline .mat-form-field-outline-end,.mat-form-field-appearance-outline .mat-form-field-outline-start{border:1px solid currentColor;min-width:5px}.mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:5px 0 0 5px;border-right-style:none}[dir=rtl] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-right-style:solid;border-left-style:none;border-radius:0 5px 5px 0}.mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 5px 5px 0;border-left-style:none;flex-grow:1}[dir=rtl] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-left-style:solid;border-right-style:none;border-radius:5px 0 0 5px}.mat-form-field-appearance-outline .mat-form-field-outline-gap{border-radius:.000001px;border:1px solid currentColor;border-left-style:none;border-right-style:none}.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-outline-gap{border-top-color:transparent}.mat-form-field-appearance-outline .mat-form-field-outline-thick{opacity:0}.mat-form-field-appearance-outline .mat-form-field-outline-thick .mat-form-field-outline-end,.mat-form-field-appearance-outline .mat-form-field-outline-thick .mat-form-field-outline-gap,.mat-form-field-appearance-outline .mat-form-field-outline-thick .mat-form-field-outline-start{border-width:2px;transition:border-color .3s cubic-bezier(.25,.8,.25,1)}.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline,.mat-form-field-appearance-outline.mat-form-field-invalid .mat-form-field-outline{opacity:0;transition:opacity .1s cubic-bezier(.25,.8,.25,1)}.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline-thick,.mat-form-field-appearance-outline.mat-form-field-invalid .mat-form-field-outline-thick{opacity:1}.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-form-field-flex:hover .mat-form-field-outline{opacity:0;transition:opacity .6s cubic-bezier(.25,.8,.25,1)}.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mat-form-field-flex:hover .mat-form-field-outline-thick{opacity:1}.mat-form-field-appearance-outline .mat-form-field-subscript-wrapper{padding:0 1em}.mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline,.mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline-end,.mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline-gap,.mat-form-field-appearance-outline._mat-animation-noopable .mat-form-field-outline-start,.mat-form-field-appearance-outline._mat-animation-noopable:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-outline{transition:none} .mat-form-field-appearance-standard .mat-form-field-flex{padding-top:.75em}.mat-form-field-appearance-standard .mat-form-field-underline{height:1px}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-standard .mat-form-field-underline{height:0;border-top:solid 1px}}.mat-form-field-appearance-standard .mat-form-field-ripple{bottom:0;height:2px}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-standard .mat-form-field-ripple{height:0;border-top:2px}}.mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline{background-position:0;background-color:transparent}@media screen and (-ms-high-contrast:active){.mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline{border-top-style:dotted;border-top-width:2px}}.mat-form-field-appearance-standard:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple{opacity:1;transform:none;transition:opacity .6s cubic-bezier(.25,.8,.25,1)}.mat-form-field-appearance-standard._mat-animation-noopable:not(.mat-form-field-disabled) .mat-form-field-flex:hover~.mat-form-field-underline .mat-form-field-ripple{transition:none} .mat-input-element{font:inherit;background:0 0;color:currentColor;border:none;outline:0;padding:0;margin:0;width:100%;max-width:100%;vertical-align:bottom;text-align:inherit}.mat-input-element:-moz-ui-invalid{box-shadow:none}.mat-input-element::-ms-clear,.mat-input-element::-ms-reveal{display:none}.mat-input-element,.mat-input-element::-webkit-search-cancel-button,.mat-input-element::-webkit-search-decoration,.mat-input-element::-webkit-search-results-button,.mat-input-element::-webkit-search-results-decoration{-webkit-appearance:none}.mat-input-element::-webkit-caps-lock-indicator,.mat-input-element::-webkit-contacts-auto-fill-button,.mat-input-element::-webkit-credentials-auto-fill-button{visibility:hidden}.mat-input-element[type=date]::after,.mat-input-element[type=datetime-local]::after,.mat-input-element[type=datetime]::after,.mat-input-element[type=month]::after,.mat-input-element[type=time]::after,.mat-input-element[type=week]::after{content:' ';white-space:pre;width:1px}.mat-input-element::placeholder{transition:color .4s .133s cubic-bezier(.25,.8,.25,1)}.mat-input-element::-moz-placeholder{transition:color .4s .133s cubic-bezier(.25,.8,.25,1)}.mat-input-element::-webkit-input-placeholder{transition:color .4s .133s cubic-bezier(.25,.8,.25,1)}.mat-input-element:-ms-input-placeholder{transition:color .4s .133s cubic-bezier(.25,.8,.25,1)}.mat-form-field-hide-placeholder .mat-input-element::placeholder{color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-form-field-hide-placeholder .mat-input-element::-moz-placeholder{color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-form-field-hide-placeholder .mat-input-element::-webkit-input-placeholder{color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-form-field-hide-placeholder .mat-input-element:-ms-input-placeholder{color:transparent!important;-webkit-text-fill-color:transparent;transition:none}textarea.mat-input-element{resize:vertical;overflow:auto}textarea.mat-input-element.cdk-textarea-autosize{resize:none}textarea.mat-input-element{padding:2px 0;margin:-2px 0}"],
776
784
  animations: [matFormFieldAnimations.transitionMessages],
777
785
  host: {
778
786
  'class': 'mat-form-field',
@@ -852,7 +860,10 @@ var MatFormFieldModule = /** @class */ (function () {
852
860
  MatPrefix,
853
861
  MatSuffix,
854
862
  ],
855
- imports: [common.CommonModule],
863
+ imports: [
864
+ common.CommonModule,
865
+ observers.ObserversModule,
866
+ ],
856
867
  exports: [
857
868
  MatError,
858
869
  MatFormField,