@angular/material 2.0.0-beta.0 → 2.0.0-beta.12

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 (1664) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +4 -165
  3. package/_theming.scss +3878 -0
  4. package/autocomplete/index.d.ts +8 -5
  5. package/autocomplete/index.metadata.json +12 -1
  6. package/autocomplete/package.json +7 -0
  7. package/autocomplete/typings/autocomplete-module.d.ts +2 -0
  8. package/autocomplete/typings/autocomplete-trigger.d.ts +159 -0
  9. package/autocomplete/typings/autocomplete.d.ts +62 -0
  10. package/autocomplete/typings/index.d.ts +4 -0
  11. package/autocomplete/typings/index.metadata.json +1 -0
  12. package/autocomplete/typings/public-api.d.ts +10 -0
  13. package/autocomplete.d.ts +8 -0
  14. package/autocomplete.metadata.json +12 -0
  15. package/bundles/material-autocomplete.umd.js +2969 -0
  16. package/bundles/material-autocomplete.umd.js.map +1 -0
  17. package/bundles/material-autocomplete.umd.min.js +10 -0
  18. package/bundles/material-autocomplete.umd.min.js.map +1 -0
  19. package/bundles/material-button-toggle.umd.js +2284 -0
  20. package/bundles/material-button-toggle.umd.js.map +1 -0
  21. package/bundles/material-button-toggle.umd.min.js +10 -0
  22. package/bundles/material-button-toggle.umd.min.js.map +1 -0
  23. package/bundles/material-button.umd.js +2092 -0
  24. package/bundles/material-button.umd.js.map +1 -0
  25. package/bundles/material-button.umd.min.js +10 -0
  26. package/bundles/material-button.umd.min.js.map +1 -0
  27. package/bundles/material-card.umd.js +2006 -0
  28. package/bundles/material-card.umd.js.map +1 -0
  29. package/bundles/material-card.umd.min.js +9 -0
  30. package/bundles/material-card.umd.min.js.map +1 -0
  31. package/bundles/material-checkbox.umd.js +2327 -0
  32. package/bundles/material-checkbox.umd.js.map +1 -0
  33. package/bundles/material-checkbox.umd.min.js +10 -0
  34. package/bundles/material-checkbox.umd.min.js.map +1 -0
  35. package/bundles/material-chips.umd.js +3542 -0
  36. package/bundles/material-chips.umd.js.map +1 -0
  37. package/bundles/material-chips.umd.min.js +10 -0
  38. package/bundles/material-chips.umd.min.js.map +1 -0
  39. package/bundles/material-core.umd.js +2206 -0
  40. package/bundles/material-core.umd.js.map +1 -0
  41. package/bundles/material-core.umd.min.js +9 -0
  42. package/bundles/material-core.umd.min.js.map +1 -0
  43. package/bundles/material-datepicker.umd.js +6128 -0
  44. package/bundles/material-datepicker.umd.js.map +1 -0
  45. package/bundles/material-datepicker.umd.min.js +12 -0
  46. package/bundles/material-datepicker.umd.min.js.map +1 -0
  47. package/bundles/material-dialog.umd.js +2530 -0
  48. package/bundles/material-dialog.umd.js.map +1 -0
  49. package/bundles/material-dialog.umd.min.js +10 -0
  50. package/bundles/material-dialog.umd.min.js.map +1 -0
  51. package/bundles/material-expansion.umd.js +2128 -0
  52. package/bundles/material-expansion.umd.js.map +1 -0
  53. package/bundles/material-expansion.umd.min.js +9 -0
  54. package/bundles/material-expansion.umd.min.js.map +1 -0
  55. package/bundles/material-form-field.umd.js +2091 -0
  56. package/bundles/material-form-field.umd.js.map +1 -0
  57. package/bundles/material-form-field.umd.min.js +10 -0
  58. package/bundles/material-form-field.umd.min.js.map +1 -0
  59. package/bundles/material-grid-list.umd.js +2621 -0
  60. package/bundles/material-grid-list.umd.js.map +1 -0
  61. package/bundles/material-grid-list.umd.min.js +10 -0
  62. package/bundles/material-grid-list.umd.min.js.map +1 -0
  63. package/bundles/material-icon.umd.js +2442 -0
  64. package/bundles/material-icon.umd.js.map +1 -0
  65. package/bundles/material-icon.umd.min.js +10 -0
  66. package/bundles/material-icon.umd.min.js.map +1 -0
  67. package/bundles/material-input.umd.js +2716 -0
  68. package/bundles/material-input.umd.js.map +1 -0
  69. package/bundles/material-input.umd.min.js +10 -0
  70. package/bundles/material-input.umd.min.js.map +1 -0
  71. package/bundles/material-list.umd.js +2611 -0
  72. package/bundles/material-list.umd.js.map +1 -0
  73. package/bundles/material-list.umd.min.js +11 -0
  74. package/bundles/material-list.umd.min.js.map +1 -0
  75. package/bundles/material-menu.umd.js +2613 -0
  76. package/bundles/material-menu.umd.js.map +1 -0
  77. package/bundles/material-menu.umd.min.js +10 -0
  78. package/bundles/material-menu.umd.min.js.map +1 -0
  79. package/bundles/material-paginator.umd.js +5228 -0
  80. package/bundles/material-paginator.umd.js.map +1 -0
  81. package/bundles/material-paginator.umd.min.js +11 -0
  82. package/bundles/material-paginator.umd.min.js.map +1 -0
  83. package/bundles/material-progress-bar.umd.js +1784 -0
  84. package/bundles/material-progress-bar.umd.js.map +1 -0
  85. package/bundles/material-progress-bar.umd.min.js +9 -0
  86. package/bundles/material-progress-bar.umd.min.js.map +1 -0
  87. package/bundles/material-progress-spinner.umd.js +2005 -0
  88. package/bundles/material-progress-spinner.umd.js.map +1 -0
  89. package/bundles/material-progress-spinner.umd.min.js +10 -0
  90. package/bundles/material-progress-spinner.umd.min.js.map +1 -0
  91. package/bundles/material-radio.umd.js +2530 -0
  92. package/bundles/material-radio.umd.js.map +1 -0
  93. package/bundles/material-radio.umd.min.js +10 -0
  94. package/bundles/material-radio.umd.min.js.map +1 -0
  95. package/bundles/material-select.umd.js +3843 -0
  96. package/bundles/material-select.umd.js.map +1 -0
  97. package/bundles/material-select.umd.min.js +10 -0
  98. package/bundles/material-select.umd.min.js.map +1 -0
  99. package/bundles/material-sidenav.umd.js +2577 -0
  100. package/bundles/material-sidenav.umd.js.map +1 -0
  101. package/bundles/material-sidenav.umd.min.js +10 -0
  102. package/bundles/material-sidenav.umd.min.js.map +1 -0
  103. package/bundles/material-slide-toggle.umd.js +2253 -0
  104. package/bundles/material-slide-toggle.umd.js.map +1 -0
  105. package/bundles/material-slide-toggle.umd.min.js +10 -0
  106. package/bundles/material-slide-toggle.umd.min.js.map +1 -0
  107. package/bundles/material-slider.umd.js +2621 -0
  108. package/bundles/material-slider.umd.js.map +1 -0
  109. package/bundles/material-slider.umd.min.js +10 -0
  110. package/bundles/material-slider.umd.min.js.map +1 -0
  111. package/bundles/material-snack-bar.umd.js +2258 -0
  112. package/bundles/material-snack-bar.umd.js.map +1 -0
  113. package/bundles/material-snack-bar.umd.min.js +10 -0
  114. package/bundles/material-snack-bar.umd.min.js.map +1 -0
  115. package/bundles/material-sort.umd.js +1917 -0
  116. package/bundles/material-sort.umd.js.map +1 -0
  117. package/bundles/material-sort.umd.min.js +9 -0
  118. package/bundles/material-sort.umd.min.js.map +1 -0
  119. package/bundles/material-stepper.umd.js +3271 -0
  120. package/bundles/material-stepper.umd.js.map +1 -0
  121. package/bundles/material-stepper.umd.min.js +10 -0
  122. package/bundles/material-stepper.umd.min.js.map +1 -0
  123. package/bundles/material-table.umd.js +1976 -0
  124. package/bundles/material-table.umd.js.map +1 -0
  125. package/bundles/material-table.umd.min.js +9 -0
  126. package/bundles/material-table.umd.min.js.map +1 -0
  127. package/bundles/material-tabs.umd.js +3341 -0
  128. package/bundles/material-tabs.umd.js.map +1 -0
  129. package/bundles/material-tabs.umd.min.js +10 -0
  130. package/bundles/material-tabs.umd.min.js.map +1 -0
  131. package/bundles/material-toolbar.umd.js +1790 -0
  132. package/bundles/material-toolbar.umd.js.map +1 -0
  133. package/bundles/material-toolbar.umd.min.js +9 -0
  134. package/bundles/material-toolbar.umd.min.js.map +1 -0
  135. package/bundles/material-tooltip.umd.js +2339 -0
  136. package/bundles/material-tooltip.umd.js.map +1 -0
  137. package/bundles/material-tooltip.umd.min.js +10 -0
  138. package/bundles/material-tooltip.umd.min.js.map +1 -0
  139. package/bundles/material.umd.js +21541 -12552
  140. package/bundles/material.umd.js.map +1 -0
  141. package/bundles/material.umd.min.js +22 -0
  142. package/bundles/material.umd.min.js.map +1 -0
  143. package/button/index.d.ts +8 -1
  144. package/button/index.metadata.json +12 -1
  145. package/button/package.json +7 -0
  146. package/button/typings/button-module.d.ts +2 -0
  147. package/button/typings/button.d.ts +77 -0
  148. package/button/typings/index.d.ts +4 -0
  149. package/button/typings/index.metadata.json +1 -0
  150. package/button/typings/public-api.d.ts +9 -0
  151. package/button-toggle/index.d.ts +8 -1
  152. package/button-toggle/index.metadata.json +12 -1
  153. package/button-toggle/package.json +7 -0
  154. package/button-toggle/typings/button-toggle-module.d.ts +2 -0
  155. package/button-toggle/typings/button-toggle.d.ts +163 -0
  156. package/button-toggle/typings/index.d.ts +4 -0
  157. package/button-toggle/typings/index.metadata.json +1 -0
  158. package/button-toggle/typings/public-api.d.ts +9 -0
  159. package/button-toggle.d.ts +8 -0
  160. package/button-toggle.metadata.json +12 -0
  161. package/button.d.ts +8 -0
  162. package/button.metadata.json +12 -0
  163. package/card/index.d.ts +8 -1
  164. package/card/index.metadata.json +12 -1
  165. package/card/package.json +7 -0
  166. package/card/typings/card-module.d.ts +2 -0
  167. package/card/typings/card.d.ts +95 -0
  168. package/card/typings/index.d.ts +4 -0
  169. package/card/typings/index.metadata.json +1 -0
  170. package/card/typings/public-api.d.ts +9 -0
  171. package/card.d.ts +8 -0
  172. package/card.metadata.json +12 -0
  173. package/checkbox/index.d.ts +8 -1
  174. package/checkbox/index.metadata.json +12 -1
  175. package/checkbox/package.json +7 -0
  176. package/checkbox/typings/checkbox-module.d.ts +2 -0
  177. package/checkbox/typings/checkbox-required-validator.d.ts +18 -0
  178. package/checkbox/typings/checkbox.d.ts +157 -0
  179. package/checkbox/typings/index.d.ts +4 -0
  180. package/checkbox/typings/index.metadata.json +1 -0
  181. package/checkbox/typings/public-api.d.ts +10 -0
  182. package/checkbox.d.ts +8 -0
  183. package/checkbox.metadata.json +12 -0
  184. package/chips/index.d.ts +8 -2
  185. package/chips/index.metadata.json +12 -1
  186. package/chips/package.json +7 -0
  187. package/chips/typings/chip-input.d.ts +43 -0
  188. package/chips/typings/chip-list.d.ts +222 -0
  189. package/chips/typings/chip.d.ts +123 -0
  190. package/chips/typings/chips-module.d.ts +2 -0
  191. package/chips/typings/index.d.ts +4 -0
  192. package/chips/typings/index.metadata.json +1 -0
  193. package/chips/typings/public-api.d.ts +11 -0
  194. package/chips.d.ts +8 -0
  195. package/chips.metadata.json +12 -0
  196. package/core/index.d.ts +8 -1
  197. package/core/index.metadata.json +12 -1
  198. package/core/package.json +7 -0
  199. package/core/typings/animation/animation.d.ts +20 -0
  200. package/core/typings/common-behaviors/color.d.ts +22 -0
  201. package/core/typings/common-behaviors/common-module.d.ts +25 -0
  202. package/core/typings/common-behaviors/constructor.d.ts +9 -0
  203. package/core/typings/common-behaviors/disable-ripple.d.ts +7 -0
  204. package/core/typings/common-behaviors/disabled.d.ts +7 -0
  205. package/core/typings/common-behaviors/index.d.ts +12 -0
  206. package/core/typings/common-behaviors/tabindex.d.ts +15 -0
  207. package/core/typings/compatibility/compatibility.d.ts +32 -0
  208. package/core/typings/datetime/date-adapter.d.ts +198 -0
  209. package/core/typings/datetime/date-formats.d.ts +20 -0
  210. package/core/typings/datetime/index.d.ts +8 -0
  211. package/core/typings/datetime/native-date-adapter.d.ts +50 -0
  212. package/core/typings/datetime/native-date-formats.d.ts +9 -0
  213. package/core/typings/error/error-options.d.ts +9 -0
  214. package/core/typings/gestures/gesture-annotations.d.ts +51 -0
  215. package/core/{gestures → typings/gestures}/gesture-config.d.ts +0 -0
  216. package/core/typings/index.d.ts +5 -0
  217. package/core/typings/index.metadata.json +1 -0
  218. package/core/typings/line/line.d.ts +30 -0
  219. package/core/typings/option/index.d.ts +4 -0
  220. package/core/typings/option/optgroup.d.ts +14 -0
  221. package/core/typings/option/option.d.ts +90 -0
  222. package/core/typings/placeholder/placeholder-options.d.ts +15 -0
  223. package/core/typings/public-api.d.ts +22 -0
  224. package/core/typings/ripple/index.d.ts +5 -0
  225. package/core/typings/ripple/ripple-ref.d.ts +28 -0
  226. package/core/typings/ripple/ripple-renderer.d.ts +69 -0
  227. package/core/typings/ripple/ripple.d.ts +65 -0
  228. package/core/typings/selection/index.d.ts +3 -0
  229. package/core/typings/selection/pseudo-checkbox/pseudo-checkbox.d.ts +20 -0
  230. package/core/typings/style/apply-transform.d.ts +13 -0
  231. package/core/typings/style/index.d.ts +8 -0
  232. package/core/typings/testing/month-constants.d.ts +12 -0
  233. package/core/typings/util/object-extend.d.ts +15 -0
  234. package/core.d.ts +7 -0
  235. package/core.metadata.json +12 -1
  236. package/datepicker/index.d.ts +8 -0
  237. package/datepicker/index.metadata.json +12 -0
  238. package/datepicker/package.json +7 -0
  239. package/datepicker/typings/calendar-body.d.ts +52 -0
  240. package/datepicker/typings/calendar.d.ts +97 -0
  241. package/datepicker/typings/coerce-date-property.d.ts +19 -0
  242. package/datepicker/typings/datepicker-errors.d.ts +9 -0
  243. package/datepicker/typings/datepicker-input.d.ts +92 -0
  244. package/datepicker/typings/datepicker-intl.d.ts +25 -0
  245. package/datepicker/typings/datepicker-module.d.ts +2 -0
  246. package/datepicker/typings/datepicker-toggle.d.ts +24 -0
  247. package/datepicker/typings/datepicker.d.ts +117 -0
  248. package/datepicker/typings/index.d.ts +4 -0
  249. package/datepicker/typings/index.metadata.json +1 -0
  250. package/datepicker/typings/month-view.d.ts +66 -0
  251. package/datepicker/typings/public-api.d.ts +17 -0
  252. package/datepicker/typings/year-view.d.ts +55 -0
  253. package/datepicker.d.ts +8 -0
  254. package/datepicker.metadata.json +12 -0
  255. package/dialog/index.d.ts +8 -9
  256. package/dialog/index.metadata.json +12 -1
  257. package/dialog/package.json +7 -0
  258. package/dialog/typings/dialog-config.d.ts +54 -0
  259. package/dialog/typings/dialog-container.d.ts +68 -0
  260. package/dialog/typings/dialog-content-directives.d.ts +43 -0
  261. package/dialog/typings/dialog-module.d.ts +2 -0
  262. package/dialog/typings/dialog-ref.d.ts +68 -0
  263. package/dialog/typings/dialog.d.ts +108 -0
  264. package/dialog/typings/index.d.ts +4 -0
  265. package/dialog/typings/index.metadata.json +1 -0
  266. package/dialog/typings/public-api.d.ts +13 -0
  267. package/dialog.d.ts +8 -0
  268. package/dialog.metadata.json +12 -0
  269. package/esm2015/autocomplete.js +673 -0
  270. package/esm2015/autocomplete.js.map +1 -0
  271. package/esm2015/button-toggle.js +589 -0
  272. package/esm2015/button-toggle.js.map +1 -0
  273. package/esm2015/button.js +318 -0
  274. package/esm2015/button.js.map +1 -0
  275. package/esm2015/card.js +312 -0
  276. package/esm2015/card.js.map +1 -0
  277. package/esm2015/checkbox.js +500 -0
  278. package/esm2015/checkbox.js.map +1 -0
  279. package/esm2015/chips.js +1330 -0
  280. package/esm2015/chips.js.map +1 -0
  281. package/esm2015/core.js +2117 -0
  282. package/esm2015/core.js.map +1 -0
  283. package/esm2015/datepicker.js +1813 -0
  284. package/esm2015/datepicker.js.map +1 -0
  285. package/esm2015/dialog.js +854 -0
  286. package/esm2015/dialog.js.map +1 -0
  287. package/esm2015/expansion.js +587 -0
  288. package/esm2015/expansion.js.map +1 -0
  289. package/esm2015/form-field.js +535 -0
  290. package/esm2015/form-field.js.map +1 -0
  291. package/esm2015/grid-list.js +827 -0
  292. package/esm2015/grid-list.js.map +1 -0
  293. package/esm2015/icon.js +735 -0
  294. package/esm2015/icon.js.map +1 -0
  295. package/esm2015/input.js +585 -0
  296. package/esm2015/input.js.map +1 -0
  297. package/esm2015/list.js +640 -0
  298. package/esm2015/list.js.map +1 -0
  299. package/esm2015/material.js +51 -0
  300. package/esm2015/material.js.map +1 -0
  301. package/esm2015/menu.js +923 -0
  302. package/esm2015/menu.js.map +1 -0
  303. package/esm2015/paginator.js +303 -0
  304. package/esm2015/paginator.js.map +1 -0
  305. package/esm2015/progress-bar.js +133 -0
  306. package/esm2015/progress-bar.js.map +1 -0
  307. package/esm2015/progress-spinner.js +303 -0
  308. package/esm2015/progress-spinner.js.map +1 -0
  309. package/esm2015/radio.js +709 -0
  310. package/esm2015/radio.js.map +1 -0
  311. package/esm2015/select.js +1394 -0
  312. package/esm2015/select.js.map +1 -0
  313. package/esm2015/sidenav.js +866 -0
  314. package/esm2015/sidenav.js.map +1 -0
  315. package/esm2015/slide-toggle.js +428 -0
  316. package/esm2015/slide-toggle.js.map +1 -0
  317. package/esm2015/slider.js +834 -0
  318. package/esm2015/slider.js.map +1 -0
  319. package/esm2015/snack-bar.js +596 -0
  320. package/esm2015/snack-bar.js.map +1 -0
  321. package/esm2015/sort.js +371 -0
  322. package/esm2015/sort.js.map +1 -0
  323. package/esm2015/stepper.js +395 -0
  324. package/esm2015/stepper.js.map +1 -0
  325. package/esm2015/table.js +272 -0
  326. package/esm2015/table.js.map +1 -0
  327. package/esm2015/tabs.js +1480 -0
  328. package/esm2015/tabs.js.map +1 -0
  329. package/esm2015/toolbar.js +89 -0
  330. package/esm2015/toolbar.js.map +1 -0
  331. package/esm2015/tooltip.js +671 -0
  332. package/esm2015/tooltip.js.map +1 -0
  333. package/esm5/autocomplete.es5.js +712 -0
  334. package/esm5/autocomplete.es5.js.map +1 -0
  335. package/esm5/button-toggle.es5.js +646 -0
  336. package/esm5/button-toggle.es5.js.map +1 -0
  337. package/esm5/button.es5.js +344 -0
  338. package/esm5/button.es5.js.map +1 -0
  339. package/esm5/card.es5.js +355 -0
  340. package/esm5/card.es5.js.map +1 -0
  341. package/esm5/checkbox.es5.js +538 -0
  342. package/esm5/checkbox.es5.js.map +1 -0
  343. package/esm5/chips.es5.js +1464 -0
  344. package/esm5/chips.es5.js.map +1 -0
  345. package/esm5/core.es5.js +2126 -0
  346. package/esm5/core.es5.js.map +1 -0
  347. package/esm5/datepicker.es5.js +1946 -0
  348. package/esm5/datepicker.es5.js.map +1 -0
  349. package/esm5/dialog.es5.js +894 -0
  350. package/esm5/dialog.es5.js.map +1 -0
  351. package/esm5/expansion.es5.js +622 -0
  352. package/esm5/expansion.es5.js.map +1 -0
  353. package/esm5/form-field.es5.js +580 -0
  354. package/esm5/form-field.es5.js.map +1 -0
  355. package/esm5/grid-list.es5.js +888 -0
  356. package/esm5/grid-list.es5.js.map +1 -0
  357. package/esm5/icon.es5.js +754 -0
  358. package/esm5/icon.es5.js.map +1 -0
  359. package/esm5/input.es5.js +630 -0
  360. package/esm5/input.es5.js.map +1 -0
  361. package/esm5/list.es5.js +704 -0
  362. package/esm5/list.es5.js.map +1 -0
  363. package/esm5/material.es5.js +51 -0
  364. package/esm5/material.es5.js.map +1 -0
  365. package/esm5/menu.es5.js +962 -0
  366. package/esm5/menu.es5.js.map +1 -0
  367. package/esm5/paginator.es5.js +328 -0
  368. package/esm5/paginator.es5.js.map +1 -0
  369. package/esm5/progress-bar.es5.js +147 -0
  370. package/esm5/progress-bar.es5.js.map +1 -0
  371. package/esm5/progress-spinner.es5.js +317 -0
  372. package/esm5/progress-spinner.es5.js.map +1 -0
  373. package/esm5/radio.es5.js +786 -0
  374. package/esm5/radio.es5.js.map +1 -0
  375. package/esm5/select.es5.js +1481 -0
  376. package/esm5/select.es5.js.map +1 -0
  377. package/esm5/sidenav.es5.js +946 -0
  378. package/esm5/sidenav.es5.js.map +1 -0
  379. package/esm5/slide-toggle.es5.js +455 -0
  380. package/esm5/slide-toggle.es5.js.map +1 -0
  381. package/esm5/slider.es5.js +938 -0
  382. package/esm5/slider.es5.js.map +1 -0
  383. package/esm5/snack-bar.es5.js +622 -0
  384. package/esm5/snack-bar.es5.js.map +1 -0
  385. package/esm5/sort.es5.js +389 -0
  386. package/esm5/sort.es5.js.map +1 -0
  387. package/esm5/stepper.es5.js +448 -0
  388. package/esm5/stepper.es5.js.map +1 -0
  389. package/esm5/table.es5.js +323 -0
  390. package/esm5/table.es5.js.map +1 -0
  391. package/esm5/tabs.es5.js +1591 -0
  392. package/esm5/tabs.es5.js.map +1 -0
  393. package/esm5/toolbar.es5.js +100 -0
  394. package/esm5/toolbar.es5.js.map +1 -0
  395. package/esm5/tooltip.es5.js +705 -0
  396. package/esm5/tooltip.es5.js.map +1 -0
  397. package/expansion/index.d.ts +8 -0
  398. package/expansion/index.metadata.json +12 -0
  399. package/expansion/package.json +7 -0
  400. package/expansion/typings/accordion-item.d.ts +41 -0
  401. package/expansion/typings/accordion.d.ts +29 -0
  402. package/expansion/typings/expansion-module.d.ts +2 -0
  403. package/expansion/typings/expansion-panel-header.d.ts +49 -0
  404. package/expansion/typings/expansion-panel.d.ts +40 -0
  405. package/expansion/typings/index.d.ts +5 -0
  406. package/expansion/typings/index.metadata.json +1 -0
  407. package/expansion/typings/public-api.d.ts +12 -0
  408. package/expansion.d.ts +8 -0
  409. package/expansion.metadata.json +12 -0
  410. package/form-field/index.d.ts +8 -0
  411. package/form-field/index.metadata.json +12 -0
  412. package/form-field/package.json +7 -0
  413. package/form-field/typings/error.d.ts +4 -0
  414. package/form-field/typings/form-field-control.d.ts +47 -0
  415. package/form-field/typings/form-field-errors.d.ts +13 -0
  416. package/form-field/typings/form-field-module.d.ts +2 -0
  417. package/form-field/typings/form-field.d.ts +78 -0
  418. package/form-field/typings/hint.d.ts +7 -0
  419. package/form-field/typings/index.d.ts +4 -0
  420. package/form-field/typings/index.metadata.json +1 -0
  421. package/form-field/typings/placeholder.d.ts +3 -0
  422. package/form-field/typings/prefix.d.ts +3 -0
  423. package/form-field/typings/public-api.d.ts +16 -0
  424. package/form-field/typings/suffix.d.ts +3 -0
  425. package/form-field.d.ts +8 -0
  426. package/form-field.metadata.json +12 -0
  427. package/grid-list/index.d.ts +8 -1
  428. package/grid-list/index.metadata.json +12 -1
  429. package/grid-list/package.json +7 -0
  430. package/grid-list/typings/grid-list-measure.d.ts +17 -0
  431. package/grid-list/typings/grid-list-module.d.ts +2 -0
  432. package/grid-list/typings/grid-list.d.ts +53 -0
  433. package/grid-list/typings/grid-tile.d.ts +55 -0
  434. package/grid-list/typings/index.d.ts +5 -0
  435. package/grid-list/typings/index.metadata.json +1 -0
  436. package/grid-list/typings/public-api.d.ts +10 -0
  437. package/grid-list/typings/tile-coordinator.d.ts +64 -0
  438. package/grid-list/typings/tile-styler.d.ts +129 -0
  439. package/grid-list.d.ts +8 -0
  440. package/grid-list.metadata.json +12 -0
  441. package/icon/index.d.ts +8 -1
  442. package/icon/index.metadata.json +12 -1
  443. package/icon/package.json +7 -0
  444. package/icon/typings/icon-module.d.ts +2 -0
  445. package/icon/typings/icon-registry.d.ts +187 -0
  446. package/icon/typings/icon.d.ts +69 -0
  447. package/icon/typings/index.d.ts +4 -0
  448. package/icon/typings/index.metadata.json +1 -0
  449. package/icon/typings/public-api.d.ts +10 -0
  450. package/icon.d.ts +8 -0
  451. package/icon.metadata.json +12 -0
  452. package/input/index.d.ts +8 -4
  453. package/input/index.metadata.json +12 -1
  454. package/input/package.json +7 -0
  455. package/input/typings/autosize.d.ts +43 -0
  456. package/input/typings/index.d.ts +4 -0
  457. package/input/typings/index.metadata.json +1 -0
  458. package/input/typings/input-errors.d.ts +9 -0
  459. package/input/typings/input-module.d.ts +2 -0
  460. package/input/typings/input.d.ts +85 -0
  461. package/input/typings/public-api.d.ts +11 -0
  462. package/input.d.ts +8 -0
  463. package/input.metadata.json +12 -0
  464. package/list/index.d.ts +8 -1
  465. package/list/index.metadata.json +12 -1
  466. package/list/package.json +7 -0
  467. package/list/typings/index.d.ts +4 -0
  468. package/list/typings/index.metadata.json +1 -0
  469. package/list/typings/list-module.d.ts +2 -0
  470. package/list/typings/list.d.ts +77 -0
  471. package/list/typings/public-api.d.ts +10 -0
  472. package/list/typings/selection-list.d.ts +103 -0
  473. package/list.d.ts +8 -0
  474. package/list.metadata.json +12 -0
  475. package/material.d.ts +39 -0
  476. package/material.metadata.json +105 -0
  477. package/menu/index.d.ts +8 -5
  478. package/menu/index.metadata.json +12 -1
  479. package/menu/package.json +7 -0
  480. package/menu/typings/index.d.ts +6 -0
  481. package/menu/typings/index.metadata.json +1 -0
  482. package/menu/typings/menu-animations.d.ts +27 -0
  483. package/menu/typings/menu-directive.d.ts +89 -0
  484. package/menu/typings/menu-errors.d.ts +24 -0
  485. package/menu/typings/menu-item.d.ts +42 -0
  486. package/menu/typings/menu-module.d.ts +2 -0
  487. package/menu/typings/menu-panel.d.ts +22 -0
  488. package/menu/typings/menu-positions.d.ts +9 -0
  489. package/menu/typings/menu-trigger.d.ts +115 -0
  490. package/menu/typings/menu.d.ts +12 -0
  491. package/menu/typings/public-api.d.ts +11 -0
  492. package/menu.d.ts +8 -0
  493. package/menu.metadata.json +12 -0
  494. package/package.json +10 -9
  495. package/paginator/index.d.ts +8 -0
  496. package/paginator/index.metadata.json +12 -0
  497. package/paginator/package.json +7 -0
  498. package/paginator/typings/index.d.ts +4 -0
  499. package/paginator/typings/index.metadata.json +1 -0
  500. package/paginator/typings/paginator-intl.d.ts +20 -0
  501. package/paginator/typings/paginator-module.d.ts +2 -0
  502. package/paginator/typings/paginator.d.ts +75 -0
  503. package/paginator/typings/public-api.d.ts +10 -0
  504. package/paginator.d.ts +8 -0
  505. package/paginator.metadata.json +12 -0
  506. package/prebuilt-themes/deeppurple-amber.css +1 -0
  507. package/prebuilt-themes/indigo-pink.css +1 -0
  508. package/prebuilt-themes/pink-bluegrey.css +1 -0
  509. package/prebuilt-themes/purple-green.css +1 -0
  510. package/progress-bar/index.d.ts +8 -1
  511. package/progress-bar/index.metadata.json +12 -1
  512. package/progress-bar/package.json +7 -0
  513. package/progress-bar/typings/index.d.ts +4 -0
  514. package/progress-bar/typings/index.metadata.json +1 -0
  515. package/progress-bar/typings/progress-bar-module.d.ts +2 -0
  516. package/progress-bar/typings/progress-bar.d.ts +32 -0
  517. package/progress-bar/typings/public-api.d.ts +9 -0
  518. package/progress-bar.d.ts +8 -0
  519. package/progress-bar.metadata.json +12 -0
  520. package/progress-spinner/index.d.ts +8 -2
  521. package/progress-spinner/index.metadata.json +12 -1
  522. package/progress-spinner/package.json +7 -0
  523. package/progress-spinner/typings/index.d.ts +4 -0
  524. package/progress-spinner/typings/index.metadata.json +1 -0
  525. package/progress-spinner/typings/progress-spinner-module.d.ts +3 -0
  526. package/progress-spinner/typings/progress-spinner.d.ts +69 -0
  527. package/progress-spinner/typings/public-api.d.ts +9 -0
  528. package/progress-spinner.d.ts +8 -0
  529. package/progress-spinner.metadata.json +12 -0
  530. package/radio/index.d.ts +8 -1
  531. package/radio/index.metadata.json +12 -1
  532. package/radio/package.json +7 -0
  533. package/radio/typings/index.d.ts +4 -0
  534. package/radio/typings/index.metadata.json +1 -0
  535. package/radio/typings/public-api.d.ts +9 -0
  536. package/radio/typings/radio-module.d.ts +2 -0
  537. package/radio/typings/radio.d.ts +215 -0
  538. package/radio.d.ts +8 -0
  539. package/radio.metadata.json +12 -0
  540. package/select/index.d.ts +8 -7
  541. package/select/index.metadata.json +12 -1
  542. package/select/package.json +7 -0
  543. package/select/typings/index.d.ts +4 -0
  544. package/select/typings/index.metadata.json +1 -0
  545. package/select/typings/public-api.d.ts +10 -0
  546. package/select/typings/select-animations.d.ts +30 -0
  547. package/select/typings/select-errors.d.ts +26 -0
  548. package/select/typings/select-module.d.ts +2 -0
  549. package/select/typings/select.d.ts +393 -0
  550. package/select.d.ts +8 -0
  551. package/select.metadata.json +12 -0
  552. package/sidenav/index.d.ts +8 -1
  553. package/sidenav/index.metadata.json +12 -1
  554. package/sidenav/package.json +7 -0
  555. package/sidenav/typings/drawer.d.ts +190 -0
  556. package/sidenav/typings/index.d.ts +4 -0
  557. package/sidenav/typings/index.metadata.json +1 -0
  558. package/sidenav/typings/public-api.d.ts +10 -0
  559. package/sidenav/typings/sidenav-module.d.ts +2 -0
  560. package/sidenav/typings/sidenav.d.ts +33 -0
  561. package/sidenav.d.ts +8 -0
  562. package/sidenav.metadata.json +12 -0
  563. package/slide-toggle/index.d.ts +8 -1
  564. package/slide-toggle/index.metadata.json +12 -1
  565. package/slide-toggle/package.json +7 -0
  566. package/slide-toggle/typings/index.d.ts +4 -0
  567. package/slide-toggle/typings/index.metadata.json +1 -0
  568. package/slide-toggle/typings/public-api.d.ts +9 -0
  569. package/slide-toggle/typings/slide-toggle-module.d.ts +2 -0
  570. package/slide-toggle/typings/slide-toggle.d.ts +93 -0
  571. package/slide-toggle.d.ts +8 -0
  572. package/slide-toggle.metadata.json +12 -0
  573. package/slider/index.d.ts +8 -1
  574. package/slider/index.metadata.json +12 -1
  575. package/slider/package.json +7 -0
  576. package/slider/typings/index.d.ts +4 -0
  577. package/slider/typings/index.metadata.json +1 -0
  578. package/slider/typings/public-api.d.ts +9 -0
  579. package/slider/typings/slider-module.d.ts +2 -0
  580. package/slider/typings/slider.d.ts +207 -0
  581. package/slider.d.ts +8 -0
  582. package/slider.metadata.json +12 -0
  583. package/snack-bar/index.d.ts +8 -4
  584. package/snack-bar/index.metadata.json +12 -1
  585. package/snack-bar/package.json +7 -0
  586. package/snack-bar/typings/index.d.ts +4 -0
  587. package/snack-bar/typings/index.metadata.json +1 -0
  588. package/snack-bar/typings/public-api.d.ts +13 -0
  589. package/snack-bar/typings/simple-snack-bar.d.ts +18 -0
  590. package/snack-bar/typings/snack-bar-config.d.ts +38 -0
  591. package/snack-bar/typings/snack-bar-container.d.ts +55 -0
  592. package/snack-bar/typings/snack-bar-module.d.ts +2 -0
  593. package/snack-bar/typings/snack-bar-ref.d.ts +51 -0
  594. package/snack-bar/typings/snack-bar.d.ts +70 -0
  595. package/snack-bar.d.ts +8 -0
  596. package/snack-bar.metadata.json +12 -0
  597. package/sort/index.d.ts +8 -0
  598. package/sort/index.metadata.json +12 -0
  599. package/sort/package.json +7 -0
  600. package/sort/typings/index.d.ts +4 -0
  601. package/sort/typings/index.metadata.json +1 -0
  602. package/sort/typings/public-api.d.ts +12 -0
  603. package/sort/typings/sort-direction.d.ts +8 -0
  604. package/sort/typings/sort-errors.d.ts +15 -0
  605. package/sort/typings/sort-header-intl.d.ts +17 -0
  606. package/sort/typings/sort-header.d.ts +43 -0
  607. package/sort/typings/sort-module.d.ts +2 -0
  608. package/sort/typings/sort.d.ts +55 -0
  609. package/sort.d.ts +8 -0
  610. package/sort.metadata.json +12 -0
  611. package/stepper/index.d.ts +8 -0
  612. package/stepper/index.metadata.json +12 -0
  613. package/stepper/package.json +7 -0
  614. package/stepper/typings/index.d.ts +4 -0
  615. package/stepper/typings/index.metadata.json +1 -0
  616. package/stepper/typings/public-api.d.ts +13 -0
  617. package/stepper/typings/step-header.d.ts +41 -0
  618. package/stepper/typings/step-label.d.ts +14 -0
  619. package/stepper/typings/stepper-button.d.ts +10 -0
  620. package/stepper/typings/stepper-intl.d.ts +11 -0
  621. package/stepper/typings/stepper-module.d.ts +2 -0
  622. package/stepper/typings/stepper.d.ts +26 -0
  623. package/stepper.d.ts +8 -0
  624. package/stepper.metadata.json +12 -0
  625. package/table/index.d.ts +8 -0
  626. package/table/index.metadata.json +12 -0
  627. package/table/package.json +7 -0
  628. package/table/typings/cell.d.ts +43 -0
  629. package/table/typings/index.d.ts +4 -0
  630. package/table/typings/index.metadata.json +1 -0
  631. package/table/typings/public-api.d.ts +11 -0
  632. package/table/typings/row.d.ts +25 -0
  633. package/table/typings/table-module.d.ts +2 -0
  634. package/table/typings/table.d.ts +8 -0
  635. package/table.d.ts +8 -0
  636. package/table.metadata.json +12 -0
  637. package/tabs/index.d.ts +8 -7
  638. package/tabs/index.metadata.json +12 -1
  639. package/tabs/package.json +7 -0
  640. package/tabs/typings/index.d.ts +8 -0
  641. package/tabs/typings/index.metadata.json +1 -0
  642. package/tabs/typings/ink-bar.d.ts +33 -0
  643. package/tabs/typings/public-api.d.ts +16 -0
  644. package/tabs/typings/tab-body.d.ts +69 -0
  645. package/tabs/typings/tab-group.d.ts +104 -0
  646. package/tabs/typings/tab-header.d.ts +158 -0
  647. package/tabs/typings/tab-label-wrapper.d.ts +25 -0
  648. package/tabs/typings/tab-label.d.ts +15 -0
  649. package/tabs/typings/tab-nav-bar/index.d.ts +8 -0
  650. package/tabs/typings/tab-nav-bar/tab-nav-bar.d.ts +78 -0
  651. package/tabs/typings/tab.d.ts +50 -0
  652. package/tabs/typings/tabs-module.d.ts +2 -0
  653. package/tabs.d.ts +8 -0
  654. package/tabs.metadata.json +12 -0
  655. package/toolbar/index.d.ts +8 -1
  656. package/toolbar/index.metadata.json +12 -1
  657. package/toolbar/package.json +7 -0
  658. package/toolbar/typings/index.d.ts +4 -0
  659. package/toolbar/typings/index.metadata.json +1 -0
  660. package/toolbar/typings/public-api.d.ts +9 -0
  661. package/toolbar/typings/toolbar-module.d.ts +2 -0
  662. package/toolbar/typings/toolbar.d.ts +21 -0
  663. package/toolbar.d.ts +8 -0
  664. package/toolbar.metadata.json +12 -0
  665. package/tooltip/index.d.ts +8 -1
  666. package/tooltip/index.metadata.json +12 -1
  667. package/tooltip/package.json +7 -0
  668. package/tooltip/typings/index.d.ts +4 -0
  669. package/tooltip/typings/index.metadata.json +1 -0
  670. package/tooltip/typings/public-api.d.ts +9 -0
  671. package/tooltip/typings/tooltip-module.d.ts +2 -0
  672. package/tooltip/typings/tooltip.d.ts +175 -0
  673. package/tooltip.d.ts +8 -0
  674. package/tooltip.metadata.json +12 -0
  675. package/typings/autocomplete/autocomplete-module.d.ts +2 -0
  676. package/typings/autocomplete/autocomplete-trigger.d.ts +159 -0
  677. package/typings/autocomplete/autocomplete.d.ts +62 -0
  678. package/typings/autocomplete/index.d.ts +4 -0
  679. package/typings/autocomplete/index.metadata.json +1 -0
  680. package/typings/autocomplete/public-api.d.ts +10 -0
  681. package/typings/button/button-module.d.ts +2 -0
  682. package/typings/button/button.d.ts +77 -0
  683. package/typings/button/index.d.ts +4 -0
  684. package/typings/button/index.metadata.json +1 -0
  685. package/typings/button/public-api.d.ts +9 -0
  686. package/typings/button-toggle/button-toggle-module.d.ts +2 -0
  687. package/typings/button-toggle/button-toggle.d.ts +163 -0
  688. package/typings/button-toggle/index.d.ts +4 -0
  689. package/typings/button-toggle/index.metadata.json +1 -0
  690. package/typings/button-toggle/public-api.d.ts +9 -0
  691. package/typings/card/card-module.d.ts +2 -0
  692. package/typings/card/card.d.ts +95 -0
  693. package/typings/card/index.d.ts +4 -0
  694. package/typings/card/index.metadata.json +1 -0
  695. package/typings/card/public-api.d.ts +9 -0
  696. package/typings/checkbox/checkbox-module.d.ts +2 -0
  697. package/typings/checkbox/checkbox-required-validator.d.ts +18 -0
  698. package/typings/checkbox/checkbox.d.ts +157 -0
  699. package/typings/checkbox/index.d.ts +4 -0
  700. package/typings/checkbox/index.metadata.json +1 -0
  701. package/typings/checkbox/public-api.d.ts +10 -0
  702. package/typings/chips/chip-input.d.ts +43 -0
  703. package/typings/chips/chip-list.d.ts +222 -0
  704. package/typings/chips/chip.d.ts +123 -0
  705. package/typings/chips/chips-module.d.ts +2 -0
  706. package/typings/chips/index.d.ts +4 -0
  707. package/typings/chips/index.metadata.json +1 -0
  708. package/typings/chips/public-api.d.ts +11 -0
  709. package/typings/core/animation/animation.d.ts +20 -0
  710. package/typings/core/common-behaviors/color.d.ts +22 -0
  711. package/typings/core/common-behaviors/common-module.d.ts +25 -0
  712. package/typings/core/common-behaviors/constructor.d.ts +9 -0
  713. package/typings/core/common-behaviors/disable-ripple.d.ts +7 -0
  714. package/typings/core/common-behaviors/disabled.d.ts +7 -0
  715. package/typings/core/common-behaviors/index.d.ts +12 -0
  716. package/typings/core/common-behaviors/tabindex.d.ts +15 -0
  717. package/typings/core/compatibility/compatibility.d.ts +32 -0
  718. package/typings/core/datetime/date-adapter.d.ts +198 -0
  719. package/typings/core/datetime/date-formats.d.ts +20 -0
  720. package/typings/core/datetime/index.d.ts +8 -0
  721. package/typings/core/datetime/native-date-adapter.d.ts +50 -0
  722. package/typings/core/datetime/native-date-formats.d.ts +9 -0
  723. package/typings/core/error/error-options.d.ts +9 -0
  724. package/typings/core/gestures/gesture-annotations.d.ts +51 -0
  725. package/typings/core/gestures/gesture-config.d.ts +23 -0
  726. package/typings/core/index.d.ts +5 -0
  727. package/typings/core/index.metadata.json +1 -0
  728. package/typings/core/line/line.d.ts +30 -0
  729. package/typings/core/option/index.d.ts +4 -0
  730. package/typings/core/option/optgroup.d.ts +14 -0
  731. package/typings/core/option/option.d.ts +90 -0
  732. package/typings/core/placeholder/placeholder-options.d.ts +15 -0
  733. package/typings/core/public-api.d.ts +22 -0
  734. package/typings/core/ripple/index.d.ts +5 -0
  735. package/typings/core/ripple/ripple-ref.d.ts +28 -0
  736. package/typings/core/ripple/ripple-renderer.d.ts +69 -0
  737. package/typings/core/ripple/ripple.d.ts +65 -0
  738. package/typings/core/selection/index.d.ts +3 -0
  739. package/typings/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +20 -0
  740. package/typings/core/style/apply-transform.d.ts +13 -0
  741. package/typings/core/style/index.d.ts +8 -0
  742. package/typings/core/testing/month-constants.d.ts +12 -0
  743. package/typings/core/util/object-extend.d.ts +15 -0
  744. package/typings/datepicker/calendar-body.d.ts +52 -0
  745. package/typings/datepicker/calendar.d.ts +97 -0
  746. package/typings/datepicker/coerce-date-property.d.ts +19 -0
  747. package/typings/datepicker/datepicker-errors.d.ts +9 -0
  748. package/typings/datepicker/datepicker-input.d.ts +92 -0
  749. package/typings/datepicker/datepicker-intl.d.ts +25 -0
  750. package/typings/datepicker/datepicker-module.d.ts +2 -0
  751. package/typings/datepicker/datepicker-toggle.d.ts +24 -0
  752. package/typings/datepicker/datepicker.d.ts +117 -0
  753. package/typings/datepicker/index.d.ts +4 -0
  754. package/typings/datepicker/index.metadata.json +1 -0
  755. package/typings/datepicker/month-view.d.ts +66 -0
  756. package/typings/datepicker/public-api.d.ts +17 -0
  757. package/typings/datepicker/year-view.d.ts +55 -0
  758. package/typings/dialog/dialog-config.d.ts +54 -0
  759. package/typings/dialog/dialog-container.d.ts +68 -0
  760. package/typings/dialog/dialog-content-directives.d.ts +43 -0
  761. package/typings/dialog/dialog-module.d.ts +2 -0
  762. package/typings/dialog/dialog-ref.d.ts +68 -0
  763. package/typings/dialog/dialog.d.ts +108 -0
  764. package/typings/dialog/index.d.ts +4 -0
  765. package/typings/dialog/index.metadata.json +1 -0
  766. package/typings/dialog/public-api.d.ts +13 -0
  767. package/typings/expansion/accordion-item.d.ts +41 -0
  768. package/typings/expansion/accordion.d.ts +29 -0
  769. package/typings/expansion/expansion-module.d.ts +2 -0
  770. package/typings/expansion/expansion-panel-header.d.ts +49 -0
  771. package/typings/expansion/expansion-panel.d.ts +40 -0
  772. package/typings/expansion/index.d.ts +5 -0
  773. package/typings/expansion/index.metadata.json +1 -0
  774. package/typings/expansion/public-api.d.ts +12 -0
  775. package/typings/form-field/error.d.ts +4 -0
  776. package/typings/form-field/form-field-control.d.ts +47 -0
  777. package/typings/form-field/form-field-errors.d.ts +13 -0
  778. package/typings/form-field/form-field-module.d.ts +2 -0
  779. package/typings/form-field/form-field.d.ts +78 -0
  780. package/typings/form-field/hint.d.ts +7 -0
  781. package/typings/form-field/index.d.ts +4 -0
  782. package/typings/form-field/index.metadata.json +1 -0
  783. package/typings/form-field/placeholder.d.ts +3 -0
  784. package/typings/form-field/prefix.d.ts +3 -0
  785. package/typings/form-field/public-api.d.ts +16 -0
  786. package/typings/form-field/suffix.d.ts +3 -0
  787. package/typings/grid-list/grid-list-measure.d.ts +17 -0
  788. package/typings/grid-list/grid-list-module.d.ts +2 -0
  789. package/typings/grid-list/grid-list.d.ts +53 -0
  790. package/typings/grid-list/grid-tile.d.ts +55 -0
  791. package/typings/grid-list/index.d.ts +5 -0
  792. package/typings/grid-list/index.metadata.json +1 -0
  793. package/typings/grid-list/public-api.d.ts +10 -0
  794. package/typings/grid-list/tile-coordinator.d.ts +64 -0
  795. package/typings/grid-list/tile-styler.d.ts +129 -0
  796. package/typings/icon/icon-module.d.ts +2 -0
  797. package/typings/icon/icon-registry.d.ts +187 -0
  798. package/typings/icon/icon.d.ts +69 -0
  799. package/typings/icon/index.d.ts +4 -0
  800. package/typings/icon/index.metadata.json +1 -0
  801. package/typings/icon/public-api.d.ts +10 -0
  802. package/typings/index.d.ts +4 -0
  803. package/typings/index.metadata.json +1 -0
  804. package/typings/input/autosize.d.ts +43 -0
  805. package/typings/input/index.d.ts +4 -0
  806. package/typings/input/index.metadata.json +1 -0
  807. package/typings/input/input-errors.d.ts +9 -0
  808. package/typings/input/input-module.d.ts +2 -0
  809. package/typings/input/input.d.ts +85 -0
  810. package/typings/input/public-api.d.ts +11 -0
  811. package/typings/list/index.d.ts +4 -0
  812. package/typings/list/index.metadata.json +1 -0
  813. package/typings/list/list-module.d.ts +2 -0
  814. package/typings/list/list.d.ts +77 -0
  815. package/typings/list/public-api.d.ts +10 -0
  816. package/typings/list/selection-list.d.ts +103 -0
  817. package/typings/menu/index.d.ts +6 -0
  818. package/typings/menu/index.metadata.json +1 -0
  819. package/typings/menu/menu-animations.d.ts +27 -0
  820. package/typings/menu/menu-directive.d.ts +89 -0
  821. package/typings/menu/menu-errors.d.ts +24 -0
  822. package/typings/menu/menu-item.d.ts +42 -0
  823. package/typings/menu/menu-module.d.ts +2 -0
  824. package/typings/menu/menu-panel.d.ts +22 -0
  825. package/typings/menu/menu-positions.d.ts +9 -0
  826. package/typings/menu/menu-trigger.d.ts +115 -0
  827. package/typings/menu/menu.d.ts +12 -0
  828. package/typings/menu/public-api.d.ts +11 -0
  829. package/typings/paginator/index.d.ts +4 -0
  830. package/typings/paginator/index.metadata.json +1 -0
  831. package/typings/paginator/paginator-intl.d.ts +20 -0
  832. package/typings/paginator/paginator-module.d.ts +2 -0
  833. package/typings/paginator/paginator.d.ts +75 -0
  834. package/typings/paginator/public-api.d.ts +10 -0
  835. package/typings/progress-bar/index.d.ts +4 -0
  836. package/typings/progress-bar/index.metadata.json +1 -0
  837. package/typings/progress-bar/progress-bar-module.d.ts +2 -0
  838. package/typings/progress-bar/progress-bar.d.ts +32 -0
  839. package/typings/progress-bar/public-api.d.ts +9 -0
  840. package/typings/progress-spinner/index.d.ts +4 -0
  841. package/typings/progress-spinner/index.metadata.json +1 -0
  842. package/typings/progress-spinner/progress-spinner-module.d.ts +3 -0
  843. package/typings/progress-spinner/progress-spinner.d.ts +69 -0
  844. package/typings/progress-spinner/public-api.d.ts +9 -0
  845. package/typings/public-api.d.ts +39 -0
  846. package/typings/radio/index.d.ts +4 -0
  847. package/typings/radio/index.metadata.json +1 -0
  848. package/typings/radio/public-api.d.ts +9 -0
  849. package/typings/radio/radio-module.d.ts +2 -0
  850. package/typings/radio/radio.d.ts +215 -0
  851. package/typings/select/index.d.ts +4 -0
  852. package/typings/select/index.metadata.json +1 -0
  853. package/typings/select/public-api.d.ts +10 -0
  854. package/typings/select/select-animations.d.ts +30 -0
  855. package/typings/select/select-errors.d.ts +26 -0
  856. package/typings/select/select-module.d.ts +2 -0
  857. package/typings/select/select.d.ts +393 -0
  858. package/typings/sidenav/drawer.d.ts +190 -0
  859. package/typings/sidenav/index.d.ts +4 -0
  860. package/typings/sidenav/index.metadata.json +1 -0
  861. package/typings/sidenav/public-api.d.ts +10 -0
  862. package/typings/sidenav/sidenav-module.d.ts +2 -0
  863. package/typings/sidenav/sidenav.d.ts +33 -0
  864. package/typings/slide-toggle/index.d.ts +4 -0
  865. package/typings/slide-toggle/index.metadata.json +1 -0
  866. package/typings/slide-toggle/public-api.d.ts +9 -0
  867. package/typings/slide-toggle/slide-toggle-module.d.ts +2 -0
  868. package/typings/slide-toggle/slide-toggle.d.ts +93 -0
  869. package/typings/slider/index.d.ts +4 -0
  870. package/typings/slider/index.metadata.json +1 -0
  871. package/typings/slider/public-api.d.ts +9 -0
  872. package/typings/slider/slider-module.d.ts +2 -0
  873. package/typings/slider/slider.d.ts +207 -0
  874. package/typings/snack-bar/index.d.ts +4 -0
  875. package/typings/snack-bar/index.metadata.json +1 -0
  876. package/typings/snack-bar/public-api.d.ts +13 -0
  877. package/typings/snack-bar/simple-snack-bar.d.ts +18 -0
  878. package/typings/snack-bar/snack-bar-config.d.ts +38 -0
  879. package/typings/snack-bar/snack-bar-container.d.ts +55 -0
  880. package/typings/snack-bar/snack-bar-module.d.ts +2 -0
  881. package/typings/snack-bar/snack-bar-ref.d.ts +51 -0
  882. package/typings/snack-bar/snack-bar.d.ts +70 -0
  883. package/typings/sort/index.d.ts +4 -0
  884. package/typings/sort/index.metadata.json +1 -0
  885. package/typings/sort/public-api.d.ts +12 -0
  886. package/typings/sort/sort-direction.d.ts +8 -0
  887. package/typings/sort/sort-errors.d.ts +15 -0
  888. package/typings/sort/sort-header-intl.d.ts +17 -0
  889. package/typings/sort/sort-header.d.ts +43 -0
  890. package/typings/sort/sort-module.d.ts +2 -0
  891. package/typings/sort/sort.d.ts +55 -0
  892. package/typings/stepper/index.d.ts +4 -0
  893. package/typings/stepper/index.metadata.json +1 -0
  894. package/typings/stepper/public-api.d.ts +13 -0
  895. package/typings/stepper/step-header.d.ts +41 -0
  896. package/typings/stepper/step-label.d.ts +14 -0
  897. package/typings/stepper/stepper-button.d.ts +10 -0
  898. package/typings/stepper/stepper-intl.d.ts +11 -0
  899. package/typings/stepper/stepper-module.d.ts +2 -0
  900. package/typings/stepper/stepper.d.ts +26 -0
  901. package/typings/table/cell.d.ts +43 -0
  902. package/typings/table/index.d.ts +4 -0
  903. package/typings/table/index.metadata.json +1 -0
  904. package/typings/table/public-api.d.ts +11 -0
  905. package/typings/table/row.d.ts +25 -0
  906. package/typings/table/table-module.d.ts +2 -0
  907. package/typings/table/table.d.ts +8 -0
  908. package/typings/tabs/index.d.ts +8 -0
  909. package/typings/tabs/index.metadata.json +1 -0
  910. package/typings/tabs/ink-bar.d.ts +33 -0
  911. package/typings/tabs/public-api.d.ts +16 -0
  912. package/typings/tabs/tab-body.d.ts +69 -0
  913. package/typings/tabs/tab-group.d.ts +104 -0
  914. package/typings/tabs/tab-header.d.ts +158 -0
  915. package/typings/tabs/tab-label-wrapper.d.ts +25 -0
  916. package/typings/tabs/tab-label.d.ts +15 -0
  917. package/typings/tabs/tab-nav-bar/index.d.ts +8 -0
  918. package/typings/tabs/tab-nav-bar/tab-nav-bar.d.ts +78 -0
  919. package/typings/tabs/tab.d.ts +50 -0
  920. package/typings/tabs/tabs-module.d.ts +2 -0
  921. package/typings/toolbar/index.d.ts +4 -0
  922. package/typings/toolbar/index.metadata.json +1 -0
  923. package/typings/toolbar/public-api.d.ts +9 -0
  924. package/typings/toolbar/toolbar-module.d.ts +2 -0
  925. package/typings/toolbar/toolbar.d.ts +21 -0
  926. package/typings/tooltip/index.d.ts +4 -0
  927. package/typings/tooltip/index.metadata.json +1 -0
  928. package/typings/tooltip/public-api.d.ts +9 -0
  929. package/typings/tooltip/tooltip-module.d.ts +2 -0
  930. package/typings/tooltip/tooltip.d.ts +175 -0
  931. package/typings/version.d.ts +10 -0
  932. package/autocomplete/README.md +0 -5
  933. package/autocomplete/_autocomplete-theme.scss +0 -5
  934. package/autocomplete/autocomplete.css +0 -0
  935. package/autocomplete/autocomplete.css.map +0 -1
  936. package/autocomplete/autocomplete.d.ts +0 -2
  937. package/autocomplete/autocomplete.html +0 -1
  938. package/autocomplete/autocomplete.js +0 -25
  939. package/autocomplete/autocomplete.js.map +0 -1
  940. package/autocomplete/autocomplete.metadata.json +0 -1
  941. package/autocomplete/autocomplete.scss +0 -0
  942. package/autocomplete/index.js +0 -34
  943. package/autocomplete/index.js.map +0 -1
  944. package/button/OVERVIEW.md +0 -25
  945. package/button/README.md +0 -116
  946. package/button/_button-base.scss +0 -111
  947. package/button/_button-theme.scss +0 -85
  948. package/button/button.css +0 -1
  949. package/button/button.css.map +0 -1
  950. package/button/button.d.ts +0 -46
  951. package/button/button.html +0 -1
  952. package/button/button.js +0 -203
  953. package/button/button.js.map +0 -1
  954. package/button/button.metadata.json +0 -1
  955. package/button/button.scss +0 -105
  956. package/button/index.js +0 -3
  957. package/button/index.js.map +0 -1
  958. package/button-toggle/OVERVIEW.md +0 -22
  959. package/button-toggle/README.md +0 -139
  960. package/button-toggle/_button-toggle-theme.scss +0 -14
  961. package/button-toggle/button-toggle.css +0 -1
  962. package/button-toggle/button-toggle.css.map +0 -1
  963. package/button-toggle/button-toggle.d.ts +0 -136
  964. package/button-toggle/button-toggle.html +0 -1
  965. package/button-toggle/button-toggle.js +0 -502
  966. package/button-toggle/button-toggle.js.map +0 -1
  967. package/button-toggle/button-toggle.metadata.json +0 -1
  968. package/button-toggle/button-toggle.scss +0 -49
  969. package/button-toggle/index.js +0 -3
  970. package/button-toggle/index.js.map +0 -1
  971. package/card/OVERVIEW.md +0 -45
  972. package/card/README.md +0 -116
  973. package/card/_card-theme.scss +0 -17
  974. package/card/card-header.html +0 -1
  975. package/card/card-title-group.html +0 -1
  976. package/card/card.css +0 -1
  977. package/card/card.css.map +0 -1
  978. package/card/card.d.ts +0 -54
  979. package/card/card.html +0 -1
  980. package/card/card.js +0 -174
  981. package/card/card.js.map +0 -1
  982. package/card/card.metadata.json +0 -1
  983. package/card/card.scss +0 -227
  984. package/card/index.js +0 -3
  985. package/card/index.js.map +0 -1
  986. package/checkbox/OVERVIEW.md +0 -28
  987. package/checkbox/README.md +0 -93
  988. package/checkbox/_checkbox-theme.scss +0 -84
  989. package/checkbox/checkbox.css +0 -1
  990. package/checkbox/checkbox.css.map +0 -1
  991. package/checkbox/checkbox.d.ts +0 -155
  992. package/checkbox/checkbox.html +0 -1
  993. package/checkbox/checkbox.js +0 -432
  994. package/checkbox/checkbox.js.map +0 -1
  995. package/checkbox/checkbox.metadata.json +0 -1
  996. package/checkbox/checkbox.scss +0 -431
  997. package/checkbox/index.js +0 -3
  998. package/checkbox/index.js.map +0 -1
  999. package/chips/OVERVIEW.md +0 -40
  1000. package/chips/README.md +0 -7
  1001. package/chips/_chips-theme.scss +0 -49
  1002. package/chips/chip-list.d.ts +0 -66
  1003. package/chips/chip-list.js +0 -210
  1004. package/chips/chip-list.js.map +0 -1
  1005. package/chips/chip-list.metadata.json +0 -1
  1006. package/chips/chip.d.ts +0 -53
  1007. package/chips/chip.js +0 -177
  1008. package/chips/chip.js.map +0 -1
  1009. package/chips/chip.metadata.json +0 -1
  1010. package/chips/chips.css +0 -1
  1011. package/chips/chips.css.map +0 -1
  1012. package/chips/chips.scss +0 -80
  1013. package/chips/index.js +0 -4
  1014. package/chips/index.js.map +0 -1
  1015. package/core/README.md +0 -1
  1016. package/core/_core.scss +0 -27
  1017. package/core/a11y/README.md +0 -30
  1018. package/core/a11y/_a11y.scss +0 -24
  1019. package/core/a11y/fake-mousedown.d.ts +0 -8
  1020. package/core/a11y/fake-mousedown.js +0 -12
  1021. package/core/a11y/fake-mousedown.js.map +0 -1
  1022. package/core/a11y/fake-mousedown.metadata.json +0 -1
  1023. package/core/a11y/focus-trap.d.ts +0 -41
  1024. package/core/a11y/focus-trap.html +0 -1
  1025. package/core/a11y/focus-trap.js +0 -129
  1026. package/core/a11y/focus-trap.js.map +0 -1
  1027. package/core/a11y/focus-trap.metadata.json +0 -1
  1028. package/core/a11y/index.d.ts +0 -7
  1029. package/core/a11y/index.js +0 -40
  1030. package/core/a11y/index.js.map +0 -1
  1031. package/core/a11y/index.metadata.json +0 -1
  1032. package/core/a11y/interactivity-checker.d.ts +0 -45
  1033. package/core/a11y/interactivity-checker.js +0 -210
  1034. package/core/a11y/interactivity-checker.js.map +0 -1
  1035. package/core/a11y/interactivity-checker.metadata.json +0 -1
  1036. package/core/a11y/list-key-manager.d.ts +0 -83
  1037. package/core/a11y/list-key-manager.js +0 -157
  1038. package/core/a11y/list-key-manager.js.map +0 -1
  1039. package/core/a11y/list-key-manager.metadata.json +0 -1
  1040. package/core/a11y/live-announcer.d.ts +0 -17
  1041. package/core/a11y/live-announcer.js +0 -63
  1042. package/core/a11y/live-announcer.js.map +0 -1
  1043. package/core/a11y/live-announcer.metadata.json +0 -1
  1044. package/core/animation/animation.d.ts +0 -13
  1045. package/core/animation/animation.js +0 -21
  1046. package/core/animation/animation.js.map +0 -1
  1047. package/core/animation/animation.metadata.json +0 -1
  1048. package/core/async/promise-completer.d.ts +0 -7
  1049. package/core/async/promise-completer.js +0 -13
  1050. package/core/async/promise-completer.js.map +0 -1
  1051. package/core/async/promise-completer.metadata.json +0 -1
  1052. package/core/coercion/boolean-property.d.ts +0 -2
  1053. package/core/coercion/boolean-property.js +0 -6
  1054. package/core/coercion/boolean-property.js.map +0 -1
  1055. package/core/coercion/boolean-property.metadata.json +0 -1
  1056. package/core/coercion/number-property.d.ts +0 -2
  1057. package/core/coercion/number-property.js +0 -10
  1058. package/core/coercion/number-property.js.map +0 -1
  1059. package/core/coercion/number-property.metadata.json +0 -1
  1060. package/core/compatibility/default-mode.d.ts +0 -19
  1061. package/core/compatibility/default-mode.js +0 -61
  1062. package/core/compatibility/default-mode.js.map +0 -1
  1063. package/core/compatibility/default-mode.metadata.json +0 -1
  1064. package/core/compatibility/no-conflict-mode.d.ts +0 -10
  1065. package/core/compatibility/no-conflict-mode.js +0 -47
  1066. package/core/compatibility/no-conflict-mode.js.map +0 -1
  1067. package/core/compatibility/no-conflict-mode.metadata.json +0 -1
  1068. package/core/coordination/unique-selection-dispatcher.d.ts +0 -21
  1069. package/core/coordination/unique-selection-dispatcher.js +0 -46
  1070. package/core/coordination/unique-selection-dispatcher.js.map +0 -1
  1071. package/core/coordination/unique-selection-dispatcher.metadata.json +0 -1
  1072. package/core/core.d.ts +0 -45
  1073. package/core/core.js +0 -110
  1074. package/core/core.js.map +0 -1
  1075. package/core/core.metadata.json +0 -1
  1076. package/core/errors/error.d.ts +0 -7
  1077. package/core/errors/error.js +0 -20
  1078. package/core/errors/error.js.map +0 -1
  1079. package/core/errors/error.metadata.json +0 -1
  1080. package/core/gestures/gesture-annotations.d.ts +0 -44
  1081. package/core/gestures/gesture-annotations.js +0 -7
  1082. package/core/gestures/gesture-annotations.js.map +0 -1
  1083. package/core/gestures/gesture-config.js +0 -85
  1084. package/core/gestures/gesture-config.js.map +0 -1
  1085. package/core/gestures/gesture-config.metadata.json +0 -1
  1086. package/core/index.js +0 -3
  1087. package/core/index.js.map +0 -1
  1088. package/core/keyboard/keycodes.d.ts +0 -14
  1089. package/core/keyboard/keycodes.js +0 -20
  1090. package/core/keyboard/keycodes.js.map +0 -1
  1091. package/core/keyboard/keycodes.metadata.json +0 -1
  1092. package/core/line/line.d.ts +0 -23
  1093. package/core/line/line.js +0 -74
  1094. package/core/line/line.js.map +0 -1
  1095. package/core/line/line.metadata.json +0 -1
  1096. package/core/observe-content/observe-content.d.ts +0 -17
  1097. package/core/observe-content/observe-content.js +0 -66
  1098. package/core/observe-content/observe-content.js.map +0 -1
  1099. package/core/observe-content/observe-content.metadata.json +0 -1
  1100. package/core/overlay/_overlay.scss +0 -68
  1101. package/core/overlay/generic-component-type.d.ts +0 -3
  1102. package/core/overlay/generic-component-type.js +0 -3
  1103. package/core/overlay/generic-component-type.js.map +0 -1
  1104. package/core/overlay/overlay-container.d.ts +0 -19
  1105. package/core/overlay/overlay-container.js +0 -33
  1106. package/core/overlay/overlay-container.js.map +0 -1
  1107. package/core/overlay/overlay-container.metadata.json +0 -1
  1108. package/core/overlay/overlay-directives.d.ts +0 -80
  1109. package/core/overlay/overlay-directives.js +0 -316
  1110. package/core/overlay/overlay-directives.js.map +0 -1
  1111. package/core/overlay/overlay-directives.metadata.json +0 -1
  1112. package/core/overlay/overlay-ref.d.ts +0 -56
  1113. package/core/overlay/overlay-ref.js +0 -155
  1114. package/core/overlay/overlay-ref.js.map +0 -1
  1115. package/core/overlay/overlay-ref.metadata.json +0 -1
  1116. package/core/overlay/overlay-state.d.ts +0 -24
  1117. package/core/overlay/overlay-state.js +0 -17
  1118. package/core/overlay/overlay-state.js.map +0 -1
  1119. package/core/overlay/overlay-state.metadata.json +0 -1
  1120. package/core/overlay/overlay.d.ts +0 -54
  1121. package/core/overlay/overlay.js +0 -97
  1122. package/core/overlay/overlay.js.map +0 -1
  1123. package/core/overlay/overlay.metadata.json +0 -1
  1124. package/core/overlay/position/connected-position-strategy.d.ts +0 -133
  1125. package/core/overlay/position/connected-position-strategy.js +0 -292
  1126. package/core/overlay/position/connected-position-strategy.js.map +0 -1
  1127. package/core/overlay/position/connected-position-strategy.metadata.json +0 -1
  1128. package/core/overlay/position/connected-position.d.ts +0 -56
  1129. package/core/overlay/position/connected-position.js +0 -65
  1130. package/core/overlay/position/connected-position.js.map +0 -1
  1131. package/core/overlay/position/connected-position.metadata.json +0 -1
  1132. package/core/overlay/position/fake-viewport-ruler.d.ts +0 -15
  1133. package/core/overlay/position/fake-viewport-ruler.js +0 -16
  1134. package/core/overlay/position/fake-viewport-ruler.js.map +0 -1
  1135. package/core/overlay/position/fake-viewport-ruler.metadata.json +0 -1
  1136. package/core/overlay/position/global-position-strategy.d.ts +0 -75
  1137. package/core/overlay/position/global-position-strategy.js +0 -148
  1138. package/core/overlay/position/global-position-strategy.js.map +0 -1
  1139. package/core/overlay/position/global-position-strategy.metadata.json +0 -1
  1140. package/core/overlay/position/overlay-position-builder.d.ts +0 -21
  1141. package/core/overlay/position/overlay-position-builder.js +0 -41
  1142. package/core/overlay/position/overlay-position-builder.js.map +0 -1
  1143. package/core/overlay/position/overlay-position-builder.metadata.json +0 -1
  1144. package/core/overlay/position/position-strategy.d.ts +0 -7
  1145. package/core/overlay/position/position-strategy.js +0 -3
  1146. package/core/overlay/position/position-strategy.js.map +0 -1
  1147. package/core/overlay/position/relative-position-strategy.d.ts +0 -9
  1148. package/core/overlay/position/relative-position-strategy.js +0 -16
  1149. package/core/overlay/position/relative-position-strategy.js.map +0 -1
  1150. package/core/overlay/position/relative-position-strategy.metadata.json +0 -1
  1151. package/core/overlay/position/viewport-ruler.d.ts +0 -16
  1152. package/core/overlay/position/viewport-ruler.js +0 -67
  1153. package/core/overlay/position/viewport-ruler.js.map +0 -1
  1154. package/core/overlay/position/viewport-ruler.metadata.json +0 -1
  1155. package/core/overlay/scroll/scroll-dispatcher.d.ts +0 -44
  1156. package/core/overlay/scroll/scroll-dispatcher.js +0 -94
  1157. package/core/overlay/scroll/scroll-dispatcher.js.map +0 -1
  1158. package/core/overlay/scroll/scroll-dispatcher.metadata.json +0 -1
  1159. package/core/overlay/scroll/scrollable.d.ts +0 -21
  1160. package/core/overlay/scroll/scrollable.js +0 -48
  1161. package/core/overlay/scroll/scrollable.js.map +0 -1
  1162. package/core/overlay/scroll/scrollable.metadata.json +0 -1
  1163. package/core/platform/features.d.ts +0 -2
  1164. package/core/platform/features.js +0 -37
  1165. package/core/platform/features.js.map +0 -1
  1166. package/core/platform/features.metadata.json +0 -1
  1167. package/core/platform/index.d.ts +0 -6
  1168. package/core/platform/index.js +0 -30
  1169. package/core/platform/index.js.map +0 -1
  1170. package/core/platform/index.metadata.json +0 -1
  1171. package/core/platform/platform.d.ts +0 -16
  1172. package/core/platform/platform.js +0 -48
  1173. package/core/platform/platform.js.map +0 -1
  1174. package/core/platform/platform.metadata.json +0 -1
  1175. package/core/portal/README.md +0 -72
  1176. package/core/portal/dom-portal-host.d.ts +0 -31
  1177. package/core/portal/dom-portal-host.js +0 -108
  1178. package/core/portal/dom-portal-host.js.map +0 -1
  1179. package/core/portal/dom-portal-host.metadata.json +0 -1
  1180. package/core/portal/portal-directives.d.ts +0 -49
  1181. package/core/portal/portal-directives.js +0 -148
  1182. package/core/portal/portal-directives.js.map +0 -1
  1183. package/core/portal/portal-directives.metadata.json +0 -1
  1184. package/core/portal/portal-errors.d.ts +0 -43
  1185. package/core/portal/portal-errors.js +0 -75
  1186. package/core/portal/portal-errors.js.map +0 -1
  1187. package/core/portal/portal-errors.metadata.json +0 -1
  1188. package/core/portal/portal.d.ts +0 -85
  1189. package/core/portal/portal.js +0 -155
  1190. package/core/portal/portal.js.map +0 -1
  1191. package/core/portal/portal.metadata.json +0 -1
  1192. package/core/projection/projection.d.ts +0 -45
  1193. package/core/projection/projection.js +0 -111
  1194. package/core/projection/projection.js.map +0 -1
  1195. package/core/projection/projection.metadata.json +0 -1
  1196. package/core/ripple/README.md +0 -27
  1197. package/core/ripple/_ripple.scss +0 -106
  1198. package/core/ripple/ripple-renderer.d.ts +0 -76
  1199. package/core/ripple/ripple-renderer.js +0 -177
  1200. package/core/ripple/ripple-renderer.js.map +0 -1
  1201. package/core/ripple/ripple-renderer.metadata.json +0 -1
  1202. package/core/ripple/ripple.d.ts +0 -92
  1203. package/core/ripple/ripple.js +0 -295
  1204. package/core/ripple/ripple.js.map +0 -1
  1205. package/core/ripple/ripple.metadata.json +0 -1
  1206. package/core/rtl/dir.d.ts +0 -21
  1207. package/core/rtl/dir.js +0 -87
  1208. package/core/rtl/dir.js.map +0 -1
  1209. package/core/rtl/dir.metadata.json +0 -1
  1210. package/core/style/_button-common.scss +0 -7
  1211. package/core/style/_elevation.scss +0 -174
  1212. package/core/style/_form-common.scss +0 -12
  1213. package/core/style/_layout-common.scss +0 -8
  1214. package/core/style/_list-common.scss +0 -49
  1215. package/core/style/_menu-common.scss +0 -89
  1216. package/core/style/_variables.scss +0 -64
  1217. package/core/style/apply-transform.d.ts +0 -6
  1218. package/core/style/apply-transform.js +0 -14
  1219. package/core/style/apply-transform.js.map +0 -1
  1220. package/core/style/apply-transform.metadata.json +0 -1
  1221. package/core/theming/_all-theme.scss +0 -52
  1222. package/core/theming/_palette.scss +0 -694
  1223. package/core/theming/_theming.scss +0 -84
  1224. package/core/theming/prebuilt/deeppurple-amber.css +0 -1
  1225. package/core/theming/prebuilt/deeppurple-amber.css.map +0 -1
  1226. package/core/theming/prebuilt/deeppurple-amber.scss +0 -14
  1227. package/core/theming/prebuilt/indigo-pink.css +0 -1
  1228. package/core/theming/prebuilt/indigo-pink.css.map +0 -1
  1229. package/core/theming/prebuilt/indigo-pink.scss +0 -14
  1230. package/core/theming/prebuilt/pink-bluegrey.css +0 -1
  1231. package/core/theming/prebuilt/pink-bluegrey.css.map +0 -1
  1232. package/core/theming/prebuilt/pink-bluegrey.scss +0 -14
  1233. package/core/theming/prebuilt/purple-green.css +0 -1
  1234. package/core/theming/prebuilt/purple-green.css.map +0 -1
  1235. package/core/theming/prebuilt/purple-green.scss +0 -14
  1236. package/core/typography/_typography.scss +0 -6
  1237. package/core/util/object-extend.d.ts +0 -8
  1238. package/core/util/object-extend.js +0 -29
  1239. package/core/util/object-extend.js.map +0 -1
  1240. package/core/util/object-extend.metadata.json +0 -1
  1241. package/core.js +0 -3
  1242. package/core.js.map +0 -1
  1243. package/dialog/OVERVIEW.md +0 -39
  1244. package/dialog/README.md +0 -102
  1245. package/dialog/_dialog-theme.scss +0 -11
  1246. package/dialog/dialog-config.d.ts +0 -26
  1247. package/dialog/dialog-config.js +0 -19
  1248. package/dialog/dialog-config.js.map +0 -1
  1249. package/dialog/dialog-config.metadata.json +0 -1
  1250. package/dialog/dialog-container.d.ts +0 -37
  1251. package/dialog/dialog-container.html +0 -1
  1252. package/dialog/dialog-container.js +0 -97
  1253. package/dialog/dialog-container.js.map +0 -1
  1254. package/dialog/dialog-container.metadata.json +0 -1
  1255. package/dialog/dialog-content-directives.d.ts +0 -26
  1256. package/dialog/dialog-content-directives.js +0 -81
  1257. package/dialog/dialog-content-directives.js.map +0 -1
  1258. package/dialog/dialog-content-directives.metadata.json +0 -1
  1259. package/dialog/dialog-errors.d.ts +0 -8
  1260. package/dialog/dialog-errors.js +0 -19
  1261. package/dialog/dialog-errors.js.map +0 -1
  1262. package/dialog/dialog-errors.metadata.json +0 -1
  1263. package/dialog/dialog-injector.d.ts +0 -9
  1264. package/dialog/dialog-injector.js +0 -17
  1265. package/dialog/dialog-injector.js.map +0 -1
  1266. package/dialog/dialog-injector.metadata.json +0 -1
  1267. package/dialog/dialog-ref.d.ts +0 -22
  1268. package/dialog/dialog-ref.js +0 -31
  1269. package/dialog/dialog-ref.js.map +0 -1
  1270. package/dialog/dialog-ref.metadata.json +0 -1
  1271. package/dialog/dialog.css +0 -1
  1272. package/dialog/dialog.css.map +0 -1
  1273. package/dialog/dialog.d.ts +0 -57
  1274. package/dialog/dialog.js +0 -157
  1275. package/dialog/dialog.js.map +0 -1
  1276. package/dialog/dialog.metadata.json +0 -1
  1277. package/dialog/dialog.scss +0 -54
  1278. package/dialog/index.js +0 -59
  1279. package/dialog/index.js.map +0 -1
  1280. package/grid-list/OVERVIEW.md +0 -43
  1281. package/grid-list/README.md +0 -105
  1282. package/grid-list/_grid-list-theme.scss +0 -6
  1283. package/grid-list/grid-list-errors.d.ts +0 -22
  1284. package/grid-list/grid-list-errors.js +0 -41
  1285. package/grid-list/grid-list-errors.js.map +0 -1
  1286. package/grid-list/grid-list-errors.metadata.json +0 -1
  1287. package/grid-list/grid-list-measure.d.ts +0 -10
  1288. package/grid-list/grid-list-measure.js +0 -16
  1289. package/grid-list/grid-list-measure.js.map +0 -1
  1290. package/grid-list/grid-list-measure.metadata.json +0 -1
  1291. package/grid-list/grid-list.css +0 -1
  1292. package/grid-list/grid-list.css.map +0 -1
  1293. package/grid-list/grid-list.d.ts +0 -49
  1294. package/grid-list/grid-list.html +0 -1
  1295. package/grid-list/grid-list.js +0 -166
  1296. package/grid-list/grid-list.js.map +0 -1
  1297. package/grid-list/grid-list.metadata.json +0 -1
  1298. package/grid-list/grid-list.scss +0 -91
  1299. package/grid-list/grid-tile-text.html +0 -1
  1300. package/grid-list/grid-tile.d.ts +0 -30
  1301. package/grid-list/grid-tile.html +0 -1
  1302. package/grid-list/grid-tile.js +0 -81
  1303. package/grid-list/grid-tile.js.map +0 -1
  1304. package/grid-list/grid-tile.metadata.json +0 -1
  1305. package/grid-list/index.js +0 -3
  1306. package/grid-list/index.js.map +0 -1
  1307. package/grid-list/tile-coordinator.d.ts +0 -56
  1308. package/grid-list/tile-coordinator.js +0 -129
  1309. package/grid-list/tile-coordinator.js.map +0 -1
  1310. package/grid-list/tile-coordinator.metadata.json +0 -1
  1311. package/grid-list/tile-styler.d.ts +0 -112
  1312. package/grid-list/tile-styler.js +0 -211
  1313. package/grid-list/tile-styler.js.map +0 -1
  1314. package/grid-list/tile-styler.metadata.json +0 -1
  1315. package/icon/OVERVIEW.md +0 -88
  1316. package/icon/README.md +0 -129
  1317. package/icon/_icon-theme.scss +0 -25
  1318. package/icon/fake-svgs.d.ts +0 -6
  1319. package/icon/fake-svgs.js +0 -31
  1320. package/icon/fake-svgs.js.map +0 -1
  1321. package/icon/fake-svgs.metadata.json +0 -1
  1322. package/icon/icon-registry.d.ts +0 -180
  1323. package/icon/icon-registry.js +0 -413
  1324. package/icon/icon-registry.js.map +0 -1
  1325. package/icon/icon-registry.metadata.json +0 -1
  1326. package/icon/icon.css +0 -1
  1327. package/icon/icon.css.map +0 -1
  1328. package/icon/icon.d.ts +0 -91
  1329. package/icon/icon.js +0 -264
  1330. package/icon/icon.js.map +0 -1
  1331. package/icon/icon.metadata.json +0 -1
  1332. package/icon/icon.scss +0 -13
  1333. package/icon/index.js +0 -3
  1334. package/icon/index.js.map +0 -1
  1335. package/index.d.ts +0 -25
  1336. package/index.js +0 -27
  1337. package/index.js.map +0 -1
  1338. package/index.metadata.json +0 -1
  1339. package/input/OVERVIEW.md +0 -72
  1340. package/input/README.md +0 -183
  1341. package/input/_input-theme.scss +0 -62
  1342. package/input/autosize.d.ts +0 -29
  1343. package/input/autosize.js +0 -94
  1344. package/input/autosize.js.map +0 -1
  1345. package/input/autosize.metadata.json +0 -1
  1346. package/input/index.js +0 -6
  1347. package/input/index.js.map +0 -1
  1348. package/input/input-container-errors.d.ts +0 -17
  1349. package/input/input-container-errors.js +0 -41
  1350. package/input/input-container-errors.js.map +0 -1
  1351. package/input/input-container-errors.metadata.json +0 -1
  1352. package/input/input-container.css +0 -1
  1353. package/input/input-container.css.map +0 -1
  1354. package/input/input-container.d.ts +0 -95
  1355. package/input/input-container.html +0 -1
  1356. package/input/input-container.js +0 -352
  1357. package/input/input-container.js.map +0 -1
  1358. package/input/input-container.metadata.json +0 -1
  1359. package/input/input-container.scss +0 -32
  1360. package/input/input.css +0 -1
  1361. package/input/input.css.map +0 -1
  1362. package/input/input.d.ts +0 -184
  1363. package/input/input.html +0 -1
  1364. package/input/input.js +0 -564
  1365. package/input/input.js.map +0 -1
  1366. package/input/input.metadata.json +0 -1
  1367. package/input/input.scss +0 -202
  1368. package/list/OVERVIEW.md +0 -124
  1369. package/list/README.md +0 -154
  1370. package/list/_list-theme.scss +0 -28
  1371. package/list/index.js +0 -3
  1372. package/list/index.js.map +0 -1
  1373. package/list/list-item.html +0 -1
  1374. package/list/list.css +0 -1
  1375. package/list/list.css.map +0 -1
  1376. package/list/list.d.ts +0 -23
  1377. package/list/list.js +0 -119
  1378. package/list/list.js.map +0 -1
  1379. package/list/list.metadata.json +0 -1
  1380. package/list/list.scss +0 -181
  1381. package/menu/OVERVIEW.md +0 -62
  1382. package/menu/README.md +0 -171
  1383. package/menu/_menu-theme.scss +0 -29
  1384. package/menu/index.js +0 -7
  1385. package/menu/index.js.map +0 -1
  1386. package/menu/menu-animations.d.ts +0 -19
  1387. package/menu/menu-animations.js +0 -43
  1388. package/menu/menu-animations.js.map +0 -1
  1389. package/menu/menu-animations.metadata.json +0 -1
  1390. package/menu/menu-directive.d.ts +0 -46
  1391. package/menu/menu-directive.js +0 -136
  1392. package/menu/menu-directive.js.map +0 -1
  1393. package/menu/menu-directive.metadata.json +0 -1
  1394. package/menu/menu-errors.d.ts +0 -24
  1395. package/menu/menu-errors.js +0 -43
  1396. package/menu/menu-errors.js.map +0 -1
  1397. package/menu/menu-errors.metadata.json +0 -1
  1398. package/menu/menu-item.d.ts +0 -20
  1399. package/menu/menu-item.html +0 -1
  1400. package/menu/menu-item.js +0 -77
  1401. package/menu/menu-item.js.map +0 -1
  1402. package/menu/menu-item.metadata.json +0 -1
  1403. package/menu/menu-panel.d.ts +0 -10
  1404. package/menu/menu-panel.js +0 -3
  1405. package/menu/menu-panel.js.map +0 -1
  1406. package/menu/menu-positions.d.ts +0 -2
  1407. package/menu/menu-positions.js +0 -3
  1408. package/menu/menu-positions.js.map +0 -1
  1409. package/menu/menu-trigger.d.ts +0 -92
  1410. package/menu/menu-trigger.js +0 -246
  1411. package/menu/menu-trigger.js.map +0 -1
  1412. package/menu/menu-trigger.metadata.json +0 -1
  1413. package/menu/menu.css +0 -1
  1414. package/menu/menu.css.map +0 -1
  1415. package/menu/menu.d.ts +0 -9
  1416. package/menu/menu.html +0 -1
  1417. package/menu/menu.js +0 -40
  1418. package/menu/menu.js.map +0 -1
  1419. package/menu/menu.metadata.json +0 -1
  1420. package/menu/menu.scss +0 -44
  1421. package/module.d.ts +0 -6
  1422. package/module.js +0 -132
  1423. package/module.js.map +0 -1
  1424. package/module.metadata.json +0 -1
  1425. package/progress-bar/OVERVIEW.md +0 -30
  1426. package/progress-bar/README.md +0 -54
  1427. package/progress-bar/_progress-bar-theme.scss +0 -70
  1428. package/progress-bar/index.js +0 -3
  1429. package/progress-bar/index.js.map +0 -1
  1430. package/progress-bar/progress-bar.css +0 -1
  1431. package/progress-bar/progress-bar.css.map +0 -1
  1432. package/progress-bar/progress-bar.d.ts +0 -36
  1433. package/progress-bar/progress-bar.html +0 -1
  1434. package/progress-bar/progress-bar.js +0 -124
  1435. package/progress-bar/progress-bar.js.map +0 -1
  1436. package/progress-bar/progress-bar.metadata.json +0 -1
  1437. package/progress-bar/progress-bar.scss +0 -230
  1438. package/progress-spinner/OVERVIEW.md +0 -23
  1439. package/progress-spinner/README.md +0 -51
  1440. package/progress-spinner/_progress-spinner-theme.scss +0 -23
  1441. package/progress-spinner/index.js +0 -4
  1442. package/progress-spinner/index.js.map +0 -1
  1443. package/progress-spinner/progress-circle.d.ts +0 -4
  1444. package/progress-spinner/progress-circle.js +0 -6
  1445. package/progress-spinner/progress-circle.js.map +0 -1
  1446. package/progress-spinner/progress-circle.metadata.json +0 -1
  1447. package/progress-spinner/progress-spinner.css +0 -1
  1448. package/progress-spinner/progress-spinner.css.map +0 -1
  1449. package/progress-spinner/progress-spinner.d.ts +0 -80
  1450. package/progress-spinner/progress-spinner.html +0 -1
  1451. package/progress-spinner/progress-spinner.js +0 -337
  1452. package/progress-spinner/progress-spinner.js.map +0 -1
  1453. package/progress-spinner/progress-spinner.metadata.json +0 -1
  1454. package/progress-spinner/progress-spinner.scss +0 -68
  1455. package/radio/OVERVIEW.md +0 -29
  1456. package/radio/README.md +0 -55
  1457. package/radio/_radio-theme.scss +0 -39
  1458. package/radio/index.js +0 -3
  1459. package/radio/index.js.map +0 -1
  1460. package/radio/radio.css +0 -1
  1461. package/radio/radio.css.map +0 -1
  1462. package/radio/radio.d.ts +0 -179
  1463. package/radio/radio.html +0 -1
  1464. package/radio/radio.js +0 -552
  1465. package/radio/radio.js.map +0 -1
  1466. package/radio/radio.metadata.json +0 -1
  1467. package/radio/radio.scss +0 -102
  1468. package/select/OVERVIEW.md +0 -8
  1469. package/select/README.md +0 -3
  1470. package/select/_select-theme.scss +0 -64
  1471. package/select/index.js +0 -38
  1472. package/select/index.js.map +0 -1
  1473. package/select/option.d.ts +0 -44
  1474. package/select/option.html +0 -1
  1475. package/select/option.js +0 -135
  1476. package/select/option.js.map +0 -1
  1477. package/select/option.metadata.json +0 -1
  1478. package/select/select-animations.d.ts +0 -29
  1479. package/select/select-animations.js +0 -66
  1480. package/select/select-animations.js.map +0 -1
  1481. package/select/select-animations.metadata.json +0 -1
  1482. package/select/select.css +0 -1
  1483. package/select/select.css.map +0 -1
  1484. package/select/select.d.ts +0 -258
  1485. package/select/select.html +0 -1
  1486. package/select/select.js +0 -604
  1487. package/select/select.js.map +0 -1
  1488. package/select/select.metadata.json +0 -1
  1489. package/select/select.scss +0 -131
  1490. package/sidenav/OVERVIEW.md +0 -70
  1491. package/sidenav/README.md +0 -166
  1492. package/sidenav/_sidenav-theme.scss +0 -37
  1493. package/sidenav/index.js +0 -3
  1494. package/sidenav/index.js.map +0 -1
  1495. package/sidenav/sidenav-container.html +0 -1
  1496. package/sidenav/sidenav-transitions.css +0 -1
  1497. package/sidenav/sidenav-transitions.css.map +0 -1
  1498. package/sidenav/sidenav-transitions.scss +0 -14
  1499. package/sidenav/sidenav.css +0 -1
  1500. package/sidenav/sidenav.css.map +0 -1
  1501. package/sidenav/sidenav.d.ts +0 -182
  1502. package/sidenav/sidenav.html +0 -1
  1503. package/sidenav/sidenav.js +0 -580
  1504. package/sidenav/sidenav.js.map +0 -1
  1505. package/sidenav/sidenav.metadata.json +0 -1
  1506. package/sidenav/sidenav.scss +0 -151
  1507. package/slide-toggle/OVERVIEW.md +0 -24
  1508. package/slide-toggle/README.md +0 -66
  1509. package/slide-toggle/_slide-toggle-theme.scss +0 -89
  1510. package/slide-toggle/index.js +0 -3
  1511. package/slide-toggle/index.js.map +0 -1
  1512. package/slide-toggle/slide-toggle.css +0 -1
  1513. package/slide-toggle/slide-toggle.css.map +0 -1
  1514. package/slide-toggle/slide-toggle.d.ts +0 -84
  1515. package/slide-toggle/slide-toggle.html +0 -1
  1516. package/slide-toggle/slide-toggle.js +0 -347
  1517. package/slide-toggle/slide-toggle.js.map +0 -1
  1518. package/slide-toggle/slide-toggle.metadata.json +0 -1
  1519. package/slide-toggle/slide-toggle.scss +0 -158
  1520. package/slider/OVERVIEW.md +0 -87
  1521. package/slider/README.md +0 -150
  1522. package/slider/_slider-theme.scss +0 -32
  1523. package/slider/index.js +0 -3
  1524. package/slider/index.js.map +0 -1
  1525. package/slider/slider.css +0 -1
  1526. package/slider/slider.css.map +0 -1
  1527. package/slider/slider.d.ts +0 -176
  1528. package/slider/slider.html +0 -1
  1529. package/slider/slider.js +0 -609
  1530. package/slider/slider.js.map +0 -1
  1531. package/slider/slider.metadata.json +0 -1
  1532. package/slider/slider.scss +0 -307
  1533. package/slider/test-gesture-config.d.ts +0 -21
  1534. package/slider/test-gesture-config.js +0 -60
  1535. package/slider/test-gesture-config.js.map +0 -1
  1536. package/slider/test-gesture-config.metadata.json +0 -1
  1537. package/snack-bar/OVERVIEW.md +0 -47
  1538. package/snack-bar/README.md +0 -37
  1539. package/snack-bar/index.js +0 -6
  1540. package/snack-bar/index.js.map +0 -1
  1541. package/snack-bar/simple-snack-bar.css +0 -1
  1542. package/snack-bar/simple-snack-bar.css.map +0 -1
  1543. package/snack-bar/simple-snack-bar.d.ts +0 -17
  1544. package/snack-bar/simple-snack-bar.html +0 -1
  1545. package/snack-bar/simple-snack-bar.js +0 -38
  1546. package/snack-bar/simple-snack-bar.js.map +0 -1
  1547. package/snack-bar/simple-snack-bar.metadata.json +0 -1
  1548. package/snack-bar/simple-snack-bar.scss +0 -28
  1549. package/snack-bar/snack-bar-config.d.ts +0 -15
  1550. package/snack-bar/snack-bar-config.js +0 -18
  1551. package/snack-bar/snack-bar-config.js.map +0 -1
  1552. package/snack-bar/snack-bar-config.metadata.json +0 -1
  1553. package/snack-bar/snack-bar-container.css +0 -1
  1554. package/snack-bar/snack-bar-container.css.map +0 -1
  1555. package/snack-bar/snack-bar-container.d.ts +0 -43
  1556. package/snack-bar/snack-bar-container.html +0 -1
  1557. package/snack-bar/snack-bar-container.js +0 -124
  1558. package/snack-bar/snack-bar-container.js.map +0 -1
  1559. package/snack-bar/snack-bar-container.metadata.json +0 -1
  1560. package/snack-bar/snack-bar-container.scss +0 -27
  1561. package/snack-bar/snack-bar-errors.d.ts +0 -8
  1562. package/snack-bar/snack-bar-errors.js +0 -19
  1563. package/snack-bar/snack-bar-errors.js.map +0 -1
  1564. package/snack-bar/snack-bar-errors.metadata.json +0 -1
  1565. package/snack-bar/snack-bar-ref.d.ts +0 -38
  1566. package/snack-bar/snack-bar-ref.js +0 -70
  1567. package/snack-bar/snack-bar-ref.js.map +0 -1
  1568. package/snack-bar/snack-bar-ref.metadata.json +0 -1
  1569. package/snack-bar/snack-bar.d.ts +0 -45
  1570. package/snack-bar/snack-bar.js +0 -145
  1571. package/snack-bar/snack-bar.js.map +0 -1
  1572. package/snack-bar/snack-bar.metadata.json +0 -1
  1573. package/system-config-spec.d.ts +0 -2
  1574. package/tabs/OVERVIEW.md +0 -81
  1575. package/tabs/README.md +0 -64
  1576. package/tabs/Tabs Pagination.png +0 -0
  1577. package/tabs/_tabs-common.scss +0 -42
  1578. package/tabs/_tabs-theme.scss +0 -24
  1579. package/tabs/index.js +0 -9
  1580. package/tabs/index.js.map +0 -1
  1581. package/tabs/ink-bar.d.ts +0 -27
  1582. package/tabs/ink-bar.js +0 -58
  1583. package/tabs/ink-bar.js.map +0 -1
  1584. package/tabs/ink-bar.metadata.json +0 -1
  1585. package/tabs/tab-body.d.ts +0 -59
  1586. package/tabs/tab-body.html +0 -1
  1587. package/tabs/tab-body.js +0 -157
  1588. package/tabs/tab-body.js.map +0 -1
  1589. package/tabs/tab-body.metadata.json +0 -1
  1590. package/tabs/tab-group.css +0 -1
  1591. package/tabs/tab-group.css.map +0 -1
  1592. package/tabs/tab-group.d.ts +0 -71
  1593. package/tabs/tab-group.html +0 -1
  1594. package/tabs/tab-group.js +0 -236
  1595. package/tabs/tab-group.js.map +0 -1
  1596. package/tabs/tab-group.metadata.json +0 -1
  1597. package/tabs/tab-group.scss +0 -59
  1598. package/tabs/tab-header.css +0 -1
  1599. package/tabs/tab-header.css.map +0 -1
  1600. package/tabs/tab-header.d.ts +0 -137
  1601. package/tabs/tab-header.html +0 -1
  1602. package/tabs/tab-header.js +0 -354
  1603. package/tabs/tab-header.js.map +0 -1
  1604. package/tabs/tab-header.metadata.json +0 -1
  1605. package/tabs/tab-header.scss +0 -85
  1606. package/tabs/tab-label-wrapper.d.ts +0 -15
  1607. package/tabs/tab-label-wrapper.js +0 -53
  1608. package/tabs/tab-label-wrapper.js.map +0 -1
  1609. package/tabs/tab-label-wrapper.metadata.json +0 -1
  1610. package/tabs/tab-label.d.ts +0 -6
  1611. package/tabs/tab-label.js +0 -32
  1612. package/tabs/tab-label.js.map +0 -1
  1613. package/tabs/tab-label.metadata.json +0 -1
  1614. package/tabs/tab-nav-bar/index.d.ts +0 -1
  1615. package/tabs/tab-nav-bar/index.js +0 -3
  1616. package/tabs/tab-nav-bar/index.js.map +0 -1
  1617. package/tabs/tab-nav-bar/index.metadata.json +0 -1
  1618. package/tabs/tab-nav-bar/tab-nav-bar.css +0 -1
  1619. package/tabs/tab-nav-bar/tab-nav-bar.css.map +0 -1
  1620. package/tabs/tab-nav-bar/tab-nav-bar.d.ts +0 -37
  1621. package/tabs/tab-nav-bar/tab-nav-bar.html +0 -1
  1622. package/tabs/tab-nav-bar/tab-nav-bar.js +0 -103
  1623. package/tabs/tab-nav-bar/tab-nav-bar.js.map +0 -1
  1624. package/tabs/tab-nav-bar/tab-nav-bar.metadata.json +0 -1
  1625. package/tabs/tab-nav-bar/tab-nav-bar.scss +0 -26
  1626. package/tabs/tab.d.ts +0 -30
  1627. package/tabs/tab.html +0 -1
  1628. package/tabs/tab.js +0 -74
  1629. package/tabs/tab.js.map +0 -1
  1630. package/tabs/tab.metadata.json +0 -1
  1631. package/toolbar/OVERVIEW.md +0 -51
  1632. package/toolbar/README.md +0 -68
  1633. package/toolbar/_toolbar-theme.scss +0 -33
  1634. package/toolbar/index.js +0 -3
  1635. package/toolbar/index.js.map +0 -1
  1636. package/toolbar/toolbar.css +0 -1
  1637. package/toolbar/toolbar.css.map +0 -1
  1638. package/toolbar/toolbar.d.ts +0 -16
  1639. package/toolbar/toolbar.html +0 -1
  1640. package/toolbar/toolbar.js +0 -84
  1641. package/toolbar/toolbar.js.map +0 -1
  1642. package/toolbar/toolbar.metadata.json +0 -1
  1643. package/toolbar/toolbar.scss +0 -58
  1644. package/tooltip/OVERVIEW.md +0 -35
  1645. package/tooltip/README.md +0 -28
  1646. package/tooltip/_tooltip-theme.scss +0 -9
  1647. package/tooltip/index.js +0 -3
  1648. package/tooltip/index.js.map +0 -1
  1649. package/tooltip/tooltip-errors.d.ts +0 -8
  1650. package/tooltip/tooltip-errors.js +0 -19
  1651. package/tooltip/tooltip-errors.js.map +0 -1
  1652. package/tooltip/tooltip-errors.metadata.json +0 -1
  1653. package/tooltip/tooltip.css +0 -1
  1654. package/tooltip/tooltip.css.map +0 -1
  1655. package/tooltip/tooltip.d.ts +0 -116
  1656. package/tooltip/tooltip.html +0 -1
  1657. package/tooltip/tooltip.js +0 -387
  1658. package/tooltip/tooltip.js.map +0 -1
  1659. package/tooltip/tooltip.metadata.json +0 -1
  1660. package/tooltip/tooltip.scss +0 -26
  1661. package/tsconfig-srcs.json +0 -31
  1662. package/tsconfig.json +0 -34
  1663. package/typedoc.json +0 -20
  1664. package/typings.d.ts +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"material-stepper.umd.js","sources":["../../node_modules/tslib/tslib.es6.js","material/core.es5.js","material/button.es5.js","material/icon.es5.js","material/stepper.es5.js"],"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 = 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\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 = 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\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 = y[op[0] & 2 ? \"return\" : op[0] ? \"throw\" : \"next\"]) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [0, 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) { if (o[n]) i[n] = function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; }; }\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];\r\n return m ? m.call(o) : typeof __values === \"function\" ? __values(o) : o[Symbol.iterator]();\r\n}","/**\n * @license\n * Copyright Google Inc. 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 { ChangeDetectionStrategy, ChangeDetectorRef, Component, Directive, ElementRef, EventEmitter, Inject, Injectable, InjectionToken, Input, LOCALE_ID, NgModule, NgZone, Optional, Output, ViewEncapsulation, isDevMode } from '@angular/core';\nimport { BidiModule } from '@angular/cdk/bidi';\nimport { __extends } from 'tslib';\nimport * as tslib_1 from 'tslib';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { Subject } from 'rxjs/Subject';\nimport { HammerGestureConfig } from '@angular/platform-browser';\nimport { CommonModule } from '@angular/common';\nimport { Platform, PlatformModule } from '@angular/cdk/platform';\nimport { ENTER, SPACE } from '@angular/cdk/keycodes';\n\n/**\n * \\@docs-private\n */\nvar AnimationCurves = (function () {\n function AnimationCurves() {\n }\n AnimationCurves.STANDARD_CURVE = 'cubic-bezier(0.4,0.0,0.2,1)';\n AnimationCurves.DECELERATION_CURVE = 'cubic-bezier(0.0,0.0,0.2,1)';\n AnimationCurves.ACCELERATION_CURVE = 'cubic-bezier(0.4,0.0,1,1)';\n AnimationCurves.SHARP_CURVE = 'cubic-bezier(0.4,0.0,0.6,1)';\n return AnimationCurves;\n}());\n/**\n * \\@docs-private\n */\nvar AnimationDurations = (function () {\n function AnimationDurations() {\n }\n AnimationDurations.COMPLEX = '375ms';\n AnimationDurations.ENTERING = '225ms';\n AnimationDurations.EXITING = '195ms';\n return AnimationDurations;\n}());\n\nvar MATERIAL_COMPATIBILITY_MODE = new InjectionToken('md-compatibility-mode');\n/**\n * Selector that matches all elements that may have style collisions with AngularJS Material.\n */\nvar MAT_ELEMENTS_SELECTOR = \"\\n [mat-button],\\n [mat-fab],\\n [mat-icon-button],\\n [mat-mini-fab],\\n [mat-raised-button],\\n [matCardSubtitle],\\n [matCardTitle],\\n [matCellDef],\\n [matColumnDef],\\n [matDialogActions],\\n [matDialogClose],\\n [matDialogContent],\\n [matDialogTitle],\\n [matHeaderCellDef],\\n [matHeaderRowDef],\\n [matLine],\\n [matRowDef],\\n [matStepLabel],\\n [matStepperNext],\\n [matStepperPrevious],\\n [matTabLabel],\\n [matTabLink],\\n [matTabNav],\\n [matTooltip],\\n [matInput],\\n [matPrefix],\\n [matSuffix],\\n mat-autocomplete,\\n mat-button-toggle,\\n mat-button-toggle,\\n mat-button-toggle-group,\\n mat-card,\\n mat-card-actions,\\n mat-card-content,\\n mat-card-footer,\\n mat-card-header,\\n mat-card-subtitle,\\n mat-card-title,\\n mat-card-title-group,\\n mat-cell,\\n mat-checkbox,\\n mat-chip,\\n mat-dialog-actions,\\n mat-dialog-container,\\n mat-dialog-content,\\n mat-divider,\\n mat-error,\\n mat-grid-list,\\n mat-grid-tile,\\n mat-grid-tile-footer,\\n mat-grid-tile-header,\\n mat-header-cell,\\n mat-header-row,\\n mat-hint,\\n mat-horizontal-stepper,\\n mat-icon,\\n mat-input-container,\\n mat-form-field,\\n mat-list,\\n mat-list-item,\\n mat-menu,\\n mat-nav-list,\\n mat-option,\\n mat-placeholder,\\n mat-progress-bar,\\n mat-pseudo-checkbox,\\n mat-radio-button,\\n mat-radio-group,\\n mat-row,\\n mat-select,\\n mat-sidenav,\\n mat-sidenav-container,\\n mat-slider,\\n mat-spinner,\\n mat-step,\\n mat-tab,\\n mat-table,\\n mat-tab-group,\\n mat-toolbar,\\n mat-vertical-stepper\";\n/**\n * Selector that matches all elements that may have style collisions with AngularJS Material.\n */\nvar MD_ELEMENTS_SELECTOR = \"\\n [md-button],\\n [md-fab],\\n [md-icon-button],\\n [md-mini-fab],\\n [md-raised-button],\\n [mdCardSubtitle],\\n [mdCardTitle],\\n [mdCellDef],\\n [mdColumnDef],\\n [mdDialogActions],\\n [mdDialogClose],\\n [mdDialogContent],\\n [mdDialogTitle],\\n [mdHeaderCellDef],\\n [mdHeaderRowDef],\\n [mdLine],\\n [mdRowDef],\\n [mdStepLabel],\\n [mdStepperNext],\\n [mdStepperPrevious],\\n [mdTabLabel],\\n [mdTabLink],\\n [mdTabNav],\\n [mdTooltip],\\n [mdInput],\\n [mdPrefix],\\n [mdSuffix],\\n md-autocomplete,\\n md-button-toggle,\\n md-button-toggle,\\n md-button-toggle-group,\\n md-card,\\n md-card-actions,\\n md-card-content,\\n md-card-footer,\\n md-card-header,\\n md-card-subtitle,\\n md-card-title,\\n md-card-title-group,\\n md-cell,\\n md-checkbox,\\n md-chip,\\n md-dialog-actions,\\n md-dialog-container,\\n md-dialog-content,\\n md-divider,\\n md-error,\\n md-grid-list,\\n md-grid-tile,\\n md-grid-tile-footer,\\n md-grid-tile-header,\\n md-header-cell,\\n md-header-row,\\n md-hint,\\n md-horizontal-stepper,\\n md-icon,\\n md-input-container,\\n md-form-field,\\n md-list,\\n md-list-item,\\n md-menu,\\n md-nav-list,\\n md-option,\\n md-placeholder,\\n md-progress-bar,\\n md-pseudo-checkbox,\\n md-radio-button,\\n md-radio-group,\\n md-row,\\n md-select,\\n md-sidenav,\\n md-sidenav-container,\\n md-slider,\\n md-spinner,\\n md-step,\\n md-tab,\\n md-table,\\n md-tab-group,\\n md-toolbar,\\n md-vertical-stepper\";\n/**\n * Directive that enforces that the `mat-` prefix cannot be used.\n */\nvar MatPrefixRejector = (function () {\n function MatPrefixRejector() {\n }\n MatPrefixRejector.decorators = [\n { type: Directive, args: [{ selector: MAT_ELEMENTS_SELECTOR },] },\n ];\n /**\n * @nocollapse\n */\n MatPrefixRejector.ctorParameters = function () { return []; };\n return MatPrefixRejector;\n}());\n/**\n * Directive that enforces that the `md-` prefix cannot be used.\n */\nvar MdPrefixRejector = (function () {\n function MdPrefixRejector() {\n }\n MdPrefixRejector.decorators = [\n { type: Directive, args: [{ selector: MD_ELEMENTS_SELECTOR },] },\n ];\n /**\n * @nocollapse\n */\n MdPrefixRejector.ctorParameters = function () { return []; };\n return MdPrefixRejector;\n}());\n/**\n * Module that enforces the default compatibility mode settings. When this module is loaded\n * without NoConflictStyleCompatibilityMode also being imported, it will throw an error if\n * there are any uses of the `mat-` prefix.\n */\nvar CompatibilityModule = (function () {\n function CompatibilityModule() {\n }\n CompatibilityModule.decorators = [\n { type: NgModule, args: [{\n declarations: [MatPrefixRejector, MdPrefixRejector],\n exports: [MatPrefixRejector, MdPrefixRejector],\n },] },\n ];\n /**\n * @nocollapse\n */\n CompatibilityModule.ctorParameters = function () { return []; };\n return CompatibilityModule;\n}());\n/**\n * Module that enforces \"no-conflict\" compatibility mode settings. When this module is loaded,\n * it will throw an error if there are any uses of the `md-` prefix.\n */\nvar NoConflictStyleCompatibilityMode = (function () {\n function NoConflictStyleCompatibilityMode() {\n }\n NoConflictStyleCompatibilityMode.decorators = [\n { type: NgModule },\n ];\n /**\n * @nocollapse\n */\n NoConflictStyleCompatibilityMode.ctorParameters = function () { return []; };\n return NoConflictStyleCompatibilityMode;\n}());\n\n/**\n * Injection token that configures whether the Material sanity checks are enabled.\n */\nvar MATERIAL_SANITY_CHECKS = new InjectionToken('mat-sanity-checks');\n/**\n * Module that captures anything that should be loaded and/or run for *all* Angular Material\n * components. This includes Bidi, compatibility mode, etc.\n *\n * This module should be imported to each top-level component module (e.g., MatTabsModule).\n */\nvar MatCommonModule = (function () {\n /**\n * @param {?} sanityChecksEnabled\n */\n function MatCommonModule(sanityChecksEnabled) {\n /**\n * Whether we've done the global sanity checks (e.g. a theme is loaded, there is a doctype).\n */\n this._hasDoneGlobalChecks = false;\n /**\n * Reference to the global `document` object.\n */\n this._document = typeof document === 'object' && document ? document : null;\n if (sanityChecksEnabled && !this._hasDoneGlobalChecks && isDevMode()) {\n this._checkDoctype();\n this._checkTheme();\n this._hasDoneGlobalChecks = true;\n }\n }\n /**\n * @return {?}\n */\n MatCommonModule.prototype._checkDoctype = function () {\n if (this._document && !this._document.doctype) {\n console.warn('Current document does not have a doctype. This may cause ' +\n 'some Angular Material components not to behave as expected.');\n }\n };\n /**\n * @return {?}\n */\n MatCommonModule.prototype._checkTheme = function () {\n if (this._document && typeof getComputedStyle === 'function') {\n var /** @type {?} */ testElement = this._document.createElement('div');\n testElement.classList.add('mat-theme-loaded-marker');\n this._document.body.appendChild(testElement);\n var /** @type {?} */ computedStyle = getComputedStyle(testElement);\n // In some situations, the computed style of the test element can be null. For example in\n // Firefox, the computed style is null if an application is running inside of a hidden iframe.\n // See: https://bugzilla.mozilla.org/show_bug.cgi?id=548397\n if (computedStyle && computedStyle.display !== 'none') {\n console.warn('Could not find Angular Material core theme. Most Material ' +\n 'components may not work as expected. For more info refer ' +\n 'to the theming guide: https://material.angular.io/guide/theming');\n }\n this._document.body.removeChild(testElement);\n }\n };\n MatCommonModule.decorators = [\n { type: NgModule, args: [{\n imports: [CompatibilityModule, BidiModule],\n exports: [CompatibilityModule, BidiModule],\n providers: [{\n provide: MATERIAL_SANITY_CHECKS, useValue: true,\n }],\n },] },\n ];\n /**\n * @nocollapse\n */\n MatCommonModule.ctorParameters = function () { return [\n { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [MATERIAL_SANITY_CHECKS,] },] },\n ]; };\n return MatCommonModule;\n}());\n\n/**\n * Mixin to augment a directive with a `disabled` property.\n * @template T\n * @param {?} base\n * @return {?}\n */\nfunction mixinDisabled(base) {\n return (function (_super) {\n __extends(class_1, _super);\n /**\n * @param {...?} args\n */\n function class_1() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var _this = _super.apply(this, args) || this;\n _this._disabled = false;\n return _this;\n }\n Object.defineProperty(class_1.prototype, \"disabled\", {\n /**\n * @return {?}\n */\n get: function () { return this._disabled; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) { this._disabled = coerceBooleanProperty(value); },\n enumerable: true,\n configurable: true\n });\n return class_1;\n }(base));\n}\n\n/**\n * Mixin to augment a directive with a `color` property.\n * @template T\n * @param {?} base\n * @param {?=} defaultColor\n * @return {?}\n */\nfunction mixinColor(base, defaultColor) {\n return (function (_super) {\n __extends(class_1, _super);\n /**\n * @param {...?} args\n */\n function class_1() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var _this = _super.apply(this, args) || this;\n // Set the default color that can be specified from the mixin.\n _this.color = defaultColor;\n return _this;\n }\n Object.defineProperty(class_1.prototype, \"color\", {\n /**\n * @return {?}\n */\n get: function () { return this._color; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) {\n var /** @type {?} */ colorPalette = value || defaultColor;\n if (colorPalette !== this._color) {\n if (this._color) {\n this._renderer.removeClass(this._elementRef.nativeElement, \"mat-\" + this._color);\n }\n if (colorPalette) {\n this._renderer.addClass(this._elementRef.nativeElement, \"mat-\" + colorPalette);\n }\n this._color = colorPalette;\n }\n },\n enumerable: true,\n configurable: true\n });\n return class_1;\n }(base));\n}\n\n/**\n * Mixin to augment a directive with a `disableRipple` property.\n * @template T\n * @param {?} base\n * @return {?}\n */\nfunction mixinDisableRipple(base) {\n return (function (_super) {\n __extends(class_1, _super);\n /**\n * @param {...?} args\n */\n function class_1() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var _this = _super.apply(this, args) || this;\n _this._disableRipple = false;\n return _this;\n }\n Object.defineProperty(class_1.prototype, \"disableRipple\", {\n /**\n * Whether the ripple effect is disabled or not.\n * @return {?}\n */\n get: function () { return this._disableRipple; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) { this._disableRipple = coerceBooleanProperty(value); },\n enumerable: true,\n configurable: true\n });\n return class_1;\n }(base));\n}\n\n/**\n * Mixin to augment a directive with a `tabIndex` property.\n * @template T\n * @param {?} base\n * @param {?=} defaultTabIndex\n * @return {?}\n */\nfunction mixinTabIndex(base, defaultTabIndex) {\n if (defaultTabIndex === void 0) { defaultTabIndex = 0; }\n return (function (_super) {\n __extends(class_1, _super);\n /**\n * @param {...?} args\n */\n function class_1() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var _this = _super.apply(this, args) || this;\n _this._tabIndex = defaultTabIndex;\n return _this;\n }\n Object.defineProperty(class_1.prototype, \"tabIndex\", {\n /**\n * @return {?}\n */\n get: function () { return this.disabled ? -1 : this._tabIndex; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) {\n // If the specified tabIndex value is null or undefined, fall back to the default value.\n this._tabIndex = value != null ? value : defaultTabIndex;\n },\n enumerable: true,\n configurable: true\n });\n return class_1;\n }(base));\n}\n\n/**\n * InjectionToken for datepicker that can be used to override default locale code.\n */\nvar MAT_DATE_LOCALE = new InjectionToken('MAT_DATE_LOCALE');\n/**\n * Provider for MAT_DATE_LOCALE injection token.\n */\nvar MAT_DATE_LOCALE_PROVIDER = { provide: MAT_DATE_LOCALE, useExisting: LOCALE_ID };\n/**\n * Adapts type `D` to be usable as a date by cdk-based components that work with dates.\n * @abstract\n */\nvar DateAdapter = (function () {\n function DateAdapter() {\n this._localeChanges = new Subject();\n }\n Object.defineProperty(DateAdapter.prototype, \"localeChanges\", {\n /**\n * A stream that emits when the locale changes.\n * @return {?}\n */\n get: function () { return this._localeChanges; },\n enumerable: true,\n configurable: true\n });\n /**\n * Gets the year component of the given date.\n * @abstract\n * @param {?} date The date to extract the year from.\n * @return {?} The year component.\n */\n DateAdapter.prototype.getYear = function (date) { };\n /**\n * Gets the month component of the given date.\n * @abstract\n * @param {?} date The date to extract the month from.\n * @return {?} The month component (0-indexed, 0 = January).\n */\n DateAdapter.prototype.getMonth = function (date) { };\n /**\n * Gets the date of the month component of the given date.\n * @abstract\n * @param {?} date The date to extract the date of the month from.\n * @return {?} The month component (1-indexed, 1 = first of month).\n */\n DateAdapter.prototype.getDate = function (date) { };\n /**\n * Gets the day of the week component of the given date.\n * @abstract\n * @param {?} date The date to extract the day of the week from.\n * @return {?} The month component (0-indexed, 0 = Sunday).\n */\n DateAdapter.prototype.getDayOfWeek = function (date) { };\n /**\n * Gets a list of names for the months.\n * @abstract\n * @param {?} style The naming style (e.g. long = 'January', short = 'Jan', narrow = 'J').\n * @return {?} An ordered list of all month names, starting with January.\n */\n DateAdapter.prototype.getMonthNames = function (style) { };\n /**\n * Gets a list of names for the dates of the month.\n * @abstract\n * @return {?} An ordered list of all date of the month names, starting with '1'.\n */\n DateAdapter.prototype.getDateNames = function () { };\n /**\n * Gets a list of names for the days of the week.\n * @abstract\n * @param {?} style The naming style (e.g. long = 'Sunday', short = 'Sun', narrow = 'S').\n * @return {?} An ordered list of all weekday names, starting with Sunday.\n */\n DateAdapter.prototype.getDayOfWeekNames = function (style) { };\n /**\n * Gets the name for the year of the given date.\n * @abstract\n * @param {?} date The date to get the year name for.\n * @return {?} The name of the given year (e.g. '2017').\n */\n DateAdapter.prototype.getYearName = function (date) { };\n /**\n * Gets the first day of the week.\n * @abstract\n * @return {?} The first day of the week (0-indexed, 0 = Sunday).\n */\n DateAdapter.prototype.getFirstDayOfWeek = function () { };\n /**\n * Gets the number of days in the month of the given date.\n * @abstract\n * @param {?} date The date whose month should be checked.\n * @return {?} The number of days in the month of the given date.\n */\n DateAdapter.prototype.getNumDaysInMonth = function (date) { };\n /**\n * Clones the given date.\n * @abstract\n * @param {?} date The date to clone\n * @return {?} A new date equal to the given date.\n */\n DateAdapter.prototype.clone = function (date) { };\n /**\n * Creates a date with the given year, month, and date. Does not allow over/under-flow of the\n * month and date.\n * @abstract\n * @param {?} year The full year of the date. (e.g. 89 means the year 89, not the year 1989).\n * @param {?} month The month of the date (0-indexed, 0 = January). Must be an integer 0 - 11.\n * @param {?} date The date of month of the date. Must be an integer 1 - length of the given month.\n * @return {?} The new date, or null if invalid.\n */\n DateAdapter.prototype.createDate = function (year, month, date) { };\n /**\n * Gets today's date.\n * @abstract\n * @return {?} Today's date.\n */\n DateAdapter.prototype.today = function () { };\n /**\n * Parses a date from a value.\n * @abstract\n * @param {?} value The value to parse.\n * @param {?} parseFormat The expected format of the value being parsed\n * (type is implementation-dependent).\n * @return {?} The parsed date.\n */\n DateAdapter.prototype.parse = function (value, parseFormat) { };\n /**\n * Formats a date as a string.\n * @abstract\n * @param {?} date The value to format.\n * @param {?} displayFormat The format to use to display the date as a string.\n * @return {?} The formatted date string.\n */\n DateAdapter.prototype.format = function (date, displayFormat) { };\n /**\n * Adds the given number of years to the date. Years are counted as if flipping 12 pages on the\n * calendar for each year and then finding the closest date in the new month. For example when\n * adding 1 year to Feb 29, 2016, the resulting date will be Feb 28, 2017.\n * @abstract\n * @param {?} date The date to add years to.\n * @param {?} years The number of years to add (may be negative).\n * @return {?} A new date equal to the given one with the specified number of years added.\n */\n DateAdapter.prototype.addCalendarYears = function (date, years) { };\n /**\n * Adds the given number of months to the date. Months are counted as if flipping a page on the\n * calendar for each month and then finding the closest date in the new month. For example when\n * adding 1 month to Jan 31, 2017, the resulting date will be Feb 28, 2017.\n * @abstract\n * @param {?} date The date to add months to.\n * @param {?} months The number of months to add (may be negative).\n * @return {?} A new date equal to the given one with the specified number of months added.\n */\n DateAdapter.prototype.addCalendarMonths = function (date, months) { };\n /**\n * Adds the given number of days to the date. Days are counted as if moving one cell on the\n * calendar for each day.\n * @abstract\n * @param {?} date The date to add days to.\n * @param {?} days The number of days to add (may be negative).\n * @return {?} A new date equal to the given one with the specified number of days added.\n */\n DateAdapter.prototype.addCalendarDays = function (date, days) { };\n /**\n * Gets the RFC 3339 compatible string (https://tools.ietf.org/html/rfc3339) for the given date.\n * @abstract\n * @param {?} date The date to get the ISO date string for.\n * @return {?} The ISO date string date string.\n */\n DateAdapter.prototype.toIso8601 = function (date) { };\n /**\n * Creates a date from an RFC 3339 compatible string (https://tools.ietf.org/html/rfc3339).\n * @abstract\n * @param {?} iso8601String The ISO date string to create a date from\n * @return {?} The date created from the ISO date string.\n */\n DateAdapter.prototype.fromIso8601 = function (iso8601String) { };\n /**\n * Checks whether the given object is considered a date instance by this DateAdapter.\n * @abstract\n * @param {?} obj The object to check\n * @return {?} Whether the object is a date instance.\n */\n DateAdapter.prototype.isDateInstance = function (obj) { };\n /**\n * Checks whether the given date is valid.\n * @abstract\n * @param {?} date The date to check.\n * @return {?} Whether the date is valid.\n */\n DateAdapter.prototype.isValid = function (date) { };\n /**\n * Sets the locale used for all dates.\n * @param {?} locale The new locale.\n * @return {?}\n */\n DateAdapter.prototype.setLocale = function (locale) {\n this.locale = locale;\n this._localeChanges.next();\n };\n /**\n * Compares two dates.\n * @param {?} first The first date to compare.\n * @param {?} second The second date to compare.\n * @return {?} 0 if the dates are equal, a number less than 0 if the first date is earlier,\n * a number greater than 0 if the first date is later.\n */\n DateAdapter.prototype.compareDate = function (first, second) {\n return this.getYear(first) - this.getYear(second) ||\n this.getMonth(first) - this.getMonth(second) ||\n this.getDate(first) - this.getDate(second);\n };\n /**\n * Checks if two dates are equal.\n * @param {?} first The first date to check.\n * @param {?} second The second date to check.\n * Null dates are considered equal to other null dates.\n * @return {?}\n */\n DateAdapter.prototype.sameDate = function (first, second) {\n return first && second ? !this.compareDate(first, second) : first == second;\n };\n /**\n * Clamp the given date between min and max dates.\n * @param {?} date The date to clamp.\n * @param {?=} min The minimum value to allow. If null or omitted no min is enforced.\n * @param {?=} max The maximum value to allow. If null or omitted no max is enforced.\n * @return {?} `min` if `date` is less than `min`, `max` if date is greater than `max`,\n * otherwise `date`.\n */\n DateAdapter.prototype.clampDate = function (date, min, max) {\n if (min && this.compareDate(date, min) < 0) {\n return min;\n }\n if (max && this.compareDate(date, max) > 0) {\n return max;\n }\n return date;\n };\n return DateAdapter;\n}());\n\n/**\n * Extends an object with the *enumerable* and *own* properties of one or more source objects,\n * similar to Object.assign.\n *\n * @param {?} dest The object which will have properties copied to it.\n * @param {...?} sources The source objects from which properties will be copied.\n * @return {?}\n */\nfunction extendObject(dest) {\n var sources = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n sources[_i - 1] = arguments[_i];\n }\n if (dest == null) {\n throw TypeError('Cannot convert undefined or null to object');\n }\n for (var _a = 0, sources_1 = sources; _a < sources_1.length; _a++) {\n var source = sources_1[_a];\n if (source != null) {\n for (var /** @type {?} */ key in source) {\n if (source.hasOwnProperty(key)) {\n dest[key] = source[key];\n }\n }\n }\n }\n return dest;\n}\n\n/**\n * Whether the browser supports the Intl API.\n */\nvar SUPPORTS_INTL_API = typeof Intl != 'undefined';\n/**\n * The default month names to use if Intl API is not available.\n */\nvar DEFAULT_MONTH_NAMES = {\n 'long': [\n 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September',\n 'October', 'November', 'December'\n ],\n 'short': ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n 'narrow': ['J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D']\n};\n/**\n * The default date names to use if Intl API is not available.\n */\nvar DEFAULT_DATE_NAMES = range(31, function (i) { return String(i + 1); });\n/**\n * The default day of the week names to use if Intl API is not available.\n */\nvar DEFAULT_DAY_OF_WEEK_NAMES = {\n 'long': ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],\n 'short': ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n 'narrow': ['S', 'M', 'T', 'W', 'T', 'F', 'S']\n};\n/**\n * Matches strings that have the form of a valid RFC 3339 string\n * (https://tools.ietf.org/html/rfc3339). Note that the string may not actually be a valid date\n * because the regex will match strings an with out of bounds month, date, etc.\n */\nvar ISO_8601_REGEX = /^\\d{4}-\\d{2}-\\d{2}(?:T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|(?:(?:\\+|-)\\d{2}:\\d{2}))?)?$/;\n/**\n * Creates an array and fills it with values.\n * @template T\n * @param {?} length\n * @param {?} valueFunction\n * @return {?}\n */\nfunction range(length, valueFunction) {\n var /** @type {?} */ valuesArray = Array(length);\n for (var /** @type {?} */ i = 0; i < length; i++) {\n valuesArray[i] = valueFunction(i);\n }\n return valuesArray;\n}\n/**\n * Adapts the native JS Date for use with cdk-based components that work with dates.\n */\nvar NativeDateAdapter = (function (_super) {\n __extends(NativeDateAdapter, _super);\n /**\n * @param {?} matDateLocale\n */\n function NativeDateAdapter(matDateLocale) {\n var _this = _super.call(this) || this;\n /**\n * Whether to use `timeZone: 'utc'` with `Intl.DateTimeFormat` when formatting dates.\n * Without this `Intl.DateTimeFormat` sometimes chooses the wrong timeZone, which can throw off\n * the result. (e.g. in the en-US locale `new Date(1800, 7, 14).toLocaleDateString()`\n * will produce `'8/13/1800'`.\n */\n _this.useUtcForDisplay = true;\n _super.prototype.setLocale.call(_this, matDateLocale);\n return _this;\n }\n /**\n * @param {?} date\n * @return {?}\n */\n NativeDateAdapter.prototype.getYear = function (date) {\n return date.getFullYear();\n };\n /**\n * @param {?} date\n * @return {?}\n */\n NativeDateAdapter.prototype.getMonth = function (date) {\n return date.getMonth();\n };\n /**\n * @param {?} date\n * @return {?}\n */\n NativeDateAdapter.prototype.getDate = function (date) {\n return date.getDate();\n };\n /**\n * @param {?} date\n * @return {?}\n */\n NativeDateAdapter.prototype.getDayOfWeek = function (date) {\n return date.getDay();\n };\n /**\n * @param {?} style\n * @return {?}\n */\n NativeDateAdapter.prototype.getMonthNames = function (style) {\n var _this = this;\n if (SUPPORTS_INTL_API) {\n var /** @type {?} */ dtf_1 = new Intl.DateTimeFormat(this.locale, { month: style });\n return range(12, function (i) { return _this._stripDirectionalityCharacters(dtf_1.format(new Date(2017, i, 1))); });\n }\n return DEFAULT_MONTH_NAMES[style];\n };\n /**\n * @return {?}\n */\n NativeDateAdapter.prototype.getDateNames = function () {\n var _this = this;\n if (SUPPORTS_INTL_API) {\n var /** @type {?} */ dtf_2 = new Intl.DateTimeFormat(this.locale, { day: 'numeric' });\n return range(31, function (i) { return _this._stripDirectionalityCharacters(dtf_2.format(new Date(2017, 0, i + 1))); });\n }\n return DEFAULT_DATE_NAMES;\n };\n /**\n * @param {?} style\n * @return {?}\n */\n NativeDateAdapter.prototype.getDayOfWeekNames = function (style) {\n var _this = this;\n if (SUPPORTS_INTL_API) {\n var /** @type {?} */ dtf_3 = new Intl.DateTimeFormat(this.locale, { weekday: style });\n return range(7, function (i) { return _this._stripDirectionalityCharacters(dtf_3.format(new Date(2017, 0, i + 1))); });\n }\n return DEFAULT_DAY_OF_WEEK_NAMES[style];\n };\n /**\n * @param {?} date\n * @return {?}\n */\n NativeDateAdapter.prototype.getYearName = function (date) {\n if (SUPPORTS_INTL_API) {\n var /** @type {?} */ dtf = new Intl.DateTimeFormat(this.locale, { year: 'numeric' });\n return this._stripDirectionalityCharacters(dtf.format(date));\n }\n return String(this.getYear(date));\n };\n /**\n * @return {?}\n */\n NativeDateAdapter.prototype.getFirstDayOfWeek = function () {\n // We can't tell using native JS Date what the first day of the week is, we default to Sunday.\n return 0;\n };\n /**\n * @param {?} date\n * @return {?}\n */\n NativeDateAdapter.prototype.getNumDaysInMonth = function (date) {\n return this.getDate(this._createDateWithOverflow(this.getYear(date), this.getMonth(date) + 1, 0));\n };\n /**\n * @param {?} date\n * @return {?}\n */\n NativeDateAdapter.prototype.clone = function (date) {\n return this.createDate(this.getYear(date), this.getMonth(date), this.getDate(date));\n };\n /**\n * @param {?} year\n * @param {?} month\n * @param {?} date\n * @return {?}\n */\n NativeDateAdapter.prototype.createDate = function (year, month, date) {\n // Check for invalid month and date (except upper bound on date which we have to check after\n // creating the Date).\n if (month < 0 || month > 11) {\n throw Error(\"Invalid month index \\\"\" + month + \"\\\". Month index has to be between 0 and 11.\");\n }\n if (date < 1) {\n throw Error(\"Invalid date \\\"\" + date + \"\\\". Date has to be greater than 0.\");\n }\n var /** @type {?} */ result = this._createDateWithOverflow(year, month, date);\n // Check that the date wasn't above the upper bound for the month, causing the month to overflow\n if (result.getMonth() != month) {\n throw Error(\"Invalid date \\\"\" + date + \"\\\" for month with index \\\"\" + month + \"\\\".\");\n }\n return result;\n };\n /**\n * @return {?}\n */\n NativeDateAdapter.prototype.today = function () {\n return new Date();\n };\n /**\n * @param {?} value\n * @return {?}\n */\n NativeDateAdapter.prototype.parse = function (value) {\n // We have no way using the native JS Date to set the parse format or locale, so we ignore these\n // parameters.\n if (typeof value == 'number') {\n return new Date(value);\n }\n return value ? new Date(Date.parse(value)) : null;\n };\n /**\n * @param {?} date\n * @param {?} displayFormat\n * @return {?}\n */\n NativeDateAdapter.prototype.format = function (date, displayFormat) {\n if (!this.isValid(date)) {\n throw Error('NativeDateAdapter: Cannot format invalid date.');\n }\n if (SUPPORTS_INTL_API) {\n if (this.useUtcForDisplay) {\n date = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()));\n displayFormat = extendObject({}, displayFormat, { timeZone: 'utc' });\n }\n var /** @type {?} */ dtf = new Intl.DateTimeFormat(this.locale, displayFormat);\n return this._stripDirectionalityCharacters(dtf.format(date));\n }\n return this._stripDirectionalityCharacters(date.toDateString());\n };\n /**\n * @param {?} date\n * @param {?} years\n * @return {?}\n */\n NativeDateAdapter.prototype.addCalendarYears = function (date, years) {\n return this.addCalendarMonths(date, years * 12);\n };\n /**\n * @param {?} date\n * @param {?} months\n * @return {?}\n */\n NativeDateAdapter.prototype.addCalendarMonths = function (date, months) {\n var /** @type {?} */ newDate = this._createDateWithOverflow(this.getYear(date), this.getMonth(date) + months, this.getDate(date));\n // It's possible to wind up in the wrong month if the original month has more days than the new\n // month. In this case we want to go to the last day of the desired month.\n // Note: the additional + 12 % 12 ensures we end up with a positive number, since JS % doesn't\n // guarantee this.\n if (this.getMonth(newDate) != ((this.getMonth(date) + months) % 12 + 12) % 12) {\n newDate = this._createDateWithOverflow(this.getYear(newDate), this.getMonth(newDate), 0);\n }\n return newDate;\n };\n /**\n * @param {?} date\n * @param {?} days\n * @return {?}\n */\n NativeDateAdapter.prototype.addCalendarDays = function (date, days) {\n return this._createDateWithOverflow(this.getYear(date), this.getMonth(date), this.getDate(date) + days);\n };\n /**\n * @param {?} date\n * @return {?}\n */\n NativeDateAdapter.prototype.toIso8601 = function (date) {\n return [\n date.getUTCFullYear(),\n this._2digit(date.getUTCMonth() + 1),\n this._2digit(date.getUTCDate())\n ].join('-');\n };\n /**\n * @param {?} iso8601String\n * @return {?}\n */\n NativeDateAdapter.prototype.fromIso8601 = function (iso8601String) {\n // The `Date` constructor accepts formats other than ISO 8601, so we need to make sure the\n // string is the right format first.\n if (ISO_8601_REGEX.test(iso8601String)) {\n var /** @type {?} */ d = new Date(iso8601String);\n if (this.isValid(d)) {\n return d;\n }\n }\n return null;\n };\n /**\n * @param {?} obj\n * @return {?}\n */\n NativeDateAdapter.prototype.isDateInstance = function (obj) {\n return obj instanceof Date;\n };\n /**\n * @param {?} date\n * @return {?}\n */\n NativeDateAdapter.prototype.isValid = function (date) {\n return !isNaN(date.getTime());\n };\n /**\n * Creates a date but allows the month and date to overflow.\n * @param {?} year\n * @param {?} month\n * @param {?} date\n * @return {?}\n */\n NativeDateAdapter.prototype._createDateWithOverflow = function (year, month, date) {\n var /** @type {?} */ result = new Date(year, month, date);\n // We need to correct for the fact that JS native Date treats years in range [0, 99] as\n // abbreviations for 19xx.\n if (year >= 0 && year < 100) {\n result.setFullYear(this.getYear(result) - 1900);\n }\n return result;\n };\n /**\n * Pads a number to make it two digits.\n * @param {?} n The number to pad.\n * @return {?} The padded number.\n */\n NativeDateAdapter.prototype._2digit = function (n) {\n return ('00' + n).slice(-2);\n };\n /**\n * Strip out unicode LTR and RTL characters. Edge and IE insert these into formatted dates while\n * other browsers do not. We remove them to make output consistent and because they interfere with\n * date parsing.\n * @param {?} str The string to strip direction characters from.\n * @return {?} The stripped string.\n */\n NativeDateAdapter.prototype._stripDirectionalityCharacters = function (str) {\n return str.replace(/[\\u200e\\u200f]/g, '');\n };\n NativeDateAdapter.decorators = [\n { type: Injectable },\n ];\n /**\n * @nocollapse\n */\n NativeDateAdapter.ctorParameters = function () { return [\n { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [MAT_DATE_LOCALE,] },] },\n ]; };\n return NativeDateAdapter;\n}(DateAdapter));\n\nvar MAT_DATE_FORMATS = new InjectionToken('mat-date-formats');\n\nvar MAT_NATIVE_DATE_FORMATS = {\n parse: {\n dateInput: null,\n },\n display: {\n dateInput: { year: 'numeric', month: 'numeric', day: 'numeric' },\n monthYearLabel: { year: 'numeric', month: 'short' },\n dateA11yLabel: { year: 'numeric', month: 'long', day: 'numeric' },\n monthYearA11yLabel: { year: 'numeric', month: 'long' },\n }\n};\n\nvar NativeDateModule = (function () {\n function NativeDateModule() {\n }\n NativeDateModule.decorators = [\n { type: NgModule, args: [{\n providers: [\n { provide: DateAdapter, useClass: NativeDateAdapter },\n MAT_DATE_LOCALE_PROVIDER\n ],\n },] },\n ];\n /**\n * @nocollapse\n */\n NativeDateModule.ctorParameters = function () { return []; };\n return NativeDateModule;\n}());\nvar MatNativeDateModule = (function () {\n function MatNativeDateModule() {\n }\n MatNativeDateModule.decorators = [\n { type: NgModule, args: [{\n imports: [NativeDateModule],\n providers: [{ provide: MAT_DATE_FORMATS, useValue: MAT_NATIVE_DATE_FORMATS }],\n },] },\n ];\n /**\n * @nocollapse\n */\n MatNativeDateModule.ctorParameters = function () { return []; };\n return MatNativeDateModule;\n}());\n\n/**\n * Error state matcher that matches when a control is invalid and dirty.\n */\nvar ShowOnDirtyErrorStateMatcher = (function () {\n function ShowOnDirtyErrorStateMatcher() {\n }\n /**\n * @param {?} control\n * @param {?} form\n * @return {?}\n */\n ShowOnDirtyErrorStateMatcher.prototype.isErrorState = function (control, form) {\n return !!(control && control.invalid && (control.dirty || (form && form.submitted)));\n };\n ShowOnDirtyErrorStateMatcher.decorators = [\n { type: Injectable },\n ];\n /**\n * @nocollapse\n */\n ShowOnDirtyErrorStateMatcher.ctorParameters = function () { return []; };\n return ShowOnDirtyErrorStateMatcher;\n}());\n/**\n * Provider that defines how form controls behave with regards to displaying error messages.\n */\nvar ErrorStateMatcher = (function () {\n function ErrorStateMatcher() {\n }\n /**\n * @param {?} control\n * @param {?} form\n * @return {?}\n */\n ErrorStateMatcher.prototype.isErrorState = function (control, form) {\n return !!(control && control.invalid && (control.touched || (form && form.submitted)));\n };\n ErrorStateMatcher.decorators = [\n { type: Injectable },\n ];\n /**\n * @nocollapse\n */\n ErrorStateMatcher.ctorParameters = function () { return []; };\n return ErrorStateMatcher;\n}());\n\nvar GestureConfig = (function (_super) {\n __extends(GestureConfig, _super);\n function GestureConfig() {\n var _this = _super.call(this) || this;\n _this._hammer = typeof window !== 'undefined' ? ((window)).Hammer : null;\n /* List of new event names to add to the gesture support list */\n _this.events = _this._hammer ? [\n 'longpress',\n 'slide',\n 'slidestart',\n 'slideend',\n 'slideright',\n 'slideleft'\n ] : [];\n if (!_this._hammer && isDevMode()) {\n console.warn('Could not find HammerJS. Certain Angular Material ' +\n 'components may not work correctly.');\n }\n return _this;\n }\n /**\n * Builds Hammer instance manually to add custom recognizers that match the Material Design spec.\n *\n * Our gesture names come from the Material Design gestures spec:\n * https://www.google.com/design/spec/patterns/gestures.html#gestures-touch-mechanics\n *\n * More information on default recognizers can be found in Hammer docs:\n * http://hammerjs.github.io/recognizer-pan/\n * http://hammerjs.github.io/recognizer-press/\n *\n * @param {?} element Element to which to assign the new HammerJS gestures.\n * @return {?} Newly-created HammerJS instance.\n */\n GestureConfig.prototype.buildHammer = function (element) {\n var /** @type {?} */ mc = new this._hammer(element);\n // Default Hammer Recognizers.\n var /** @type {?} */ pan = new this._hammer.Pan();\n var /** @type {?} */ swipe = new this._hammer.Swipe();\n var /** @type {?} */ press = new this._hammer.Press();\n // Notice that a HammerJS recognizer can only depend on one other recognizer once.\n // Otherwise the previous `recognizeWith` will be dropped.\n // TODO: Confirm threshold numbers with Material Design UX Team\n var /** @type {?} */ slide = this._createRecognizer(pan, { event: 'slide', threshold: 0 }, swipe);\n var /** @type {?} */ longpress = this._createRecognizer(press, { event: 'longpress', time: 500 });\n // Overwrite the default `pan` event to use the swipe event.\n pan.recognizeWith(swipe);\n // Add customized gestures to Hammer manager\n mc.add([swipe, press, pan, slide, longpress]);\n return (mc);\n };\n /**\n * Creates a new recognizer, without affecting the default recognizers of HammerJS\n * @param {?} base\n * @param {?} options\n * @param {...?} inheritances\n * @return {?}\n */\n GestureConfig.prototype._createRecognizer = function (base, options) {\n var inheritances = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n inheritances[_i - 2] = arguments[_i];\n }\n var /** @type {?} */ recognizer = new ((base.constructor))(options);\n inheritances.push(base);\n inheritances.forEach(function (item) { return recognizer.recognizeWith(item); });\n return recognizer;\n };\n GestureConfig.decorators = [\n { type: Injectable },\n ];\n /**\n * @nocollapse\n */\n GestureConfig.ctorParameters = function () { return []; };\n return GestureConfig;\n}(HammerGestureConfig));\n\n/**\n * Shared directive to count lines inside a text area, such as a list item.\n * Line elements can be extracted with a \\@ContentChildren(MatLine) query, then\n * counted by checking the query list's length.\n */\nvar MatLine = (function () {\n function MatLine() {\n }\n MatLine.decorators = [\n { type: Directive, args: [{\n selector: '[mat-line], [matLine]',\n host: { 'class': 'mat-line' }\n },] },\n ];\n /**\n * @nocollapse\n */\n MatLine.ctorParameters = function () { return []; };\n return MatLine;\n}());\n/**\n * Helper that takes a query list of lines and sets the correct class on the host.\n * \\@docs-private\n */\nvar MatLineSetter = (function () {\n /**\n * @param {?} _lines\n * @param {?} _renderer\n * @param {?} _element\n */\n function MatLineSetter(_lines, _renderer, _element) {\n var _this = this;\n this._lines = _lines;\n this._renderer = _renderer;\n this._element = _element;\n this._setLineClass(this._lines.length);\n this._lines.changes.subscribe(function () {\n _this._setLineClass(_this._lines.length);\n });\n }\n /**\n * @param {?} count\n * @return {?}\n */\n MatLineSetter.prototype._setLineClass = function (count) {\n this._resetClasses();\n if (count === 2 || count === 3) {\n this._setClass(\"mat-\" + count + \"-line\", true);\n }\n else if (count > 3) {\n this._setClass(\"mat-multi-line\", true);\n }\n };\n /**\n * @return {?}\n */\n MatLineSetter.prototype._resetClasses = function () {\n this._setClass('mat-2-line', false);\n this._setClass('mat-3-line', false);\n this._setClass('mat-multi-line', false);\n };\n /**\n * @param {?} className\n * @param {?} isAdd\n * @return {?}\n */\n MatLineSetter.prototype._setClass = function (className, isAdd) {\n if (isAdd) {\n this._renderer.addClass(this._element.nativeElement, className);\n }\n else {\n this._renderer.removeClass(this._element.nativeElement, className);\n }\n };\n return MatLineSetter;\n}());\nvar MatLineModule = (function () {\n function MatLineModule() {\n }\n MatLineModule.decorators = [\n { type: NgModule, args: [{\n imports: [MatCommonModule],\n exports: [MatLine, MatCommonModule],\n declarations: [MatLine],\n },] },\n ];\n /**\n * @nocollapse\n */\n MatLineModule.ctorParameters = function () { return []; };\n return MatLineModule;\n}());\n\nvar RippleState = {};\nRippleState.FADING_IN = 0;\nRippleState.VISIBLE = 1;\nRippleState.FADING_OUT = 2;\nRippleState.HIDDEN = 3;\nRippleState[RippleState.FADING_IN] = \"FADING_IN\";\nRippleState[RippleState.VISIBLE] = \"VISIBLE\";\nRippleState[RippleState.FADING_OUT] = \"FADING_OUT\";\nRippleState[RippleState.HIDDEN] = \"HIDDEN\";\n/**\n * Reference to a previously launched ripple element.\n */\nvar RippleRef = (function () {\n /**\n * @param {?} _renderer\n * @param {?} element\n * @param {?} config\n */\n function RippleRef(_renderer, element, config) {\n this._renderer = _renderer;\n this.element = element;\n this.config = config;\n /**\n * Current state of the ripple reference.\n */\n this.state = RippleState.HIDDEN;\n }\n /**\n * Fades out the ripple element.\n * @return {?}\n */\n RippleRef.prototype.fadeOut = function () {\n this._renderer.fadeOutRipple(this);\n };\n return RippleRef;\n}());\n\n/**\n * Fade-in duration for the ripples. Can be modified with the speedFactor option.\n */\nvar RIPPLE_FADE_IN_DURATION = 450;\n/**\n * Fade-out duration for the ripples in milliseconds. This can't be modified by the speedFactor.\n */\nvar RIPPLE_FADE_OUT_DURATION = 400;\n/**\n * Helper service that performs DOM manipulations. Not intended to be used outside this module.\n * The constructor takes a reference to the ripple directive's host element and a map of DOM\n * event handlers to be installed on the element that triggers ripple animations.\n * This will eventually become a custom renderer once Angular support exists.\n * \\@docs-private\n */\nvar RippleRenderer = (function () {\n /**\n * @param {?} elementRef\n * @param {?} _ngZone\n * @param {?} platform\n */\n function RippleRenderer(elementRef, _ngZone, platform) {\n this._ngZone = _ngZone;\n /**\n * Whether the pointer is currently being held on the trigger or not.\n */\n this._isPointerDown = false;\n /**\n * Events to be registered on the trigger element.\n */\n this._triggerEvents = new Map();\n /**\n * Set of currently active ripple references.\n */\n this._activeRipples = new Set();\n /**\n * Ripple config for all ripples created by events.\n */\n this.rippleConfig = {};\n /**\n * Whether mouse ripples should be created or not.\n */\n this.rippleDisabled = false;\n // Only do anything if we're on the browser.\n if (platform.isBrowser) {\n this._containerElement = elementRef.nativeElement;\n // Specify events which need to be registered on the trigger.\n this._triggerEvents.set('mousedown', this.onMousedown.bind(this));\n this._triggerEvents.set('touchstart', this.onTouchstart.bind(this));\n this._triggerEvents.set('mouseup', this.onPointerUp.bind(this));\n this._triggerEvents.set('touchend', this.onPointerUp.bind(this));\n this._triggerEvents.set('mouseleave', this.onPointerLeave.bind(this));\n // By default use the host element as trigger element.\n this.setTriggerElement(this._containerElement);\n }\n }\n /**\n * Fades in a ripple at the given coordinates.\n * @param {?} x Coordinate within the element, along the X axis at which to start the ripple.\n * @param {?} y\n * @param {?=} config Extra ripple options.\n * @return {?}\n */\n RippleRenderer.prototype.fadeInRipple = function (x, y, config) {\n var _this = this;\n if (config === void 0) { config = {}; }\n var /** @type {?} */ containerRect = this._containerElement.getBoundingClientRect();\n if (config.centered) {\n x = containerRect.left + containerRect.width / 2;\n y = containerRect.top + containerRect.height / 2;\n }\n var /** @type {?} */ radius = config.radius || distanceToFurthestCorner(x, y, containerRect);\n var /** @type {?} */ duration = RIPPLE_FADE_IN_DURATION * (1 / (config.speedFactor || 1));\n var /** @type {?} */ offsetX = x - containerRect.left;\n var /** @type {?} */ offsetY = y - containerRect.top;\n var /** @type {?} */ ripple = document.createElement('div');\n ripple.classList.add('mat-ripple-element');\n ripple.style.left = offsetX - radius + \"px\";\n ripple.style.top = offsetY - radius + \"px\";\n ripple.style.height = radius * 2 + \"px\";\n ripple.style.width = radius * 2 + \"px\";\n // If the color is not set, the default CSS color will be used.\n ripple.style.backgroundColor = config.color || null;\n ripple.style.transitionDuration = duration + \"ms\";\n this._containerElement.appendChild(ripple);\n // By default the browser does not recalculate the styles of dynamically created\n // ripple elements. This is critical because then the `scale` would not animate properly.\n enforceStyleRecalculation(ripple);\n ripple.style.transform = 'scale(1)';\n // Exposed reference to the ripple that will be returned.\n var /** @type {?} */ rippleRef = new RippleRef(this, ripple, config);\n rippleRef.state = RippleState.FADING_IN;\n // Add the ripple reference to the list of all active ripples.\n this._activeRipples.add(rippleRef);\n // Wait for the ripple element to be completely faded in.\n // Once it's faded in, the ripple can be hidden immediately if the mouse is released.\n this.runTimeoutOutsideZone(function () {\n rippleRef.state = RippleState.VISIBLE;\n if (!config.persistent && !_this._isPointerDown) {\n rippleRef.fadeOut();\n }\n }, duration);\n return rippleRef;\n };\n /**\n * Fades out a ripple reference.\n * @param {?} rippleRef\n * @return {?}\n */\n RippleRenderer.prototype.fadeOutRipple = function (rippleRef) {\n // For ripples that are not active anymore, don't re-un the fade-out animation.\n if (!this._activeRipples.delete(rippleRef)) {\n return;\n }\n var /** @type {?} */ rippleEl = rippleRef.element;\n rippleEl.style.transitionDuration = RIPPLE_FADE_OUT_DURATION + \"ms\";\n rippleEl.style.opacity = '0';\n rippleRef.state = RippleState.FADING_OUT;\n // Once the ripple faded out, the ripple can be safely removed from the DOM.\n this.runTimeoutOutsideZone(function () {\n rippleRef.state = RippleState.HIDDEN; /** @type {?} */\n ((rippleEl.parentNode)).removeChild(rippleEl);\n }, RIPPLE_FADE_OUT_DURATION);\n };\n /**\n * Fades out all currently active ripples.\n * @return {?}\n */\n RippleRenderer.prototype.fadeOutAll = function () {\n this._activeRipples.forEach(function (ripple) { return ripple.fadeOut(); });\n };\n /**\n * Sets the trigger element and registers the mouse events.\n * @param {?} element\n * @return {?}\n */\n RippleRenderer.prototype.setTriggerElement = function (element) {\n var _this = this;\n // Remove all previously register event listeners from the trigger element.\n if (this._triggerElement) {\n this._triggerEvents.forEach(function (fn, type) {\n ((_this._triggerElement)).removeEventListener(type, fn);\n });\n }\n if (element) {\n // If the element is not null, register all event listeners on the trigger element.\n this._ngZone.runOutsideAngular(function () {\n _this._triggerEvents.forEach(function (fn, type) { return element.addEventListener(type, fn); });\n });\n }\n this._triggerElement = element;\n };\n /**\n * Function being called whenever the trigger is being pressed.\n * @param {?} event\n * @return {?}\n */\n RippleRenderer.prototype.onMousedown = function (event) {\n if (!this.rippleDisabled) {\n this._isPointerDown = true;\n this.fadeInRipple(event.clientX, event.clientY, this.rippleConfig);\n }\n };\n /**\n * Function being called whenever the pointer is being released.\n * @return {?}\n */\n RippleRenderer.prototype.onPointerUp = function () {\n this._isPointerDown = false;\n // Fade-out all ripples that are completely visible and not persistent.\n this._activeRipples.forEach(function (ripple) {\n if (!ripple.config.persistent && ripple.state === RippleState.VISIBLE) {\n ripple.fadeOut();\n }\n });\n };\n /**\n * Function being called whenever the pointer leaves the trigger.\n * @return {?}\n */\n RippleRenderer.prototype.onPointerLeave = function () {\n if (this._isPointerDown) {\n this.onPointerUp();\n }\n };\n /**\n * Function being called whenever the trigger is being touched.\n * @param {?} event\n * @return {?}\n */\n RippleRenderer.prototype.onTouchstart = function (event) {\n if (!this.rippleDisabled) {\n var _a = event.touches[0], clientX = _a.clientX, clientY = _a.clientY;\n this._isPointerDown = true;\n this.fadeInRipple(clientX, clientY, this.rippleConfig);\n }\n };\n /**\n * Runs a timeout outside of the Angular zone to avoid triggering the change detection.\n * @param {?} fn\n * @param {?=} delay\n * @return {?}\n */\n RippleRenderer.prototype.runTimeoutOutsideZone = function (fn, delay) {\n if (delay === void 0) { delay = 0; }\n this._ngZone.runOutsideAngular(function () { return setTimeout(fn, delay); });\n };\n return RippleRenderer;\n}());\n/**\n * @param {?} element\n * @return {?}\n */\nfunction enforceStyleRecalculation(element) {\n // Enforce a style recalculation by calling `getComputedStyle` and accessing any property.\n // Calling `getPropertyValue` is important to let optimizers know that this is not a noop.\n // See: https://gist.github.com/paulirish/5d52fb081b3570c81e3a\n window.getComputedStyle(element).getPropertyValue('opacity');\n}\n/**\n * Returns the distance from the point (x, y) to the furthest corner of a rectangle.\n * @param {?} x\n * @param {?} y\n * @param {?} rect\n * @return {?}\n */\nfunction distanceToFurthestCorner(x, y, rect) {\n var /** @type {?} */ distX = Math.max(Math.abs(x - rect.left), Math.abs(x - rect.right));\n var /** @type {?} */ distY = Math.max(Math.abs(y - rect.top), Math.abs(y - rect.bottom));\n return Math.sqrt(distX * distX + distY * distY);\n}\n\n/**\n * Injection token that can be used to specify the global ripple options.\n */\nvar MAT_RIPPLE_GLOBAL_OPTIONS = new InjectionToken('mat-ripple-global-options');\nvar MatRipple = (function () {\n /**\n * @param {?} elementRef\n * @param {?} ngZone\n * @param {?} platform\n * @param {?} globalOptions\n */\n function MatRipple(elementRef, ngZone, platform, globalOptions) {\n /**\n * If set, the radius in pixels of foreground ripples when fully expanded. If unset, the radius\n * will be the distance from the center of the ripple to the furthest corner of the host element's\n * bounding rectangle.\n */\n this.radius = 0;\n /**\n * If set, the normal duration of ripple animations is divided by this value. For example,\n * setting it to 0.5 will cause the animations to take twice as long.\n * A changed speedFactor will not modify the fade-out duration of the ripples.\n */\n this.speedFactor = 1;\n this._rippleRenderer = new RippleRenderer(elementRef, ngZone, platform);\n this._globalOptions = globalOptions ? globalOptions : {};\n this._updateRippleRenderer();\n }\n /**\n * @param {?} changes\n * @return {?}\n */\n MatRipple.prototype.ngOnChanges = function (changes) {\n if ((changes['trigger'] || changes['_matRippleTrigger']) && this.trigger) {\n this._rippleRenderer.setTriggerElement(this.trigger);\n }\n this._updateRippleRenderer();\n };\n /**\n * @return {?}\n */\n MatRipple.prototype.ngOnDestroy = function () {\n // Set the trigger element to null to cleanup all listeners.\n this._rippleRenderer.setTriggerElement(null);\n };\n /**\n * Launches a manual ripple at the specified position.\n * @param {?} x\n * @param {?} y\n * @param {?=} config\n * @return {?}\n */\n MatRipple.prototype.launch = function (x, y, config) {\n if (config === void 0) { config = this.rippleConfig; }\n return this._rippleRenderer.fadeInRipple(x, y, config);\n };\n /**\n * Fades out all currently showing ripple elements.\n * @return {?}\n */\n MatRipple.prototype.fadeOutAll = function () {\n this._rippleRenderer.fadeOutAll();\n };\n Object.defineProperty(MatRipple.prototype, \"rippleConfig\", {\n /**\n * Ripple configuration from the directive's input values.\n * @return {?}\n */\n get: function () {\n return {\n centered: this.centered,\n speedFactor: this.speedFactor * (this._globalOptions.baseSpeedFactor || 1),\n radius: this.radius,\n color: this.color\n };\n },\n enumerable: true,\n configurable: true\n });\n /**\n * Updates the ripple renderer with the latest ripple configuration.\n * @return {?}\n */\n MatRipple.prototype._updateRippleRenderer = function () {\n this._rippleRenderer.rippleDisabled = this._globalOptions.disabled || this.disabled;\n this._rippleRenderer.rippleConfig = this.rippleConfig;\n };\n MatRipple.decorators = [\n { type: Directive, args: [{\n selector: '[mat-ripple], [matRipple]',\n exportAs: 'matRipple',\n host: {\n 'class': 'mat-ripple',\n '[class.mat-ripple-unbounded]': 'unbounded'\n }\n },] },\n ];\n /**\n * @nocollapse\n */\n MatRipple.ctorParameters = function () { return [\n { type: ElementRef, },\n { type: NgZone, },\n { type: Platform, },\n { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [MAT_RIPPLE_GLOBAL_OPTIONS,] },] },\n ]; };\n MatRipple.propDecorators = {\n 'trigger': [{ type: Input, args: ['matRippleTrigger',] },],\n 'centered': [{ type: Input, args: ['matRippleCentered',] },],\n 'disabled': [{ type: Input, args: ['matRippleDisabled',] },],\n 'radius': [{ type: Input, args: ['matRippleRadius',] },],\n 'speedFactor': [{ type: Input, args: ['matRippleSpeedFactor',] },],\n 'color': [{ type: Input, args: ['matRippleColor',] },],\n 'unbounded': [{ type: Input, args: ['matRippleUnbounded',] },],\n };\n return MatRipple;\n}());\n\nvar MatRippleModule = (function () {\n function MatRippleModule() {\n }\n MatRippleModule.decorators = [\n { type: NgModule, args: [{\n imports: [MatCommonModule, PlatformModule],\n exports: [MatRipple, MatCommonModule],\n declarations: [MatRipple],\n },] },\n ];\n /**\n * @nocollapse\n */\n MatRippleModule.ctorParameters = function () { return []; };\n return MatRippleModule;\n}());\n\n/**\n * Component that shows a simplified checkbox without including any kind of \"real\" checkbox.\n * Meant to be used when the checkbox is purely decorative and a large number of them will be\n * included, such as for the options in a multi-select. Uses no SVGs or complex animations.\n * Note that theming is meant to be handled by the parent element, e.g.\n * `mat-primary .mat-pseudo-checkbox`.\n *\n * Note that this component will be completely invisible to screen-reader users. This is *not*\n * interchangeable with <mat-checkbox> and should *not* be used if the user would directly interact\n * with the checkbox. The pseudo-checkbox should only be used as an implementation detail of\n * more complex components that appropriately handle selected / checked state.\n * \\@docs-private\n */\nvar MatPseudoCheckbox = (function () {\n function MatPseudoCheckbox() {\n /**\n * Display state of the checkbox.\n */\n this.state = 'unchecked';\n /**\n * Whether the checkbox is disabled.\n */\n this.disabled = false;\n }\n MatPseudoCheckbox.decorators = [\n { type: Component, args: [{encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'mat-pseudo-checkbox',\n styles: [\".mat-pseudo-checkbox{width:20px;height:20px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0,0,.2,.1),background-color 90ms cubic-bezier(0,0,.2,.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:'';border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0,0,.2,.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:9px;left:2px;width:16px;opacity:1}.mat-pseudo-checkbox-checked::after{top:5px;left:3px;width:12px;height:5px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1}\"],\n template: '',\n host: {\n 'class': 'mat-pseudo-checkbox',\n '[class.mat-pseudo-checkbox-indeterminate]': 'state === \"indeterminate\"',\n '[class.mat-pseudo-checkbox-checked]': 'state === \"checked\"',\n '[class.mat-pseudo-checkbox-disabled]': 'disabled',\n },\n },] },\n ];\n /**\n * @nocollapse\n */\n MatPseudoCheckbox.ctorParameters = function () { return []; };\n MatPseudoCheckbox.propDecorators = {\n 'state': [{ type: Input },],\n 'disabled': [{ type: Input },],\n };\n return MatPseudoCheckbox;\n}());\n\nvar MatPseudoCheckboxModule = (function () {\n function MatPseudoCheckboxModule() {\n }\n MatPseudoCheckboxModule.decorators = [\n { type: NgModule, args: [{\n exports: [MatPseudoCheckbox],\n declarations: [MatPseudoCheckbox]\n },] },\n ];\n /**\n * @nocollapse\n */\n MatPseudoCheckboxModule.ctorParameters = function () { return []; };\n return MatPseudoCheckboxModule;\n}());\n\n/**\n * \\@docs-private\n */\nvar MatOptgroupBase = (function () {\n function MatOptgroupBase() {\n }\n return MatOptgroupBase;\n}());\nvar _MatOptgroupMixinBase = mixinDisabled(MatOptgroupBase);\n// Counter for unique group ids.\nvar _uniqueOptgroupIdCounter = 0;\n/**\n * Component that is used to group instances of `mat-option`.\n */\nvar MatOptgroup = (function (_super) {\n __extends(MatOptgroup, _super);\n function MatOptgroup() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n /**\n * Unique id for the underlying label.\n */\n _this._labelId = \"mat-optgroup-label-\" + _uniqueOptgroupIdCounter++;\n return _this;\n }\n MatOptgroup.decorators = [\n { type: Component, args: [{selector: 'mat-optgroup',\n exportAs: 'matOptgroup',\n template: \"<label class=\\\"mat-optgroup-label\\\" [id]=\\\"_labelId\\\">{{ label }}</label><ng-content select=\\\"mat-option\\\"></ng-content>\",\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n inputs: ['disabled'],\n host: {\n 'class': 'mat-optgroup',\n 'role': 'group',\n '[class.mat-optgroup-disabled]': 'disabled',\n '[attr.aria-disabled]': 'disabled.toString()',\n '[attr.aria-labelledby]': '_labelId',\n }\n },] },\n ];\n /**\n * @nocollapse\n */\n MatOptgroup.ctorParameters = function () { return []; };\n MatOptgroup.propDecorators = {\n 'label': [{ type: Input },],\n };\n return MatOptgroup;\n}(_MatOptgroupMixinBase));\n\n/**\n * Option IDs need to be unique across components, so this counter exists outside of\n * the component definition.\n */\nvar _uniqueIdCounter = 0;\n/**\n * Event object emitted by MatOption when selected or deselected.\n */\nvar MatOptionSelectionChange = (function () {\n /**\n * @param {?} source\n * @param {?=} isUserInput\n */\n function MatOptionSelectionChange(source, isUserInput) {\n if (isUserInput === void 0) { isUserInput = false; }\n this.source = source;\n this.isUserInput = isUserInput;\n }\n return MatOptionSelectionChange;\n}());\n/**\n * Single option inside of a `<mat-select>` element.\n */\nvar MatOption = (function () {\n /**\n * @param {?} _element\n * @param {?} _changeDetectorRef\n * @param {?} group\n */\n function MatOption(_element, _changeDetectorRef, group) {\n this._element = _element;\n this._changeDetectorRef = _changeDetectorRef;\n this.group = group;\n this._selected = false;\n this._active = false;\n this._multiple = false;\n this._disableRipple = false;\n /**\n * Whether the option is disabled.\n */\n this._disabled = false;\n this._id = \"mat-option-\" + _uniqueIdCounter++;\n /**\n * Event emitted when the option is selected or deselected.\n */\n this.onSelectionChange = new EventEmitter();\n }\n Object.defineProperty(MatOption.prototype, \"multiple\", {\n /**\n * Whether the wrapping component is in multiple selection mode.\n * @return {?}\n */\n get: function () { return this._multiple; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) {\n if (value !== this._multiple) {\n this._multiple = value;\n this._changeDetectorRef.markForCheck();\n }\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MatOption.prototype, \"id\", {\n /**\n * The unique ID of the option.\n * @return {?}\n */\n get: function () { return this._id; },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MatOption.prototype, \"selected\", {\n /**\n * Whether or not the option is currently selected.\n * @return {?}\n */\n get: function () { return this._selected; },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MatOption.prototype, \"disabled\", {\n /**\n * Whether the option is disabled.\n * @return {?}\n */\n get: function () { return (this.group && this.group.disabled) || this._disabled; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) { this._disabled = coerceBooleanProperty(value); },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MatOption.prototype, \"disableRipple\", {\n /**\n * Whether ripples for the option are disabled.\n * @return {?}\n */\n get: function () { return this._disableRipple; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) {\n this._disableRipple = value;\n this._changeDetectorRef.markForCheck();\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MatOption.prototype, \"active\", {\n /**\n * Whether or not the option is currently active and ready to be selected.\n * An active option displays styles as if it is focused, but the\n * focus is actually retained somewhere else. This comes in handy\n * for components like autocomplete where focus must remain on the input.\n * @return {?}\n */\n get: function () {\n return this._active;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MatOption.prototype, \"viewValue\", {\n /**\n * The displayed value of the option. It is necessary to show the selected option in the\n * select's trigger.\n * @return {?}\n */\n get: function () {\n // TODO(kara): Add input property alternative for node envs.\n return (this._getHostElement().textContent || '').trim();\n },\n enumerable: true,\n configurable: true\n });\n /**\n * Selects the option.\n * @return {?}\n */\n MatOption.prototype.select = function () {\n this._selected = true;\n this._changeDetectorRef.markForCheck();\n this._emitSelectionChangeEvent();\n };\n /**\n * Deselects the option.\n * @return {?}\n */\n MatOption.prototype.deselect = function () {\n this._selected = false;\n this._changeDetectorRef.markForCheck();\n this._emitSelectionChangeEvent();\n };\n /**\n * Sets focus onto this option.\n * @return {?}\n */\n MatOption.prototype.focus = function () {\n var /** @type {?} */ element = this._getHostElement();\n if (typeof element.focus === 'function') {\n element.focus();\n }\n };\n /**\n * This method sets display styles on the option to make it appear\n * active. This is used by the ActiveDescendantKeyManager so key\n * events will display the proper options as active on arrow key events.\n * @return {?}\n */\n MatOption.prototype.setActiveStyles = function () {\n if (!this._active) {\n this._active = true;\n this._changeDetectorRef.markForCheck();\n }\n };\n /**\n * This method removes display styles on the option that made it appear\n * active. This is used by the ActiveDescendantKeyManager so key\n * events will display the proper options as active on arrow key events.\n * @return {?}\n */\n MatOption.prototype.setInactiveStyles = function () {\n if (this._active) {\n this._active = false;\n this._changeDetectorRef.markForCheck();\n }\n };\n /**\n * Gets the label to be used when determining whether the option should be focused.\n * @return {?}\n */\n MatOption.prototype.getLabel = function () {\n return this.viewValue;\n };\n /**\n * Ensures the option is selected when activated from the keyboard.\n * @param {?} event\n * @return {?}\n */\n MatOption.prototype._handleKeydown = function (event) {\n if (event.keyCode === ENTER || event.keyCode === SPACE) {\n this._selectViaInteraction();\n // Prevent the page from scrolling down and form submits.\n event.preventDefault();\n }\n };\n /**\n * Selects the option while indicating the selection came from the user. Used to\n * determine if the select's view -> model callback should be invoked.\n * @return {?}\n */\n MatOption.prototype._selectViaInteraction = function () {\n if (!this.disabled) {\n this._selected = this.multiple ? !this._selected : true;\n this._changeDetectorRef.markForCheck();\n this._emitSelectionChangeEvent(true);\n }\n };\n /**\n * Returns the correct tabindex for the option depending on disabled state.\n * @return {?}\n */\n MatOption.prototype._getTabIndex = function () {\n return this.disabled ? '-1' : '0';\n };\n /**\n * Gets the host DOM element.\n * @return {?}\n */\n MatOption.prototype._getHostElement = function () {\n return this._element.nativeElement;\n };\n /**\n * Emits the selection change event.\n * @param {?=} isUserInput\n * @return {?}\n */\n MatOption.prototype._emitSelectionChangeEvent = function (isUserInput) {\n if (isUserInput === void 0) { isUserInput = false; }\n this.onSelectionChange.emit(new MatOptionSelectionChange(this, isUserInput));\n };\n /**\n * Counts the amount of option group labels that precede the specified option.\n * @param {?} optionIndex Index of the option at which to start counting.\n * @param {?} options Flat list of all of the options.\n * @param {?} optionGroups Flat list of all of the option groups.\n * @return {?}\n */\n MatOption.countGroupLabelsBeforeOption = function (optionIndex, options, optionGroups) {\n if (optionGroups.length) {\n var /** @type {?} */ optionsArray = options.toArray();\n var /** @type {?} */ groups = optionGroups.toArray();\n var /** @type {?} */ groupCounter = 0;\n for (var /** @type {?} */ i = 0; i < optionIndex + 1; i++) {\n if (optionsArray[i].group && optionsArray[i].group === groups[groupCounter]) {\n groupCounter++;\n }\n }\n return groupCounter;\n }\n return 0;\n };\n MatOption.decorators = [\n { type: Component, args: [{selector: 'mat-option',\n exportAs: 'matOption',\n host: {\n 'role': 'option',\n '[attr.tabindex]': '_getTabIndex()',\n '[class.mat-selected]': 'selected',\n '[class.mat-option-multiple]': 'multiple',\n '[class.mat-active]': 'active',\n '[id]': 'id',\n '[attr.aria-selected]': 'selected.toString()',\n '[attr.aria-disabled]': 'disabled.toString()',\n '[class.mat-option-disabled]': 'disabled',\n '(click)': '_selectViaInteraction()',\n '(keydown)': '_handleKeydown($event)',\n 'class': 'mat-option',\n },\n template: \"<span *ngIf=\\\"multiple\\\"><mat-pseudo-checkbox class=\\\"mat-option-pseudo-checkbox\\\" [state]=\\\"selected ? 'checked' : ''\\\" [disabled]=\\\"disabled\\\"></mat-pseudo-checkbox></span><span class=\\\"mat-option-text\\\"><ng-content></ng-content></span><div class=\\\"mat-option-ripple\\\" mat-ripple [matRippleTrigger]=\\\"_getHostElement()\\\" [matRippleDisabled]=\\\"disabled || disableRipple\\\"></div>\",\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n },] },\n ];\n /**\n * @nocollapse\n */\n MatOption.ctorParameters = function () { return [\n { type: ElementRef, },\n { type: ChangeDetectorRef, },\n { type: MatOptgroup, decorators: [{ type: Optional },] },\n ]; };\n MatOption.propDecorators = {\n 'value': [{ type: Input },],\n 'disabled': [{ type: Input },],\n 'onSelectionChange': [{ type: Output },],\n };\n return MatOption;\n}());\n\nvar MatOptionModule = (function () {\n function MatOptionModule() {\n }\n MatOptionModule.decorators = [\n { type: NgModule, args: [{\n imports: [MatRippleModule, CommonModule, MatPseudoCheckboxModule],\n exports: [MatOption, MatOptgroup],\n declarations: [MatOption, MatOptgroup]\n },] },\n ];\n /**\n * @nocollapse\n */\n MatOptionModule.ctorParameters = function () { return []; };\n return MatOptionModule;\n}());\n\n/**\n * InjectionToken that can be used to specify the global placeholder options.\n */\nvar MAT_PLACEHOLDER_GLOBAL_OPTIONS = new InjectionToken('mat-placeholder-global-options');\n\n/**\n * Applies a CSS transform to an element, including browser-prefixed properties.\n * @param {?} element\n * @param {?} transformValue\n * @return {?}\n */\nfunction applyCssTransform(element, transformValue) {\n // It's important to trim the result, because the browser will ignore the set operation\n // if the string contains only whitespace.\n var /** @type {?} */ value = transformValue.trim();\n element.style.transform = value;\n element.style.webkitTransform = value;\n}\n\n/**\n * When constructing a Date, the month is zero-based. This can be confusing, since people are\n * used to seeing them one-based. So we create these aliases to make writing the tests easier.\n */\nvar JAN = 0;\nvar FEB = 1;\nvar MAR = 2;\nvar APR = 3;\nvar MAY = 4;\nvar JUN = 5;\nvar JUL = 6;\nvar AUG = 7;\nvar SEP = 8;\nvar OCT = 9;\nvar NOV = 10;\nvar DEC = 11;\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { AnimationCurves, AnimationDurations, MatCommonModule, MATERIAL_SANITY_CHECKS, mixinDisabled, mixinColor, mixinDisableRipple, mixinTabIndex, MATERIAL_COMPATIBILITY_MODE, MAT_ELEMENTS_SELECTOR, MD_ELEMENTS_SELECTOR, MatPrefixRejector, MdPrefixRejector, CompatibilityModule, NoConflictStyleCompatibilityMode, NativeDateModule, MatNativeDateModule, MAT_DATE_LOCALE, MAT_DATE_LOCALE_PROVIDER, DateAdapter, MAT_DATE_FORMATS, NativeDateAdapter, MAT_NATIVE_DATE_FORMATS, ShowOnDirtyErrorStateMatcher, ErrorStateMatcher, GestureConfig, MatLine, MatLineSetter, MatLineModule, MatOptionModule, MatOptionSelectionChange, MatOption, MatOptgroupBase, _MatOptgroupMixinBase, MatOptgroup, MAT_PLACEHOLDER_GLOBAL_OPTIONS, MatRipple, MAT_RIPPLE_GLOBAL_OPTIONS, RippleRef, RippleState, RIPPLE_FADE_IN_DURATION, RIPPLE_FADE_OUT_DURATION, MatRippleModule, MatPseudoCheckboxModule, MatPseudoCheckbox, applyCssTransform, extendObject, JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC, RippleRenderer as ɵa0 };\n//# sourceMappingURL=core.es5.js.map\n","/**\n * @license\n * Copyright Google Inc. 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 { ChangeDetectionStrategy, Component, Directive, ElementRef, Inject, NgModule, Optional, Renderer2, Self, ViewEncapsulation, forwardRef } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatCommonModule, MatRippleModule, mixinColor, mixinDisableRipple, mixinDisabled } from '@angular/material/core';\nimport { A11yModule, FocusMonitor } from '@angular/cdk/a11y';\nimport { __extends } from 'tslib';\nimport * as tslib_1 from 'tslib';\nimport { Platform } from '@angular/cdk/platform';\n\n/**\n * Default color palette for round buttons (mat-fab and mat-mini-fab)\n */\nvar DEFAULT_ROUND_BUTTON_COLOR = 'accent';\n/**\n * Directive whose purpose is to add the mat- CSS styling to this selector.\n * \\@docs-private\n */\nvar MatButtonCssMatStyler = (function () {\n function MatButtonCssMatStyler() {\n }\n MatButtonCssMatStyler.decorators = [\n { type: Directive, args: [{\n selector: 'button[mat-button], a[mat-button]',\n host: { 'class': 'mat-button' }\n },] },\n ];\n /**\n * @nocollapse\n */\n MatButtonCssMatStyler.ctorParameters = function () { return []; };\n return MatButtonCssMatStyler;\n}());\n/**\n * Directive whose purpose is to add the mat- CSS styling to this selector.\n * \\@docs-private\n */\nvar MatRaisedButtonCssMatStyler = (function () {\n function MatRaisedButtonCssMatStyler() {\n }\n MatRaisedButtonCssMatStyler.decorators = [\n { type: Directive, args: [{\n selector: 'button[mat-raised-button], a[mat-raised-button]',\n host: { 'class': 'mat-raised-button' }\n },] },\n ];\n /**\n * @nocollapse\n */\n MatRaisedButtonCssMatStyler.ctorParameters = function () { return []; };\n return MatRaisedButtonCssMatStyler;\n}());\n/**\n * Directive whose purpose is to add the mat- CSS styling to this selector.\n * \\@docs-private\n */\nvar MatIconButtonCssMatStyler = (function () {\n function MatIconButtonCssMatStyler() {\n }\n MatIconButtonCssMatStyler.decorators = [\n { type: Directive, args: [{\n selector: 'button[mat-icon-button], a[mat-icon-button]',\n host: { 'class': 'mat-icon-button' }\n },] },\n ];\n /**\n * @nocollapse\n */\n MatIconButtonCssMatStyler.ctorParameters = function () { return []; };\n return MatIconButtonCssMatStyler;\n}());\n/**\n * Directive whose purpose is to add the mat- CSS styling to this selector.\n * \\@docs-private\n */\nvar MatFab = (function () {\n /**\n * @param {?} button\n * @param {?} anchor\n */\n function MatFab(button, anchor) {\n // Set the default color palette for the mat-fab components.\n (button || anchor).color = DEFAULT_ROUND_BUTTON_COLOR;\n }\n MatFab.decorators = [\n { type: Directive, args: [{\n selector: 'button[mat-fab], a[mat-fab]',\n host: { 'class': 'mat-fab' }\n },] },\n ];\n /**\n * @nocollapse\n */\n MatFab.ctorParameters = function () { return [\n { type: MatButton, decorators: [{ type: Self }, { type: Optional }, { type: Inject, args: [forwardRef(function () { return MatButton; }),] },] },\n { type: MatAnchor, decorators: [{ type: Self }, { type: Optional }, { type: Inject, args: [forwardRef(function () { return MatAnchor; }),] },] },\n ]; };\n return MatFab;\n}());\n/**\n * Directive that targets mini-fab buttons and anchors. It's used to apply the `mat-` class\n * to all mini-fab buttons and also is responsible for setting the default color palette.\n * \\@docs-private\n */\nvar MatMiniFab = (function () {\n /**\n * @param {?} button\n * @param {?} anchor\n */\n function MatMiniFab(button, anchor) {\n // Set the default color palette for the mat-mini-fab components.\n (button || anchor).color = DEFAULT_ROUND_BUTTON_COLOR;\n }\n MatMiniFab.decorators = [\n { type: Directive, args: [{\n selector: 'button[mat-mini-fab], a[mat-mini-fab]',\n host: { 'class': 'mat-mini-fab' }\n },] },\n ];\n /**\n * @nocollapse\n */\n MatMiniFab.ctorParameters = function () { return [\n { type: MatButton, decorators: [{ type: Self }, { type: Optional }, { type: Inject, args: [forwardRef(function () { return MatButton; }),] },] },\n { type: MatAnchor, decorators: [{ type: Self }, { type: Optional }, { type: Inject, args: [forwardRef(function () { return MatAnchor; }),] },] },\n ]; };\n return MatMiniFab;\n}());\n/**\n * \\@docs-private\n */\nvar MatButtonBase = (function () {\n /**\n * @param {?} _renderer\n * @param {?} _elementRef\n */\n function MatButtonBase(_renderer, _elementRef) {\n this._renderer = _renderer;\n this._elementRef = _elementRef;\n }\n return MatButtonBase;\n}());\nvar _MatButtonMixinBase = mixinColor(mixinDisabled(mixinDisableRipple(MatButtonBase)));\n/**\n * Material design button.\n */\nvar MatButton = (function (_super) {\n __extends(MatButton, _super);\n /**\n * @param {?} renderer\n * @param {?} elementRef\n * @param {?} _platform\n * @param {?} _focusMonitor\n */\n function MatButton(renderer, elementRef, _platform, _focusMonitor) {\n var _this = _super.call(this, renderer, elementRef) || this;\n _this._platform = _platform;\n _this._focusMonitor = _focusMonitor;\n /**\n * Whether the button is round.\n */\n _this._isRoundButton = _this._hasAttributeWithPrefix('fab', 'mini-fab');\n /**\n * Whether the button is icon button.\n */\n _this._isIconButton = _this._hasAttributeWithPrefix('icon-button');\n _this._focusMonitor.monitor(_this._elementRef.nativeElement, _this._renderer, true);\n return _this;\n }\n /**\n * @return {?}\n */\n MatButton.prototype.ngOnDestroy = function () {\n this._focusMonitor.stopMonitoring(this._elementRef.nativeElement);\n };\n /**\n * Focuses the button.\n * @return {?}\n */\n MatButton.prototype.focus = function () {\n this._getHostElement().focus();\n };\n /**\n * @return {?}\n */\n MatButton.prototype._getHostElement = function () {\n return this._elementRef.nativeElement;\n };\n /**\n * @return {?}\n */\n MatButton.prototype._isRippleDisabled = function () {\n return this.disableRipple || this.disabled;\n };\n /**\n * Gets whether the button has one of the given attributes with a 'mat-' prefix.\n * @param {...?} unprefixedAttributeNames\n * @return {?}\n */\n MatButton.prototype._hasAttributeWithPrefix = function () {\n var _this = this;\n var unprefixedAttributeNames = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n unprefixedAttributeNames[_i] = arguments[_i];\n }\n // If not on the browser, say that there are none of the attributes present.\n // Since these only affect how the ripple displays (and ripples only happen on the client),\n // detecting these attributes isn't necessary when not on the browser.\n if (!this._platform.isBrowser) {\n return false;\n }\n return unprefixedAttributeNames.some(function (suffix) {\n return _this._getHostElement().hasAttribute('mat-' + suffix);\n });\n };\n MatButton.decorators = [\n { type: Component, args: [{selector: \"button[mat-button], button[mat-raised-button], button[mat-icon-button],\\n button[mat-fab], button[mat-mini-fab]\",\n exportAs: 'matButton',\n host: {\n '[disabled]': 'disabled || null',\n },\n template: \"<span class=\\\"mat-button-wrapper\\\"><ng-content></ng-content></span><div matRipple class=\\\"mat-button-ripple\\\" [class.mat-button-ripple-round]=\\\"_isRoundButton || _isIconButton\\\" [matRippleDisabled]=\\\"_isRippleDisabled()\\\" [matRippleCentered]=\\\"_isIconButton\\\" [matRippleTrigger]=\\\"_getHostElement()\\\"></div><div class=\\\"mat-button-focus-overlay\\\"></div>\",\n styles: [\".mat-button,.mat-fab,.mat-icon-button,.mat-mini-fab,.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:88px;line-height:36px;padding:0 16px;border-radius:2px}[disabled].mat-button,[disabled].mat-fab,[disabled].mat-icon-button,[disabled].mat-mini-fab,[disabled].mat-raised-button{cursor:default}.cdk-keyboard-focused.mat-button .mat-button-focus-overlay,.cdk-keyboard-focused.mat-fab .mat-button-focus-overlay,.cdk-keyboard-focused.mat-icon-button .mat-button-focus-overlay,.cdk-keyboard-focused.mat-mini-fab .mat-button-focus-overlay,.cdk-keyboard-focused.mat-raised-button .mat-button-focus-overlay{opacity:1}.mat-button::-moz-focus-inner,.mat-fab::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-mini-fab::-moz-focus-inner,.mat-raised-button::-moz-focus-inner{border:0}.mat-fab,.mat-mini-fab,.mat-raised-button{transform:translate3d(0,0,0);transition:background .4s cubic-bezier(.25,.8,.25,1),box-shadow 280ms cubic-bezier(.4,0,.2,1)}.mat-fab:not([class*=mat-elevation-z]),.mat-mini-fab:not([class*=mat-elevation-z]),.mat-raised-button: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)}.mat-fab:not([disabled]):active:not([class*=mat-elevation-z]),.mat-mini-fab:not([disabled]):active:not([class*=mat-elevation-z]),.mat-raised-button:not([disabled]):active:not([class*=mat-elevation-z]){box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}[disabled].mat-fab,[disabled].mat-mini-fab,[disabled].mat-raised-button{box-shadow:none}.mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{transition:none;opacity:0}.mat-button:hover .mat-button-focus-overlay{opacity:1}.mat-fab{min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab:not([class*=mat-elevation-z]){box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.mat-fab:not([disabled]):active:not([class*=mat-elevation-z]){box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab:not([class*=mat-elevation-z]){box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.mat-mini-fab:not([disabled]):active:not([class*=mat-elevation-z]){box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button .mat-icon,.mat-icon-button i{line-height:24px}.mat-button,.mat-icon-button,.mat-raised-button{color:currentColor}.mat-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*{vertical-align:middle}.mat-button-focus-overlay,.mat-button-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-button-focus-overlay{background-color:rgba(0,0,0,.12);border-radius:inherit;opacity:0;transition:opacity .2s cubic-bezier(.35,0,.25,1),background-color .2s cubic-bezier(.35,0,.25,1)}@media screen and (-ms-high-contrast:active){.mat-button-focus-overlay{background-color:rgba(255,255,255,.5)}}.mat-button-ripple-round{border-radius:50%;z-index:1}@media screen and (-ms-high-contrast:active){.mat-button,.mat-fab,.mat-icon-button,.mat-mini-fab,.mat-raised-button{outline:solid 1px}}\"],\n inputs: ['disabled', 'disableRipple', 'color'],\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n },] },\n ];\n /**\n * @nocollapse\n */\n MatButton.ctorParameters = function () { return [\n { type: Renderer2, },\n { type: ElementRef, },\n { type: Platform, },\n { type: FocusMonitor, },\n ]; };\n return MatButton;\n}(_MatButtonMixinBase));\n/**\n * Raised Material design button.\n */\nvar MatAnchor = (function (_super) {\n __extends(MatAnchor, _super);\n /**\n * @param {?} platform\n * @param {?} focusMonitor\n * @param {?} elementRef\n * @param {?} renderer\n */\n function MatAnchor(platform, focusMonitor, elementRef, renderer) {\n return _super.call(this, renderer, elementRef, platform, focusMonitor) || this;\n }\n /**\n * @param {?} event\n * @return {?}\n */\n MatAnchor.prototype._haltDisabledEvents = function (event) {\n // A disabled button shouldn't apply any actions\n if (this.disabled) {\n event.preventDefault();\n event.stopImmediatePropagation();\n }\n };\n MatAnchor.decorators = [\n { type: Component, args: [{selector: \"a[mat-button], a[mat-raised-button], a[mat-icon-button], a[mat-fab], a[mat-mini-fab]\",\n exportAs: 'matButton, matAnchor',\n host: {\n '[attr.tabindex]': 'disabled ? -1 : 0',\n '[attr.disabled]': 'disabled || null',\n '[attr.aria-disabled]': 'disabled.toString()',\n '(click)': '_haltDisabledEvents($event)',\n },\n inputs: ['disabled', 'disableRipple', 'color'],\n template: \"<span class=\\\"mat-button-wrapper\\\"><ng-content></ng-content></span><div matRipple class=\\\"mat-button-ripple\\\" [class.mat-button-ripple-round]=\\\"_isRoundButton || _isIconButton\\\" [matRippleDisabled]=\\\"_isRippleDisabled()\\\" [matRippleCentered]=\\\"_isIconButton\\\" [matRippleTrigger]=\\\"_getHostElement()\\\"></div><div class=\\\"mat-button-focus-overlay\\\"></div>\",\n styles: [\".mat-button,.mat-fab,.mat-icon-button,.mat-mini-fab,.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:88px;line-height:36px;padding:0 16px;border-radius:2px}[disabled].mat-button,[disabled].mat-fab,[disabled].mat-icon-button,[disabled].mat-mini-fab,[disabled].mat-raised-button{cursor:default}.cdk-keyboard-focused.mat-button .mat-button-focus-overlay,.cdk-keyboard-focused.mat-fab .mat-button-focus-overlay,.cdk-keyboard-focused.mat-icon-button .mat-button-focus-overlay,.cdk-keyboard-focused.mat-mini-fab .mat-button-focus-overlay,.cdk-keyboard-focused.mat-raised-button .mat-button-focus-overlay{opacity:1}.mat-button::-moz-focus-inner,.mat-fab::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-mini-fab::-moz-focus-inner,.mat-raised-button::-moz-focus-inner{border:0}.mat-fab,.mat-mini-fab,.mat-raised-button{transform:translate3d(0,0,0);transition:background .4s cubic-bezier(.25,.8,.25,1),box-shadow 280ms cubic-bezier(.4,0,.2,1)}.mat-fab:not([class*=mat-elevation-z]),.mat-mini-fab:not([class*=mat-elevation-z]),.mat-raised-button: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)}.mat-fab:not([disabled]):active:not([class*=mat-elevation-z]),.mat-mini-fab:not([disabled]):active:not([class*=mat-elevation-z]),.mat-raised-button:not([disabled]):active:not([class*=mat-elevation-z]){box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}[disabled].mat-fab,[disabled].mat-mini-fab,[disabled].mat-raised-button{box-shadow:none}.mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{transition:none;opacity:0}.mat-button:hover .mat-button-focus-overlay{opacity:1}.mat-fab{min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab:not([class*=mat-elevation-z]){box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.mat-fab:not([disabled]):active:not([class*=mat-elevation-z]){box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab:not([class*=mat-elevation-z]){box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.mat-mini-fab:not([disabled]):active:not([class*=mat-elevation-z]){box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button .mat-icon,.mat-icon-button i{line-height:24px}.mat-button,.mat-icon-button,.mat-raised-button{color:currentColor}.mat-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*{vertical-align:middle}.mat-button-focus-overlay,.mat-button-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-button-focus-overlay{background-color:rgba(0,0,0,.12);border-radius:inherit;opacity:0;transition:opacity .2s cubic-bezier(.35,0,.25,1),background-color .2s cubic-bezier(.35,0,.25,1)}@media screen and (-ms-high-contrast:active){.mat-button-focus-overlay{background-color:rgba(255,255,255,.5)}}.mat-button-ripple-round{border-radius:50%;z-index:1}@media screen and (-ms-high-contrast:active){.mat-button,.mat-fab,.mat-icon-button,.mat-mini-fab,.mat-raised-button{outline:solid 1px}}\"],\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n },] },\n ];\n /**\n * @nocollapse\n */\n MatAnchor.ctorParameters = function () { return [\n { type: Platform, },\n { type: FocusMonitor, },\n { type: ElementRef, },\n { type: Renderer2, },\n ]; };\n return MatAnchor;\n}(MatButton));\n\nvar MatButtonModule = (function () {\n function MatButtonModule() {\n }\n MatButtonModule.decorators = [\n { type: NgModule, args: [{\n imports: [\n CommonModule,\n MatRippleModule,\n MatCommonModule,\n A11yModule,\n ],\n exports: [\n MatButton,\n MatAnchor,\n MatMiniFab,\n MatFab,\n MatCommonModule,\n MatButtonCssMatStyler,\n MatRaisedButtonCssMatStyler,\n MatIconButtonCssMatStyler,\n ],\n declarations: [\n MatButton,\n MatAnchor,\n MatMiniFab,\n MatFab,\n MatButtonCssMatStyler,\n MatRaisedButtonCssMatStyler,\n MatIconButtonCssMatStyler,\n ],\n },] },\n ];\n /**\n * @nocollapse\n */\n MatButtonModule.ctorParameters = function () { return []; };\n return MatButtonModule;\n}());\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { MatButtonModule, MatButtonCssMatStyler, MatRaisedButtonCssMatStyler, MatIconButtonCssMatStyler, MatFab, MatMiniFab, MatButtonBase, _MatButtonMixinBase, MatButton, MatAnchor };\n//# sourceMappingURL=button.es5.js.map\n","/**\n * @license\n * Copyright Google Inc. 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 { Attribute, ChangeDetectionStrategy, Component, ElementRef, Injectable, Input, NgModule, Optional, Renderer2, SecurityContext, SkipSelf, ViewEncapsulation } from '@angular/core';\nimport { MatCommonModule, mixinColor } from '@angular/material/core';\nimport { __extends } from 'tslib';\nimport * as tslib_1 from 'tslib';\nimport { RxChain, catchOperator, doOperator, finallyOperator, first, map, share } from '@angular/cdk/rxjs';\nimport { Http } from '@angular/http';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Observable } from 'rxjs/Observable';\nimport { forkJoin } from 'rxjs/observable/forkJoin';\nimport { of } from 'rxjs/observable/of';\nimport { _throw } from 'rxjs/observable/throw';\n\n/**\n * Returns an exception to be thrown in the case when attempting to\n * load an icon with a name that cannot be found.\n * \\@docs-private\n * @param {?} iconName\n * @return {?}\n */\nfunction getMatIconNameNotFoundError(iconName) {\n return Error(\"Unable to find icon with the name \\\"\" + iconName + \"\\\"\");\n}\n/**\n * Returns an exception to be thrown when the consumer attempts to use\n * `<mat-icon>` without including \\@angular/http.\n * \\@docs-private\n * @return {?}\n */\nfunction getMatIconNoHttpProviderError() {\n return Error('Could not find Http provider for use with Angular Material icons. ' +\n 'Please include the HttpModule from @angular/http in your app imports.');\n}\n/**\n * Returns an exception to be thrown when a URL couldn't be sanitized.\n * \\@docs-private\n * @param {?} url URL that was attempted to be sanitized.\n * @return {?}\n */\nfunction getMatIconFailedToSanitizeError(url) {\n return Error(\"The URL provided to MatIconRegistry was not trusted as a resource URL \" +\n (\"via Angular's DomSanitizer. Attempted URL was \\\"\" + url + \"\\\".\"));\n}\n/**\n * Configuration for an icon, including the URL and possibly the cached SVG element.\n * \\@docs-private\n */\nvar SvgIconConfig = (function () {\n /**\n * @param {?} url\n */\n function SvgIconConfig(url) {\n this.url = url;\n this.svgElement = null;\n }\n return SvgIconConfig;\n}());\n/**\n * Service to register and display icons used by the <mat-icon> component.\n * - Registers icon URLs by namespace and name.\n * - Registers icon set URLs by namespace.\n * - Registers aliases for CSS classes, for use with icon fonts.\n * - Loads icons from URLs and extracts individual icons from icon sets.\n */\nvar MatIconRegistry = (function () {\n /**\n * @param {?} _http\n * @param {?} _sanitizer\n */\n function MatIconRegistry(_http, _sanitizer) {\n this._http = _http;\n this._sanitizer = _sanitizer;\n /**\n * URLs and cached SVG elements for individual icons. Keys are of the format \"[namespace]:[icon]\".\n */\n this._svgIconConfigs = new Map();\n /**\n * SvgIconConfig objects and cached SVG elements for icon sets, keyed by namespace.\n * Multiple icon sets can be registered under the same namespace.\n */\n this._iconSetConfigs = new Map();\n /**\n * Cache for icons loaded by direct URLs.\n */\n this._cachedIconsByUrl = new Map();\n /**\n * In-progress icon fetches. Used to coalesce multiple requests to the same URL.\n */\n this._inProgressUrlFetches = new Map();\n /**\n * Map from font identifiers to their CSS class names. Used for icon fonts.\n */\n this._fontCssClassesByAlias = new Map();\n /**\n * The CSS class to apply when an <mat-icon> component has no icon name, url, or font specified.\n * The default 'material-icons' value assumes that the material icon font has been loaded as\n * described at http://google.github.io/material-design-icons/#icon-font-for-the-web\n */\n this._defaultFontSetClass = 'material-icons';\n }\n /**\n * Registers an icon by URL in the default namespace.\n * @param {?} iconName Name under which the icon should be registered.\n * @param {?} url\n * @return {?}\n */\n MatIconRegistry.prototype.addSvgIcon = function (iconName, url) {\n return this.addSvgIconInNamespace('', iconName, url);\n };\n /**\n * Registers an icon by URL in the specified namespace.\n * @param {?} namespace Namespace in which the icon should be registered.\n * @param {?} iconName Name under which the icon should be registered.\n * @param {?} url\n * @return {?}\n */\n MatIconRegistry.prototype.addSvgIconInNamespace = function (namespace, iconName, url) {\n var /** @type {?} */ key = iconKey(namespace, iconName);\n this._svgIconConfigs.set(key, new SvgIconConfig(url));\n return this;\n };\n /**\n * Registers an icon set by URL in the default namespace.\n * @param {?} url\n * @return {?}\n */\n MatIconRegistry.prototype.addSvgIconSet = function (url) {\n return this.addSvgIconSetInNamespace('', url);\n };\n /**\n * Registers an icon set by URL in the specified namespace.\n * @param {?} namespace Namespace in which to register the icon set.\n * @param {?} url\n * @return {?}\n */\n MatIconRegistry.prototype.addSvgIconSetInNamespace = function (namespace, url) {\n var /** @type {?} */ config = new SvgIconConfig(url);\n var /** @type {?} */ configNamespace = this._iconSetConfigs.get(namespace);\n if (configNamespace) {\n configNamespace.push(config);\n }\n else {\n this._iconSetConfigs.set(namespace, [config]);\n }\n return this;\n };\n /**\n * Defines an alias for a CSS class name to be used for icon fonts. Creating an matIcon\n * component with the alias as the fontSet input will cause the class name to be applied\n * to the <mat-icon> element.\n *\n * @param {?} alias Alias for the font.\n * @param {?=} className Class name override to be used instead of the alias.\n * @return {?}\n */\n MatIconRegistry.prototype.registerFontClassAlias = function (alias, className) {\n if (className === void 0) { className = alias; }\n this._fontCssClassesByAlias.set(alias, className);\n return this;\n };\n /**\n * Returns the CSS class name associated with the alias by a previous call to\n * registerFontClassAlias. If no CSS class has been associated, returns the alias unmodified.\n * @param {?} alias\n * @return {?}\n */\n MatIconRegistry.prototype.classNameForFontAlias = function (alias) {\n return this._fontCssClassesByAlias.get(alias) || alias;\n };\n /**\n * Sets the CSS class name to be used for icon fonts when an <mat-icon> component does not\n * have a fontSet input value, and is not loading an icon by name or URL.\n *\n * @param {?} className\n * @return {?}\n */\n MatIconRegistry.prototype.setDefaultFontSetClass = function (className) {\n this._defaultFontSetClass = className;\n return this;\n };\n /**\n * Returns the CSS class name to be used for icon fonts when an <mat-icon> component does not\n * have a fontSet input value, and is not loading an icon by name or URL.\n * @return {?}\n */\n MatIconRegistry.prototype.getDefaultFontSetClass = function () {\n return this._defaultFontSetClass;\n };\n /**\n * Returns an Observable that produces the icon (as an <svg> DOM element) from the given URL.\n * The response from the URL may be cached so this will not always cause an HTTP request, but\n * the produced element will always be a new copy of the originally fetched icon. (That is,\n * it will not contain any modifications made to elements previously returned).\n *\n * @param {?} safeUrl URL from which to fetch the SVG icon.\n * @return {?}\n */\n MatIconRegistry.prototype.getSvgIconFromUrl = function (safeUrl) {\n var _this = this;\n var /** @type {?} */ url = this._sanitizer.sanitize(SecurityContext.RESOURCE_URL, safeUrl);\n if (!url) {\n throw getMatIconFailedToSanitizeError(safeUrl);\n }\n var /** @type {?} */ cachedIcon = this._cachedIconsByUrl.get(url);\n if (cachedIcon) {\n return of(cloneSvg(cachedIcon));\n }\n return RxChain.from(this._loadSvgIconFromConfig(new SvgIconConfig(url)))\n .call(doOperator, function (svg) { return _this._cachedIconsByUrl.set(/** @type {?} */ ((url)), svg); })\n .call(map, function (svg) { return cloneSvg(svg); })\n .result();\n };\n /**\n * Returns an Observable that produces the icon (as an <svg> DOM element) with the given name\n * and namespace. The icon must have been previously registered with addIcon or addIconSet;\n * if not, the Observable will throw an error.\n *\n * @param {?} name Name of the icon to be retrieved.\n * @param {?=} namespace Namespace in which to look for the icon.\n * @return {?}\n */\n MatIconRegistry.prototype.getNamedSvgIcon = function (name, namespace) {\n if (namespace === void 0) { namespace = ''; }\n // Return (copy of) cached icon if possible.\n var /** @type {?} */ key = iconKey(namespace, name);\n var /** @type {?} */ config = this._svgIconConfigs.get(key);\n if (config) {\n return this._getSvgFromConfig(config);\n }\n // See if we have any icon sets registered for the namespace.\n var /** @type {?} */ iconSetConfigs = this._iconSetConfigs.get(namespace);\n if (iconSetConfigs) {\n return this._getSvgFromIconSetConfigs(name, iconSetConfigs);\n }\n return _throw(getMatIconNameNotFoundError(key));\n };\n /**\n * Returns the cached icon for a SvgIconConfig if available, or fetches it from its URL if not.\n * @param {?} config\n * @return {?}\n */\n MatIconRegistry.prototype._getSvgFromConfig = function (config) {\n if (config.svgElement) {\n // We already have the SVG element for this icon, return a copy.\n return of(cloneSvg(config.svgElement));\n }\n else {\n // Fetch the icon from the config's URL, cache it, and return a copy.\n return RxChain.from(this._loadSvgIconFromConfig(config))\n .call(doOperator, function (svg) { return config.svgElement = svg; })\n .call(map, function (svg) { return cloneSvg(svg); })\n .result();\n }\n };\n /**\n * Attempts to find an icon with the specified name in any of the SVG icon sets.\n * First searches the available cached icons for a nested element with a matching name, and\n * if found copies the element to a new <svg> element. If not found, fetches all icon sets\n * that have not been cached, and searches again after all fetches are completed.\n * The returned Observable produces the SVG element if possible, and throws\n * an error if no icon with the specified name can be found.\n * @param {?} name\n * @param {?} iconSetConfigs\n * @return {?}\n */\n MatIconRegistry.prototype._getSvgFromIconSetConfigs = function (name, iconSetConfigs) {\n var _this = this;\n // For all the icon set SVG elements we've fetched, see if any contain an icon with the\n // requested name.\n var /** @type {?} */ namedIcon = this._extractIconWithNameFromAnySet(name, iconSetConfigs);\n if (namedIcon) {\n // We could cache namedIcon in _svgIconConfigs, but since we have to make a copy every\n // time anyway, there's probably not much advantage compared to just always extracting\n // it from the icon set.\n return of(namedIcon);\n }\n // Not found in any cached icon sets. If there are icon sets with URLs that we haven't\n // fetched, fetch them now and look for iconName in the results.\n var /** @type {?} */ iconSetFetchRequests = iconSetConfigs\n .filter(function (iconSetConfig) { return !iconSetConfig.svgElement; })\n .map(function (iconSetConfig) {\n return RxChain.from(_this._loadSvgIconSetFromConfig(iconSetConfig))\n .call(catchOperator, function (err) {\n var /** @type {?} */ url = _this._sanitizer.sanitize(SecurityContext.RESOURCE_URL, iconSetConfig.url);\n // Swallow errors fetching individual URLs so the combined Observable won't\n // necessarily fail.\n console.log(\"Loading icon set URL: \" + url + \" failed: \" + err);\n return of(null);\n })\n .call(doOperator, function (svg) {\n // Cache the SVG element.\n if (svg) {\n iconSetConfig.svgElement = svg;\n }\n })\n .result();\n });\n // Fetch all the icon set URLs. When the requests complete, every IconSet should have a\n // cached SVG element (unless the request failed), and we can check again for the icon.\n return map.call(forkJoin.call(Observable, iconSetFetchRequests), function () {\n var /** @type {?} */ foundIcon = _this._extractIconWithNameFromAnySet(name, iconSetConfigs);\n if (!foundIcon) {\n throw getMatIconNameNotFoundError(name);\n }\n return foundIcon;\n });\n };\n /**\n * Searches the cached SVG elements for the given icon sets for a nested icon element whose \"id\"\n * tag matches the specified name. If found, copies the nested element to a new SVG element and\n * returns it. Returns null if no matching element is found.\n * @param {?} iconName\n * @param {?} iconSetConfigs\n * @return {?}\n */\n MatIconRegistry.prototype._extractIconWithNameFromAnySet = function (iconName, iconSetConfigs) {\n // Iterate backwards, so icon sets added later have precedence.\n for (var /** @type {?} */ i = iconSetConfigs.length - 1; i >= 0; i--) {\n var /** @type {?} */ config = iconSetConfigs[i];\n if (config.svgElement) {\n var /** @type {?} */ foundIcon = this._extractSvgIconFromSet(config.svgElement, iconName);\n if (foundIcon) {\n return foundIcon;\n }\n }\n }\n return null;\n };\n /**\n * Loads the content of the icon URL specified in the SvgIconConfig and creates an SVG element\n * from it.\n * @param {?} config\n * @return {?}\n */\n MatIconRegistry.prototype._loadSvgIconFromConfig = function (config) {\n var _this = this;\n return map.call(this._fetchUrl(config.url), function (svgText) { return _this._createSvgElementForSingleIcon(svgText); });\n };\n /**\n * Loads the content of the icon set URL specified in the SvgIconConfig and creates an SVG element\n * from it.\n * @param {?} config\n * @return {?}\n */\n MatIconRegistry.prototype._loadSvgIconSetFromConfig = function (config) {\n var _this = this;\n // TODO: Document that icons should only be loaded from trusted sources.\n return map.call(this._fetchUrl(config.url), function (svgText) { return _this._svgElementFromString(svgText); });\n };\n /**\n * Creates a DOM element from the given SVG string, and adds default attributes.\n * @param {?} responseText\n * @return {?}\n */\n MatIconRegistry.prototype._createSvgElementForSingleIcon = function (responseText) {\n var /** @type {?} */ svg = this._svgElementFromString(responseText);\n this._setSvgAttributes(svg);\n return svg;\n };\n /**\n * Searches the cached element of the given SvgIconConfig for a nested icon element whose \"id\"\n * tag matches the specified name. If found, copies the nested element to a new SVG element and\n * returns it. Returns null if no matching element is found.\n * @param {?} iconSet\n * @param {?} iconName\n * @return {?}\n */\n MatIconRegistry.prototype._extractSvgIconFromSet = function (iconSet, iconName) {\n var /** @type {?} */ iconNode = iconSet.querySelector('#' + iconName);\n if (!iconNode) {\n return null;\n }\n // If the icon node is itself an <svg> node, clone and return it directly. If not, set it as\n // the content of a new <svg> node.\n if (iconNode.tagName.toLowerCase() === 'svg') {\n return this._setSvgAttributes(/** @type {?} */ (iconNode.cloneNode(true)));\n }\n // If the node is a <symbol>, it won't be rendered so we have to convert it into <svg>. Note\n // that the same could be achieved by referring to it via <use href=\"#id\">, however the <use>\n // tag is problematic on Firefox, because it needs to include the current page path.\n if (iconNode.nodeName.toLowerCase() === 'symbol') {\n return this._setSvgAttributes(this._toSvgElement(iconNode));\n }\n // createElement('SVG') doesn't work as expected; the DOM ends up with\n // the correct nodes, but the SVG content doesn't render. Instead we\n // have to create an empty SVG node using innerHTML and append its content.\n // Elements created using DOMParser.parseFromString have the same problem.\n // http://stackoverflow.com/questions/23003278/svg-innerhtml-in-firefox-can-not-display\n var /** @type {?} */ svg = this._svgElementFromString('<svg></svg>');\n // Clone the node so we don't remove it from the parent icon set element.\n svg.appendChild(iconNode.cloneNode(true));\n return this._setSvgAttributes(svg);\n };\n /**\n * Creates a DOM element from the given SVG string.\n * @param {?} str\n * @return {?}\n */\n MatIconRegistry.prototype._svgElementFromString = function (str) {\n // TODO: Is there a better way than innerHTML? Renderer doesn't appear to have a method for\n // creating an element from an HTML string.\n var /** @type {?} */ div = document.createElement('DIV');\n div.innerHTML = str;\n var /** @type {?} */ svg = (div.querySelector('svg'));\n if (!svg) {\n throw Error('<svg> tag not found');\n }\n return svg;\n };\n /**\n * Converts an element into an SVG node by cloning all of its children.\n * @param {?} element\n * @return {?}\n */\n MatIconRegistry.prototype._toSvgElement = function (element) {\n var /** @type {?} */ svg = this._svgElementFromString('<svg></svg>');\n for (var /** @type {?} */ i = 0; i < element.childNodes.length; i++) {\n if (element.childNodes[i].nodeType === Node.ELEMENT_NODE) {\n svg.appendChild(element.childNodes[i].cloneNode(true));\n }\n }\n return svg;\n };\n /**\n * Sets the default attributes for an SVG element to be used as an icon.\n * @param {?} svg\n * @return {?}\n */\n MatIconRegistry.prototype._setSvgAttributes = function (svg) {\n if (!svg.getAttribute('xmlns')) {\n svg.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n }\n svg.setAttribute('fit', '');\n svg.setAttribute('height', '100%');\n svg.setAttribute('width', '100%');\n svg.setAttribute('preserveAspectRatio', 'xMidYMid meet');\n svg.setAttribute('focusable', 'false'); // Disable IE11 default behavior to make SVGs focusable.\n return svg;\n };\n /**\n * Returns an Observable which produces the string contents of the given URL. Results may be\n * cached, so future calls with the same URL may not cause another HTTP request.\n * @param {?} safeUrl\n * @return {?}\n */\n MatIconRegistry.prototype._fetchUrl = function (safeUrl) {\n var _this = this;\n if (!this._http) {\n throw getMatIconNoHttpProviderError();\n }\n var /** @type {?} */ url = this._sanitizer.sanitize(SecurityContext.RESOURCE_URL, safeUrl);\n if (!url) {\n throw getMatIconFailedToSanitizeError(safeUrl);\n }\n // Store in-progress fetches to avoid sending a duplicate request for a URL when there is\n // already a request in progress for that URL. It's necessary to call share() on the\n // Observable returned by http.get() so that multiple subscribers don't cause multiple XHRs.\n var /** @type {?} */ inProgressFetch = this._inProgressUrlFetches.get(url);\n if (inProgressFetch) {\n return inProgressFetch;\n }\n // TODO(jelbourn): for some reason, the `finally` operator \"loses\" the generic type on the\n // Observable. Figure out why and fix it.\n var /** @type {?} */ req = RxChain.from(this._http.get(url))\n .call(map, function (response) { return response.text(); })\n .call(finallyOperator, function () { return _this._inProgressUrlFetches.delete(url); })\n .call(share)\n .result();\n this._inProgressUrlFetches.set(url, req);\n return req;\n };\n MatIconRegistry.decorators = [\n { type: Injectable },\n ];\n /**\n * @nocollapse\n */\n MatIconRegistry.ctorParameters = function () { return [\n { type: Http, decorators: [{ type: Optional },] },\n { type: DomSanitizer, },\n ]; };\n return MatIconRegistry;\n}());\n/**\n * \\@docs-private\n * @param {?} parentRegistry\n * @param {?} http\n * @param {?} sanitizer\n * @return {?}\n */\nfunction ICON_REGISTRY_PROVIDER_FACTORY(parentRegistry, http, sanitizer) {\n return parentRegistry || new MatIconRegistry(http, sanitizer);\n}\n/**\n * \\@docs-private\n */\nvar ICON_REGISTRY_PROVIDER = {\n // If there is already an MatIconRegistry available, use that. Otherwise, provide a new one.\n provide: MatIconRegistry,\n deps: [[new Optional(), new SkipSelf(), MatIconRegistry], [new Optional(), Http], DomSanitizer],\n useFactory: ICON_REGISTRY_PROVIDER_FACTORY\n};\n/**\n * Clones an SVGElement while preserving type information.\n * @param {?} svg\n * @return {?}\n */\nfunction cloneSvg(svg) {\n return (svg.cloneNode(true));\n}\n/**\n * Returns the cache key to use for an icon namespace and name.\n * @param {?} namespace\n * @param {?} name\n * @return {?}\n */\nfunction iconKey(namespace, name) {\n return namespace + ':' + name;\n}\n\n/**\n * \\@docs-private\n */\nvar MatIconBase = (function () {\n /**\n * @param {?} _renderer\n * @param {?} _elementRef\n */\n function MatIconBase(_renderer, _elementRef) {\n this._renderer = _renderer;\n this._elementRef = _elementRef;\n }\n return MatIconBase;\n}());\nvar _MatIconMixinBase = mixinColor(MatIconBase);\n/**\n * Component to display an icon. It can be used in the following ways:\n *\n * - Specify the svgIcon input to load an SVG icon from a URL previously registered with the\n * addSvgIcon, addSvgIconInNamespace, addSvgIconSet, or addSvgIconSetInNamespace methods of\n * MatIconRegistry. If the svgIcon value contains a colon it is assumed to be in the format\n * \"[namespace]:[name]\", if not the value will be the name of an icon in the default namespace.\n * Examples:\n * <mat-icon svgIcon=\"left-arrow\"></mat-icon>\n * <mat-icon svgIcon=\"animals:cat\"></mat-icon>\n *\n * - Use a font ligature as an icon by putting the ligature text in the content of the <mat-icon>\n * component. By default the Material icons font is used as described at\n * http://google.github.io/material-design-icons/#icon-font-for-the-web. You can specify an\n * alternate font by setting the fontSet input to either the CSS class to apply to use the\n * desired font, or to an alias previously registered with MatIconRegistry.registerFontClassAlias.\n * Examples:\n * <mat-icon>home</mat-icon>\n * <mat-icon fontSet=\"myfont\">sun</mat-icon>\n *\n * - Specify a font glyph to be included via CSS rules by setting the fontSet input to specify the\n * font, and the fontIcon input to specify the icon. Typically the fontIcon will specify a\n * CSS class which causes the glyph to be displayed via a :before selector, as in\n * https://fortawesome.github.io/Font-Awesome/examples/\n * Example:\n * <mat-icon fontSet=\"fa\" fontIcon=\"alarm\"></mat-icon>\n */\nvar MatIcon = (function (_super) {\n __extends(MatIcon, _super);\n /**\n * @param {?} renderer\n * @param {?} elementRef\n * @param {?} _iconRegistry\n * @param {?} ariaHidden\n */\n function MatIcon(renderer, elementRef, _iconRegistry, ariaHidden) {\n var _this = _super.call(this, renderer, elementRef) || this;\n _this._iconRegistry = _iconRegistry;\n // If the user has not explicitly set aria-hidden, mark the icon as hidden, as this is\n // the right thing to do for the majority of icon use-cases.\n if (!ariaHidden) {\n renderer.setAttribute(elementRef.nativeElement, 'aria-hidden', 'true');\n }\n return _this;\n }\n /**\n * Splits an svgIcon binding value into its icon set and icon name components.\n * Returns a 2-element array of [(icon set), (icon name)].\n * The separator for the two fields is ':'. If there is no separator, an empty\n * string is returned for the icon set and the entire value is returned for\n * the icon name. If the argument is falsy, returns an array of two empty strings.\n * Throws an error if the name contains two or more ':' separators.\n * Examples:\n * 'social:cake' -> ['social', 'cake']\n * 'penguin' -> ['', 'penguin']\n * null -> ['', '']\n * 'a:b:c' -> (throws Error)\n * @param {?} iconName\n * @return {?}\n */\n MatIcon.prototype._splitIconName = function (iconName) {\n if (!iconName) {\n return ['', ''];\n }\n var /** @type {?} */ parts = iconName.split(':');\n switch (parts.length) {\n case 1: return ['', parts[0]]; // Use default namespace.\n case 2: return (parts);\n default: throw Error(\"Invalid icon name: \\\"\" + iconName + \"\\\"\");\n }\n };\n /**\n * @param {?} changes\n * @return {?}\n */\n MatIcon.prototype.ngOnChanges = function (changes) {\n var _this = this;\n // Only update the inline SVG icon if the inputs changed, to avoid unnecessary DOM operations.\n if (changes.svgIcon) {\n if (this.svgIcon) {\n var _a = this._splitIconName(this.svgIcon), namespace = _a[0], iconName = _a[1];\n first.call(this._iconRegistry.getNamedSvgIcon(iconName, namespace)).subscribe(function (svg) { return _this._setSvgElement(svg); }, function (err) { return console.log(\"Error retrieving icon: \" + err.message); });\n }\n else {\n this._clearSvgElement();\n }\n }\n if (this._usingFontIcon()) {\n this._updateFontIconClasses();\n }\n };\n /**\n * @return {?}\n */\n MatIcon.prototype.ngOnInit = function () {\n // Update font classes because ngOnChanges won't be called if none of the inputs are present,\n // e.g. <mat-icon>arrow</mat-icon> In this case we need to add a CSS class for the default font.\n if (this._usingFontIcon()) {\n this._updateFontIconClasses();\n }\n };\n /**\n * @return {?}\n */\n MatIcon.prototype._usingFontIcon = function () {\n return !this.svgIcon;\n };\n /**\n * @param {?} svg\n * @return {?}\n */\n MatIcon.prototype._setSvgElement = function (svg) {\n this._clearSvgElement();\n this._renderer.appendChild(this._elementRef.nativeElement, svg);\n };\n /**\n * @return {?}\n */\n MatIcon.prototype._clearSvgElement = function () {\n var /** @type {?} */ layoutElement = this._elementRef.nativeElement;\n var /** @type {?} */ childCount = layoutElement.childNodes.length;\n // Remove existing child nodes and add the new SVG element. Note that we can't\n // use innerHTML, because IE will throw if the element has a data binding.\n for (var /** @type {?} */ i = 0; i < childCount; i++) {\n this._renderer.removeChild(layoutElement, layoutElement.childNodes[i]);\n }\n };\n /**\n * @return {?}\n */\n MatIcon.prototype._updateFontIconClasses = function () {\n if (!this._usingFontIcon()) {\n return;\n }\n var /** @type {?} */ elem = this._elementRef.nativeElement;\n var /** @type {?} */ fontSetClass = this.fontSet ?\n this._iconRegistry.classNameForFontAlias(this.fontSet) :\n this._iconRegistry.getDefaultFontSetClass();\n if (fontSetClass != this._previousFontSetClass) {\n if (this._previousFontSetClass) {\n this._renderer.removeClass(elem, this._previousFontSetClass);\n }\n if (fontSetClass) {\n this._renderer.addClass(elem, fontSetClass);\n }\n this._previousFontSetClass = fontSetClass;\n }\n if (this.fontIcon != this._previousFontIconClass) {\n if (this._previousFontIconClass) {\n this._renderer.removeClass(elem, this._previousFontIconClass);\n }\n if (this.fontIcon) {\n this._renderer.addClass(elem, this.fontIcon);\n }\n this._previousFontIconClass = this.fontIcon;\n }\n };\n MatIcon.decorators = [\n { type: Component, args: [{template: '<ng-content></ng-content>',\n selector: 'mat-icon',\n exportAs: 'matIcon',\n styles: [\".mat-icon{background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px}\"],\n inputs: ['color'],\n host: {\n 'role': 'img',\n 'class': 'mat-icon',\n },\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n },] },\n ];\n /**\n * @nocollapse\n */\n MatIcon.ctorParameters = function () { return [\n { type: Renderer2, },\n { type: ElementRef, },\n { type: MatIconRegistry, },\n { type: undefined, decorators: [{ type: Attribute, args: ['aria-hidden',] },] },\n ]; };\n MatIcon.propDecorators = {\n 'svgIcon': [{ type: Input },],\n 'fontSet': [{ type: Input },],\n 'fontIcon': [{ type: Input },],\n };\n return MatIcon;\n}(_MatIconMixinBase));\n\nvar MatIconModule = (function () {\n function MatIconModule() {\n }\n MatIconModule.decorators = [\n { type: NgModule, args: [{\n imports: [MatCommonModule],\n exports: [MatIcon, MatCommonModule],\n declarations: [MatIcon],\n providers: [ICON_REGISTRY_PROVIDER],\n },] },\n ];\n /**\n * @nocollapse\n */\n MatIconModule.ctorParameters = function () { return []; };\n return MatIconModule;\n}());\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { MatIconModule, MatIconBase, _MatIconMixinBase, MatIcon, getMatIconNameNotFoundError, getMatIconNoHttpProviderError, getMatIconFailedToSanitizeError, MatIconRegistry, ICON_REGISTRY_PROVIDER_FACTORY, ICON_REGISTRY_PROVIDER };\n//# sourceMappingURL=icon.es5.js.map\n","/**\n * @license\n * Copyright Google Inc. 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 { A11yModule, FocusMonitor } from '@angular/cdk/a11y';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CdkStep, CdkStepLabel, CdkStepper, CdkStepperModule, CdkStepperNext, CdkStepperPrevious } from '@angular/cdk/stepper';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ContentChildren, Directive, ElementRef, Inject, Injectable, Input, NgModule, Renderer2, SkipSelf, TemplateRef, ViewChildren, ViewEncapsulation, forwardRef } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ErrorStateMatcher, MatCommonModule, MatRippleModule } from '@angular/material/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';\nimport { __extends } from 'tslib';\nimport * as tslib_1 from 'tslib';\nimport { Subject } from 'rxjs/Subject';\nimport { animate, state, style, transition, trigger } from '@angular/animations';\n\n/**\n * Workaround for https://github.com/angular/angular/issues/17849\n */\nvar _MatStepLabel = CdkStepLabel;\nvar MatStepLabel = (function (_super) {\n __extends(MatStepLabel, _super);\n /**\n * @param {?} template\n */\n function MatStepLabel(template) {\n return _super.call(this, template) || this;\n }\n MatStepLabel.decorators = [\n { type: Directive, args: [{\n selector: '[matStepLabel]',\n },] },\n ];\n /**\n * @nocollapse\n */\n MatStepLabel.ctorParameters = function () { return [\n { type: TemplateRef, },\n ]; };\n return MatStepLabel;\n}(_MatStepLabel));\n\n/**\n * Stepper data that is required for internationalization.\n */\nvar MatStepperIntl = (function () {\n function MatStepperIntl() {\n /**\n * Stream that emits whenever the labels here are changed. Use this to notify\n * components if the labels have changed after initialization.\n */\n this.changes = new Subject();\n /**\n * Label that is rendered below optional steps.\n */\n this.optionalLabel = 'Optional';\n }\n MatStepperIntl.decorators = [\n { type: Injectable },\n ];\n /**\n * @nocollapse\n */\n MatStepperIntl.ctorParameters = function () { return []; };\n return MatStepperIntl;\n}());\n\nvar MatStepHeader = (function () {\n /**\n * @param {?} _intl\n * @param {?} _focusMonitor\n * @param {?} _element\n * @param {?} renderer\n * @param {?} changeDetectorRef\n */\n function MatStepHeader(_intl, _focusMonitor, _element, renderer, changeDetectorRef) {\n this._intl = _intl;\n this._focusMonitor = _focusMonitor;\n this._element = _element;\n _focusMonitor.monitor(_element.nativeElement, renderer, true);\n this._intlSubscription = _intl.changes.subscribe(function () { return changeDetectorRef.markForCheck(); });\n }\n Object.defineProperty(MatStepHeader.prototype, \"index\", {\n /**\n * Index of the given step.\n * @return {?}\n */\n get: function () { return this._index; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) {\n this._index = coerceNumberProperty(value);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MatStepHeader.prototype, \"selected\", {\n /**\n * Whether the given step is selected.\n * @return {?}\n */\n get: function () { return this._selected; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) {\n this._selected = coerceBooleanProperty(value);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MatStepHeader.prototype, \"active\", {\n /**\n * Whether the given step label is active.\n * @return {?}\n */\n get: function () { return this._active; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) {\n this._active = coerceBooleanProperty(value);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MatStepHeader.prototype, \"optional\", {\n /**\n * Whether the given step is optional.\n * @return {?}\n */\n get: function () { return this._optional; },\n /**\n * @param {?} value\n * @return {?}\n */\n set: function (value) {\n this._optional = coerceBooleanProperty(value);\n },\n enumerable: true,\n configurable: true\n });\n /**\n * @return {?}\n */\n MatStepHeader.prototype.ngOnDestroy = function () {\n this._intlSubscription.unsubscribe();\n this._focusMonitor.stopMonitoring(this._element.nativeElement);\n };\n /**\n * Returns string label of given step if it is a text label.\n * @return {?}\n */\n MatStepHeader.prototype._stringLabel = function () {\n return this.label instanceof MatStepLabel ? null : this.label;\n };\n /**\n * Returns MatStepLabel if the label of given step is a template label.\n * @return {?}\n */\n MatStepHeader.prototype._templateLabel = function () {\n return this.label instanceof MatStepLabel ? this.label : null;\n };\n /**\n * Returns the host HTML element.\n * @return {?}\n */\n MatStepHeader.prototype._getHostElement = function () {\n return this._element.nativeElement;\n };\n MatStepHeader.decorators = [\n { type: Component, args: [{selector: 'mat-step-header',\n template: \"<div class=\\\"mat-step-header-ripple\\\" mat-ripple [matRippleTrigger]=\\\"_getHostElement()\\\"></div><div [class.mat-step-icon]=\\\"icon !== 'number' || selected\\\" [class.mat-step-icon-not-touched]=\\\"icon == 'number' && !selected\\\" [ngSwitch]=\\\"icon\\\"><span *ngSwitchCase=\\\"'number'\\\">{{index + 1}}</span><mat-icon *ngSwitchCase=\\\"'edit'\\\">create</mat-icon><mat-icon *ngSwitchCase=\\\"'done'\\\">done</mat-icon></div><div class=\\\"mat-step-label\\\" [class.mat-step-label-active]=\\\"active\\\" [class.mat-step-label-selected]=\\\"selected\\\"><ng-container *ngIf=\\\"_templateLabel()\\\" [ngTemplateOutlet]=\\\"label.template\\\"></ng-container><div class=\\\"mat-step-text-label\\\" *ngIf=\\\"_stringLabel()\\\">{{label}}</div><div class=\\\"mat-step-optional\\\" *ngIf=\\\"optional\\\">{{_intl.optionalLabel}}</div></div>\",\n styles: [\".mat-step-header{overflow:hidden;outline:0;cursor:pointer;position:relative}.mat-step-optional{font-size:12px}.mat-step-icon,.mat-step-icon-not-touched{border-radius:50%;height:24px;width:24px;align-items:center;justify-content:center;display:flex}.mat-step-icon .mat-icon{font-size:16px;height:16px;width:16px}.mat-step-label{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:50px;vertical-align:middle}.mat-step-text-label{text-overflow:ellipsis;overflow:hidden}.mat-step-header-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}\"],\n host: {\n 'class': 'mat-step-header',\n 'role': 'tab',\n },\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n },] },\n ];\n /**\n * @nocollapse\n */\n MatStepHeader.ctorParameters = function () { return [\n { type: MatStepperIntl, },\n { type: FocusMonitor, },\n { type: ElementRef, },\n { type: Renderer2, },\n { type: ChangeDetectorRef, },\n ]; };\n MatStepHeader.propDecorators = {\n 'icon': [{ type: Input },],\n 'label': [{ type: Input },],\n 'index': [{ type: Input },],\n 'selected': [{ type: Input },],\n 'active': [{ type: Input },],\n 'optional': [{ type: Input },],\n };\n return MatStepHeader;\n}());\n\n/**\n * Workaround for https://github.com/angular/angular/issues/17849\n */\nvar _MatStep = CdkStep;\nvar _MatStepper = CdkStepper;\nvar MatStep = (function (_super) {\n __extends(MatStep, _super);\n /**\n * @param {?} stepper\n * @param {?} _errorStateMatcher\n */\n function MatStep(stepper, _errorStateMatcher) {\n var _this = _super.call(this, stepper) || this;\n _this._errorStateMatcher = _errorStateMatcher;\n return _this;\n }\n /**\n * Custom error state matcher that additionally checks for validity of interacted form.\n * @param {?} control\n * @param {?} form\n * @return {?}\n */\n MatStep.prototype.isErrorState = function (control, form) {\n var /** @type {?} */ originalErrorState = this._errorStateMatcher.isErrorState(control, form);\n // Custom error state checks for the validity of form that is not submitted or touched\n // since user can trigger a form change by calling for another step without directly\n // interacting with the current form.\n var /** @type {?} */ customErrorState = !!(control && control.invalid && this.interacted);\n return originalErrorState || customErrorState;\n };\n MatStep.decorators = [\n { type: Component, args: [{selector: 'mat-step',\n template: \"<ng-template><ng-content></ng-content></ng-template>\",\n providers: [{ provide: ErrorStateMatcher, useExisting: MatStep }],\n encapsulation: ViewEncapsulation.None,\n exportAs: 'matStep',\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n },] },\n ];\n /**\n * @nocollapse\n */\n MatStep.ctorParameters = function () { return [\n { type: MatStepper, decorators: [{ type: Inject, args: [forwardRef(function () { return MatStepper; }),] },] },\n { type: ErrorStateMatcher, decorators: [{ type: SkipSelf },] },\n ]; };\n MatStep.propDecorators = {\n 'stepLabel': [{ type: ContentChild, args: [MatStepLabel,] },],\n };\n return MatStep;\n}(_MatStep));\nvar MatStepper = (function (_super) {\n __extends(MatStepper, _super);\n function MatStepper() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MatStepper.decorators = [\n { type: Directive, args: [{\n selector: '[matStepper]'\n },] },\n ];\n /**\n * @nocollapse\n */\n MatStepper.ctorParameters = function () { return []; };\n MatStepper.propDecorators = {\n '_stepHeader': [{ type: ViewChildren, args: [MatStepHeader, { read: ElementRef },] },],\n '_steps': [{ type: ContentChildren, args: [MatStep,] },],\n };\n return MatStepper;\n}(_MatStepper));\nvar MatHorizontalStepper = (function (_super) {\n __extends(MatHorizontalStepper, _super);\n function MatHorizontalStepper() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MatHorizontalStepper.decorators = [\n { type: Component, args: [{selector: 'mat-horizontal-stepper',\n exportAs: 'matHorizontalStepper',\n template: \"<div class=\\\"mat-horizontal-stepper-header-container\\\"><ng-container *ngFor=\\\"let step of _steps; let i = index; let isLast = last\\\"><mat-step-header class=\\\"mat-horizontal-stepper-header\\\" (click)=\\\"step.select()\\\" (keydown)=\\\"_onKeydown($event)\\\" [tabIndex]=\\\"_focusIndex === i ? 0 : -1\\\" [id]=\\\"_getStepLabelId(i)\\\" [attr.aria-controls]=\\\"_getStepContentId(i)\\\" [attr.aria-selected]=\\\"selectedIndex == i\\\" [index]=\\\"i\\\" [icon]=\\\"_getIndicatorType(i)\\\" [label]=\\\"step.stepLabel || step.label\\\" [selected]=\\\"selectedIndex === i\\\" [active]=\\\"step.completed || selectedIndex === i\\\" [optional]=\\\"step.optional\\\"></mat-step-header><div *ngIf=\\\"!isLast\\\" class=\\\"mat-stepper-horizontal-line\\\"></div></ng-container></div><div class=\\\"mat-horizontal-content-container\\\"><div *ngFor=\\\"let step of _steps; let i = index\\\" class=\\\"mat-horizontal-stepper-content\\\" role=\\\"tabpanel\\\" [@stepTransition]=\\\"_getAnimationDirection(i)\\\" [id]=\\\"_getStepContentId(i)\\\" [attr.aria-labelledby]=\\\"_getStepLabelId(i)\\\" [attr.aria-expanded]=\\\"selectedIndex === i\\\"><ng-container [ngTemplateOutlet]=\\\"step.content\\\"></ng-container></div></div>\",\n styles: [\".mat-stepper-horizontal,.mat-stepper-vertical{display:block}.mat-horizontal-stepper-header-container{white-space:nowrap;display:flex;align-items:center}.mat-stepper-horizontal-line{border-top-width:1px;border-top-style:solid;flex:auto;height:0;margin:0 -16px;min-width:32px}.mat-horizontal-stepper-header{display:flex;height:72px;overflow:hidden;align-items:center;padding:0 24px}.mat-horizontal-stepper-header .mat-step-icon,.mat-horizontal-stepper-header .mat-step-icon-not-touched{margin-right:8px;flex:none}[dir=rtl] .mat-horizontal-stepper-header .mat-step-icon,[dir=rtl] .mat-horizontal-stepper-header .mat-step-icon-not-touched{margin-right:0;margin-left:8px}.mat-vertical-stepper-header{display:flex;align-items:center;padding:24px;max-height:24px}.mat-vertical-stepper-header .mat-step-icon,.mat-vertical-stepper-header .mat-step-icon-not-touched{margin-right:12px}[dir=rtl] .mat-vertical-stepper-header .mat-step-icon,[dir=rtl] .mat-vertical-stepper-header .mat-step-icon-not-touched{margin-right:0;margin-left:12px}.mat-horizontal-stepper-content{overflow:hidden}.mat-horizontal-stepper-content[aria-expanded=false]{height:0}.mat-horizontal-content-container{overflow:hidden;padding:0 24px 24px 24px}.mat-vertical-content-container{margin-left:36px;border:0;position:relative}[dir=rtl] .mat-vertical-content-container{margin-left:0;margin-right:36px}.mat-stepper-vertical-line::before{content:'';position:absolute;top:-16px;bottom:-16px;left:0;border-left-width:1px;border-left-style:solid}[dir=rtl] .mat-stepper-vertical-line::before{left:auto;right:0}.mat-vertical-stepper-content{overflow:hidden}.mat-vertical-content{padding:0 24px 24px 24px}.mat-step:last-child .mat-vertical-content-container{border:none}\"],\n inputs: ['selectedIndex'],\n host: {\n 'class': 'mat-stepper-horizontal',\n 'role': 'tablist',\n },\n animations: [\n trigger('stepTransition', [\n state('previous', style({ transform: 'translate3d(-100%, 0, 0)', visibility: 'hidden' })),\n state('current', style({ transform: 'none', visibility: 'visible' })),\n state('next', style({ transform: 'translate3d(100%, 0, 0)', visibility: 'hidden' })),\n transition('* => *', animate('500ms cubic-bezier(0.35, 0, 0.25, 1)'))\n ])\n ],\n providers: [{ provide: MatStepper, useExisting: MatHorizontalStepper }],\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n },] },\n ];\n /**\n * @nocollapse\n */\n MatHorizontalStepper.ctorParameters = function () { return []; };\n return MatHorizontalStepper;\n}(MatStepper));\nvar MatVerticalStepper = (function (_super) {\n __extends(MatVerticalStepper, _super);\n function MatVerticalStepper() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MatVerticalStepper.decorators = [\n { type: Component, args: [{selector: 'mat-vertical-stepper',\n exportAs: 'matVerticalStepper',\n template: \"<div class=\\\"mat-step\\\" *ngFor=\\\"let step of _steps; let i = index; let isLast = last\\\"><mat-step-header class=\\\"mat-vertical-stepper-header\\\" (click)=\\\"step.select()\\\" (keydown)=\\\"_onKeydown($event)\\\" [tabIndex]=\\\"_focusIndex == i ? 0 : -1\\\" [id]=\\\"_getStepLabelId(i)\\\" [attr.aria-controls]=\\\"_getStepContentId(i)\\\" [attr.aria-selected]=\\\"selectedIndex === i\\\" [index]=\\\"i\\\" [icon]=\\\"_getIndicatorType(i)\\\" [label]=\\\"step.stepLabel || step.label\\\" [selected]=\\\"selectedIndex === i\\\" [active]=\\\"step.completed || selectedIndex === i\\\" [optional]=\\\"step.optional\\\"></mat-step-header><div class=\\\"mat-vertical-content-container\\\" [class.mat-stepper-vertical-line]=\\\"!isLast\\\"><div class=\\\"mat-vertical-stepper-content\\\" role=\\\"tabpanel\\\" [@stepTransition]=\\\"_getAnimationDirection(i)\\\" [id]=\\\"_getStepContentId(i)\\\" [attr.aria-labelledby]=\\\"_getStepLabelId(i)\\\" [attr.aria-expanded]=\\\"selectedIndex === i\\\"><div class=\\\"mat-vertical-content\\\"><ng-container [ngTemplateOutlet]=\\\"step.content\\\"></ng-container></div></div></div></div>\",\n styles: [\".mat-stepper-horizontal,.mat-stepper-vertical{display:block}.mat-horizontal-stepper-header-container{white-space:nowrap;display:flex;align-items:center}.mat-stepper-horizontal-line{border-top-width:1px;border-top-style:solid;flex:auto;height:0;margin:0 -16px;min-width:32px}.mat-horizontal-stepper-header{display:flex;height:72px;overflow:hidden;align-items:center;padding:0 24px}.mat-horizontal-stepper-header .mat-step-icon,.mat-horizontal-stepper-header .mat-step-icon-not-touched{margin-right:8px;flex:none}[dir=rtl] .mat-horizontal-stepper-header .mat-step-icon,[dir=rtl] .mat-horizontal-stepper-header .mat-step-icon-not-touched{margin-right:0;margin-left:8px}.mat-vertical-stepper-header{display:flex;align-items:center;padding:24px;max-height:24px}.mat-vertical-stepper-header .mat-step-icon,.mat-vertical-stepper-header .mat-step-icon-not-touched{margin-right:12px}[dir=rtl] .mat-vertical-stepper-header .mat-step-icon,[dir=rtl] .mat-vertical-stepper-header .mat-step-icon-not-touched{margin-right:0;margin-left:12px}.mat-horizontal-stepper-content{overflow:hidden}.mat-horizontal-stepper-content[aria-expanded=false]{height:0}.mat-horizontal-content-container{overflow:hidden;padding:0 24px 24px 24px}.mat-vertical-content-container{margin-left:36px;border:0;position:relative}[dir=rtl] .mat-vertical-content-container{margin-left:0;margin-right:36px}.mat-stepper-vertical-line::before{content:'';position:absolute;top:-16px;bottom:-16px;left:0;border-left-width:1px;border-left-style:solid}[dir=rtl] .mat-stepper-vertical-line::before{left:auto;right:0}.mat-vertical-stepper-content{overflow:hidden}.mat-vertical-content{padding:0 24px 24px 24px}.mat-step:last-child .mat-vertical-content-container{border:none}\"],\n inputs: ['selectedIndex'],\n host: {\n 'class': 'mat-stepper-vertical',\n 'role': 'tablist',\n },\n animations: [\n trigger('stepTransition', [\n state('previous', style({ height: '0px', visibility: 'hidden' })),\n state('next', style({ height: '0px', visibility: 'hidden' })),\n state('current', style({ height: '*', visibility: 'visible' })),\n transition('* <=> current', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)'))\n ])\n ],\n providers: [{ provide: MatStepper, useExisting: MatVerticalStepper }],\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n },] },\n ];\n /**\n * @nocollapse\n */\n MatVerticalStepper.ctorParameters = function () { return []; };\n return MatVerticalStepper;\n}(MatStepper));\n\n/**\n * Workaround for https://github.com/angular/angular/issues/17849\n */\nvar _MatStepperNext = CdkStepperNext;\nvar _MatStepperPrevious = CdkStepperPrevious;\n/**\n * Button that moves to the next step in a stepper workflow.\n */\nvar MatStepperNext = (function (_super) {\n __extends(MatStepperNext, _super);\n function MatStepperNext() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MatStepperNext.decorators = [\n { type: Directive, args: [{\n selector: 'button[matStepperNext]',\n host: { '(click)': '_stepper.next()' },\n providers: [{ provide: CdkStepper, useExisting: MatStepper }]\n },] },\n ];\n /**\n * @nocollapse\n */\n MatStepperNext.ctorParameters = function () { return []; };\n return MatStepperNext;\n}(_MatStepperNext));\n/**\n * Button that moves to the previous step in a stepper workflow.\n */\nvar MatStepperPrevious = (function (_super) {\n __extends(MatStepperPrevious, _super);\n function MatStepperPrevious() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MatStepperPrevious.decorators = [\n { type: Directive, args: [{\n selector: 'button[matStepperPrevious]',\n host: { '(click)': '_stepper.previous()' },\n providers: [{ provide: CdkStepper, useExisting: MatStepper }]\n },] },\n ];\n /**\n * @nocollapse\n */\n MatStepperPrevious.ctorParameters = function () { return []; };\n return MatStepperPrevious;\n}(_MatStepperPrevious));\n\nvar MatStepperModule = (function () {\n function MatStepperModule() {\n }\n MatStepperModule.decorators = [\n { type: NgModule, args: [{\n imports: [\n MatCommonModule,\n CommonModule,\n PortalModule,\n MatButtonModule,\n CdkStepperModule,\n MatIconModule,\n A11yModule,\n MatRippleModule,\n ],\n exports: [\n MatCommonModule,\n MatHorizontalStepper,\n MatVerticalStepper,\n MatStep,\n MatStepLabel,\n MatStepper,\n MatStepperNext,\n MatStepperPrevious,\n MatStepHeader\n ],\n declarations: [MatHorizontalStepper, MatVerticalStepper, MatStep, MatStepLabel, MatStepper,\n MatStepperNext, MatStepperPrevious, MatStepHeader],\n providers: [MatStepperIntl, ErrorStateMatcher],\n },] },\n ];\n /**\n * @nocollapse\n */\n MatStepperModule.ctorParameters = function () { return []; };\n return MatStepperModule;\n}());\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { MatStepperModule, _MatStepLabel, MatStepLabel, _MatStep, _MatStepper, MatStep, MatStepper, MatHorizontalStepper, MatVerticalStepper, _MatStepperNext, _MatStepperPrevious, MatStepperNext, MatStepperPrevious, MatStepHeader, MatStepperIntl };\n//# sourceMappingURL=stepper.es5.js.map\n"],"names":["InjectionToken","Directive","NgModule","isDevMode","BidiModule","Optional","Inject","coerceBooleanProperty","Subject","style","first","Injectable","HammerGestureConfig","ElementRef","NgZone","Platform","Input","PlatformModule","Component","ViewEncapsulation","ChangeDetectionStrategy","EventEmitter","ENTER","SPACE","ChangeDetectorRef","Output","Self","forwardRef","Renderer2","FocusMonitor","CommonModule","A11yModule","SecurityContext","of","RxChain","doOperator","map","_throw","catchOperator","forkJoin","Observable","finallyOperator","share","Http","DomSanitizer","SkipSelf","Attribute","CdkStepLabel","TemplateRef","coerceNumberProperty","CdkStep","CdkStepper","ContentChild","ViewChildren","ContentChildren","trigger","state","transition","animate","CdkStepperNext","CdkStepperPrevious","PortalModule","CdkStepperModule"],"mappings":"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"}