@angular/material 10.0.2 → 10.1.3

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 (521) hide show
  1. package/_theming.scss +14 -9
  2. package/autocomplete/index.metadata.json +1 -1
  3. package/autocomplete/testing/autocomplete-harness.d.ts +2 -0
  4. package/bundles/material-autocomplete-testing.umd.js +327 -248
  5. package/bundles/material-autocomplete-testing.umd.js.map +1 -1
  6. package/bundles/material-autocomplete-testing.umd.min.js +2 -9
  7. package/bundles/material-autocomplete-testing.umd.min.js.map +1 -1
  8. package/bundles/material-autocomplete.umd.js +421 -355
  9. package/bundles/material-autocomplete.umd.js.map +1 -1
  10. package/bundles/material-autocomplete.umd.min.js +2 -24
  11. package/bundles/material-autocomplete.umd.min.js.map +1 -1
  12. package/bundles/material-badge-testing.umd.js +301 -235
  13. package/bundles/material-badge-testing.umd.js.map +1 -1
  14. package/bundles/material-badge-testing.umd.min.js +2 -9
  15. package/bundles/material-badge-testing.umd.min.js.map +1 -1
  16. package/bundles/material-badge.umd.js +344 -278
  17. package/bundles/material-badge.umd.js.map +1 -1
  18. package/bundles/material-badge.umd.min.js +3 -3
  19. package/bundles/material-badge.umd.min.js.map +1 -1
  20. package/bundles/material-bottom-sheet-testing.umd.js +302 -236
  21. package/bundles/material-bottom-sheet-testing.umd.js.map +1 -1
  22. package/bundles/material-bottom-sheet-testing.umd.min.js +2 -9
  23. package/bundles/material-bottom-sheet-testing.umd.min.js.map +1 -1
  24. package/bundles/material-bottom-sheet.umd.js +361 -288
  25. package/bundles/material-bottom-sheet.umd.js.map +1 -1
  26. package/bundles/material-bottom-sheet.umd.min.js +17 -2
  27. package/bundles/material-bottom-sheet.umd.min.js.map +1 -1
  28. package/bundles/material-button-testing.umd.js +321 -244
  29. package/bundles/material-button-testing.umd.js.map +1 -1
  30. package/bundles/material-button-testing.umd.min.js +2 -9
  31. package/bundles/material-button-testing.umd.min.js.map +1 -1
  32. package/bundles/material-button-toggle-testing.umd.js +315 -245
  33. package/bundles/material-button-toggle-testing.umd.js.map +1 -1
  34. package/bundles/material-button-toggle-testing.umd.min.js +3 -17
  35. package/bundles/material-button-toggle-testing.umd.min.js.map +1 -1
  36. package/bundles/material-button-toggle.umd.js +394 -318
  37. package/bundles/material-button-toggle.umd.js.map +1 -1
  38. package/bundles/material-button-toggle.umd.min.js +2 -10
  39. package/bundles/material-button-toggle.umd.min.js.map +1 -1
  40. package/bundles/material-button.umd.js +375 -304
  41. package/bundles/material-button.umd.js.map +1 -1
  42. package/bundles/material-button.umd.min.js +3 -11
  43. package/bundles/material-button.umd.min.js.map +1 -1
  44. package/bundles/material-card-testing.umd.js +399 -0
  45. package/bundles/material-card-testing.umd.js.map +1 -0
  46. package/bundles/material-card-testing.umd.min.js +37 -0
  47. package/bundles/material-card-testing.umd.min.js.map +1 -0
  48. package/bundles/material-card.umd.js +139 -139
  49. package/bundles/material-card.umd.js.map +1 -1
  50. package/bundles/material-card.umd.min.js +2 -2
  51. package/bundles/material-card.umd.min.js.map +1 -1
  52. package/bundles/material-checkbox-testing.umd.js +313 -236
  53. package/bundles/material-checkbox-testing.umd.js.map +1 -1
  54. package/bundles/material-checkbox-testing.umd.min.js +2 -9
  55. package/bundles/material-checkbox-testing.umd.min.js.map +1 -1
  56. package/bundles/material-checkbox.umd.js +370 -311
  57. package/bundles/material-checkbox.umd.js.map +1 -1
  58. package/bundles/material-checkbox.umd.min.js +2 -9
  59. package/bundles/material-checkbox.umd.min.js.map +1 -1
  60. package/bundles/material-chips.umd.js +625 -542
  61. package/bundles/material-chips.umd.js.map +1 -1
  62. package/bundles/material-chips.umd.min.js +19 -4
  63. package/bundles/material-chips.umd.min.js.map +1 -1
  64. package/bundles/material-core-testing.umd.js +304 -245
  65. package/bundles/material-core-testing.umd.js.map +1 -1
  66. package/bundles/material-core-testing.umd.min.js +3 -17
  67. package/bundles/material-core-testing.umd.min.js.map +1 -1
  68. package/bundles/material-core.umd.js +563 -510
  69. package/bundles/material-core.umd.js.map +1 -1
  70. package/bundles/material-core.umd.min.js +37 -12
  71. package/bundles/material-core.umd.min.js.map +1 -1
  72. package/bundles/material-datepicker.umd.js +935 -880
  73. package/bundles/material-datepicker.umd.js.map +1 -1
  74. package/bundles/material-datepicker.umd.min.js +44 -10
  75. package/bundles/material-datepicker.umd.min.js.map +1 -1
  76. package/bundles/material-dialog-testing.umd.js +303 -237
  77. package/bundles/material-dialog-testing.umd.js.map +1 -1
  78. package/bundles/material-dialog-testing.umd.min.js +2 -9
  79. package/bundles/material-dialog-testing.umd.min.js.map +1 -1
  80. package/bundles/material-dialog.umd.js +438 -376
  81. package/bundles/material-dialog.umd.js.map +1 -1
  82. package/bundles/material-dialog.umd.min.js +15 -14
  83. package/bundles/material-dialog.umd.min.js.map +1 -1
  84. package/bundles/material-divider-testing.umd.js +300 -234
  85. package/bundles/material-divider-testing.umd.js.map +1 -1
  86. package/bundles/material-divider-testing.umd.min.js +2 -9
  87. package/bundles/material-divider-testing.umd.min.js.map +1 -1
  88. package/bundles/material-divider.umd.js +28 -28
  89. package/bundles/material-divider.umd.js.map +1 -1
  90. package/bundles/material-divider.umd.min.js +2 -9
  91. package/bundles/material-divider.umd.min.js.map +1 -1
  92. package/bundles/material-expansion-testing.umd.js +314 -246
  93. package/bundles/material-expansion-testing.umd.js.map +1 -1
  94. package/bundles/material-expansion-testing.umd.min.js +2 -10
  95. package/bundles/material-expansion-testing.umd.min.js.map +1 -1
  96. package/bundles/material-expansion.umd.js +459 -400
  97. package/bundles/material-expansion.umd.js.map +1 -1
  98. package/bundles/material-expansion.umd.min.js +11 -3
  99. package/bundles/material-expansion.umd.min.js.map +1 -1
  100. package/bundles/material-form-field-testing-control.umd.js +299 -233
  101. package/bundles/material-form-field-testing-control.umd.js.map +1 -1
  102. package/bundles/material-form-field-testing-control.umd.min.js.map +1 -1
  103. package/bundles/material-form-field-testing.umd.js +301 -235
  104. package/bundles/material-form-field-testing.umd.js.map +1 -1
  105. package/bundles/material-form-field-testing.umd.min.js +3 -10
  106. package/bundles/material-form-field-testing.umd.min.js.map +1 -1
  107. package/bundles/material-form-field.umd.js +493 -406
  108. package/bundles/material-form-field.umd.js.map +1 -1
  109. package/bundles/material-form-field.umd.min.js +36 -5
  110. package/bundles/material-form-field.umd.min.js.map +1 -1
  111. package/bundles/material-grid-list-testing.umd.js +311 -252
  112. package/bundles/material-grid-list-testing.umd.js.map +1 -1
  113. package/bundles/material-grid-list-testing.umd.min.js +2 -17
  114. package/bundles/material-grid-list-testing.umd.min.js.map +1 -1
  115. package/bundles/material-grid-list.umd.js +409 -336
  116. package/bundles/material-grid-list.umd.js.map +1 -1
  117. package/bundles/material-grid-list.umd.min.js +19 -4
  118. package/bundles/material-grid-list.umd.min.js.map +1 -1
  119. package/bundles/material-icon-testing.umd.js +8 -8
  120. package/bundles/material-icon-testing.umd.js.map +1 -1
  121. package/bundles/material-icon-testing.umd.min.js +2 -2
  122. package/bundles/material-icon-testing.umd.min.js.map +1 -1
  123. package/bundles/material-icon.umd.js +349 -283
  124. package/bundles/material-icon.umd.js.map +1 -1
  125. package/bundles/material-icon.umd.min.js +2 -9
  126. package/bundles/material-icon.umd.min.js.map +1 -1
  127. package/bundles/material-input-testing.umd.js +326 -243
  128. package/bundles/material-input-testing.umd.js.map +1 -1
  129. package/bundles/material-input-testing.umd.min.js +2 -9
  130. package/bundles/material-input-testing.umd.min.js.map +1 -1
  131. package/bundles/material-input.umd.js +409 -326
  132. package/bundles/material-input.umd.js.map +1 -1
  133. package/bundles/material-input.umd.min.js +5 -19
  134. package/bundles/material-input.umd.min.js.map +1 -1
  135. package/bundles/material-list-testing.umd.js +366 -303
  136. package/bundles/material-list-testing.umd.js.map +1 -1
  137. package/bundles/material-list-testing.umd.min.js +2 -2
  138. package/bundles/material-list-testing.umd.min.js.map +1 -1
  139. package/bundles/material-list.umd.js +492 -433
  140. package/bundles/material-list.umd.js.map +1 -1
  141. package/bundles/material-list.umd.min.js +2 -10
  142. package/bundles/material-list.umd.min.js.map +1 -1
  143. package/bundles/material-menu-testing.umd.js +327 -239
  144. package/bundles/material-menu-testing.umd.js.map +1 -1
  145. package/bundles/material-menu-testing.umd.min.js +2 -10
  146. package/bundles/material-menu-testing.umd.min.js.map +1 -1
  147. package/bundles/material-menu.umd.js +483 -408
  148. package/bundles/material-menu.umd.js.map +1 -1
  149. package/bundles/material-menu.umd.min.js +5 -4
  150. package/bundles/material-menu.umd.min.js.map +1 -1
  151. package/bundles/material-paginator-testing.umd.js +302 -236
  152. package/bundles/material-paginator-testing.umd.js.map +1 -1
  153. package/bundles/material-paginator-testing.umd.min.js +2 -9
  154. package/bundles/material-paginator-testing.umd.min.js.map +1 -1
  155. package/bundles/material-paginator.umd.js +345 -279
  156. package/bundles/material-paginator.umd.js.map +1 -1
  157. package/bundles/material-paginator.umd.min.js +2 -9
  158. package/bundles/material-paginator.umd.min.js.map +1 -1
  159. package/bundles/material-progress-bar-testing.umd.js +301 -235
  160. package/bundles/material-progress-bar-testing.umd.js.map +1 -1
  161. package/bundles/material-progress-bar-testing.umd.min.js +2 -9
  162. package/bundles/material-progress-bar-testing.umd.min.js.map +1 -1
  163. package/bundles/material-progress-bar.umd.js +339 -266
  164. package/bundles/material-progress-bar.umd.js.map +1 -1
  165. package/bundles/material-progress-bar.umd.min.js +4 -3
  166. package/bundles/material-progress-bar.umd.min.js.map +1 -1
  167. package/bundles/material-progress-spinner-testing.umd.js +301 -235
  168. package/bundles/material-progress-spinner-testing.umd.js.map +1 -1
  169. package/bundles/material-progress-spinner-testing.umd.min.js +2 -9
  170. package/bundles/material-progress-spinner-testing.umd.min.js.map +1 -1
  171. package/bundles/material-progress-spinner.umd.js +411 -364
  172. package/bundles/material-progress-spinner.umd.js.map +1 -1
  173. package/bundles/material-progress-spinner.umd.min.js +2 -10
  174. package/bundles/material-progress-spinner.umd.min.js.map +1 -1
  175. package/bundles/material-radio-testing.umd.js +315 -238
  176. package/bundles/material-radio-testing.umd.js.map +1 -1
  177. package/bundles/material-radio-testing.umd.min.js +2 -10
  178. package/bundles/material-radio-testing.umd.min.js.map +1 -1
  179. package/bundles/material-radio.umd.js +412 -336
  180. package/bundles/material-radio.umd.js.map +1 -1
  181. package/bundles/material-radio.umd.min.js +2 -10
  182. package/bundles/material-radio.umd.min.js.map +1 -1
  183. package/bundles/material-select-testing.umd.js +326 -247
  184. package/bundles/material-select-testing.umd.js.map +1 -1
  185. package/bundles/material-select-testing.umd.min.js +2 -9
  186. package/bundles/material-select-testing.umd.min.js.map +1 -1
  187. package/bundles/material-select.umd.js +424 -348
  188. package/bundles/material-select.umd.js.map +1 -1
  189. package/bundles/material-select.umd.min.js +5 -12
  190. package/bundles/material-select.umd.min.js.map +1 -1
  191. package/bundles/material-sidenav-testing.umd.js +303 -244
  192. package/bundles/material-sidenav-testing.umd.js.map +1 -1
  193. package/bundles/material-sidenav-testing.umd.min.js +2 -16
  194. package/bundles/material-sidenav-testing.umd.min.js.map +1 -1
  195. package/bundles/material-sidenav.umd.js +528 -477
  196. package/bundles/material-sidenav.umd.js.map +1 -1
  197. package/bundles/material-sidenav.umd.min.js +3 -3
  198. package/bundles/material-sidenav.umd.min.js.map +1 -1
  199. package/bundles/material-slide-toggle-testing.umd.js +313 -236
  200. package/bundles/material-slide-toggle-testing.umd.js.map +1 -1
  201. package/bundles/material-slide-toggle-testing.umd.min.js +2 -9
  202. package/bundles/material-slide-toggle-testing.umd.min.js.map +1 -1
  203. package/bundles/material-slide-toggle.umd.js +373 -314
  204. package/bundles/material-slide-toggle.umd.js.map +1 -1
  205. package/bundles/material-slide-toggle.umd.min.js +2 -9
  206. package/bundles/material-slide-toggle.umd.min.js.map +1 -1
  207. package/bundles/material-slider-testing.umd.js +313 -236
  208. package/bundles/material-slider-testing.umd.js.map +1 -1
  209. package/bundles/material-slider-testing.umd.min.js +2 -9
  210. package/bundles/material-slider-testing.umd.min.js.map +1 -1
  211. package/bundles/material-slider.umd.js +476 -439
  212. package/bundles/material-slider.umd.js.map +1 -1
  213. package/bundles/material-slider.umd.min.js +4 -3
  214. package/bundles/material-slider.umd.min.js.map +1 -1
  215. package/bundles/material-snack-bar-testing.umd.js +304 -238
  216. package/bundles/material-snack-bar-testing.umd.js.map +1 -1
  217. package/bundles/material-snack-bar-testing.umd.min.js +2 -9
  218. package/bundles/material-snack-bar-testing.umd.min.js.map +1 -1
  219. package/bundles/material-snack-bar.umd.js +383 -308
  220. package/bundles/material-snack-bar.umd.js.map +1 -1
  221. package/bundles/material-snack-bar.umd.min.js +26 -2
  222. package/bundles/material-snack-bar.umd.min.js.map +1 -1
  223. package/bundles/material-sort-testing.umd.js +312 -253
  224. package/bundles/material-sort-testing.umd.js.map +1 -1
  225. package/bundles/material-sort-testing.umd.min.js +1 -16
  226. package/bundles/material-sort-testing.umd.min.js.map +1 -1
  227. package/bundles/material-sort.umd.js +391 -319
  228. package/bundles/material-sort.umd.js.map +1 -1
  229. package/bundles/material-sort.umd.min.js +4 -19
  230. package/bundles/material-sort.umd.min.js.map +1 -1
  231. package/bundles/material-stepper.umd.js +490 -445
  232. package/bundles/material-stepper.umd.js.map +1 -1
  233. package/bundles/material-stepper.umd.min.js +5 -12
  234. package/bundles/material-stepper.umd.min.js.map +1 -1
  235. package/bundles/material-table-testing.umd.js +317 -265
  236. package/bundles/material-table-testing.umd.js.map +1 -1
  237. package/bundles/material-table-testing.umd.min.js +2 -24
  238. package/bundles/material-table-testing.umd.min.js.map +1 -1
  239. package/bundles/material-table.umd.js +494 -461
  240. package/bundles/material-table.umd.js.map +1 -1
  241. package/bundles/material-table.umd.min.js +3 -10
  242. package/bundles/material-table.umd.min.js.map +1 -1
  243. package/bundles/material-tabs-testing.umd.js +303 -244
  244. package/bundles/material-tabs-testing.umd.js.map +1 -1
  245. package/bundles/material-tabs-testing.umd.min.js +1 -16
  246. package/bundles/material-tabs-testing.umd.min.js.map +1 -1
  247. package/bundles/material-tabs.umd.js +675 -625
  248. package/bundles/material-tabs.umd.js.map +1 -1
  249. package/bundles/material-tabs.umd.min.js +23 -5
  250. package/bundles/material-tabs.umd.min.js.map +1 -1
  251. package/bundles/material-toolbar-testing.umd.js +396 -0
  252. package/bundles/material-toolbar-testing.umd.js.map +1 -0
  253. package/bundles/material-toolbar-testing.umd.min.js +37 -0
  254. package/bundles/material-toolbar-testing.umd.min.js.map +1 -0
  255. package/bundles/material-toolbar.umd.js +337 -271
  256. package/bundles/material-toolbar.umd.js.map +1 -1
  257. package/bundles/material-toolbar.umd.min.js +4 -3
  258. package/bundles/material-toolbar.umd.min.js.map +1 -1
  259. package/bundles/material-tooltip-testing.umd.js +301 -235
  260. package/bundles/material-tooltip-testing.umd.js.map +1 -1
  261. package/bundles/material-tooltip-testing.umd.min.js +2 -9
  262. package/bundles/material-tooltip-testing.umd.min.js.map +1 -1
  263. package/bundles/material-tooltip.umd.js +427 -314
  264. package/bundles/material-tooltip.umd.js.map +1 -1
  265. package/bundles/material-tooltip.umd.min.js +11 -3
  266. package/bundles/material-tooltip.umd.min.js.map +1 -1
  267. package/bundles/material-tree.umd.js +421 -383
  268. package/bundles/material-tree.umd.js.map +1 -1
  269. package/bundles/material-tree.umd.min.js +3 -3
  270. package/bundles/material-tree.umd.min.js.map +1 -1
  271. package/button/_button-base.scss +1 -1
  272. package/button/_button-theme.scss +8 -8
  273. package/button/index.metadata.json +1 -1
  274. package/button/testing/button-harness.d.ts +2 -0
  275. package/button-toggle/button-toggle.d.ts +6 -0
  276. package/button-toggle/index.metadata.json +1 -1
  277. package/button-toggle/testing/button-toggle-harness.d.ts +2 -0
  278. package/card/testing/card-harness-filters.d.ts +17 -0
  279. package/card/testing/card-harness.d.ts +36 -0
  280. package/card/testing/index.d.ts +8 -0
  281. package/card/testing/package.json +9 -0
  282. package/card/testing/public-api.d.ts +9 -0
  283. package/checkbox/checkbox.d.ts +2 -1
  284. package/checkbox/testing/checkbox-harness.d.ts +2 -0
  285. package/chips/chip.d.ts +21 -2
  286. package/chips/index.metadata.json +1 -1
  287. package/core/focus-indicators/_focus-indicators.scss +1 -1
  288. package/core/index.metadata.json +1 -1
  289. package/core/option/optgroup.d.ts +13 -4
  290. package/core/option/option.d.ts +10 -7
  291. package/core/style/_vendor-prefixes.scss +5 -0
  292. package/datepicker/date-range-input-parts.d.ts +3 -1
  293. package/datepicker/date-range-input.d.ts +5 -4
  294. package/datepicker/datepicker-base.d.ts +8 -6
  295. package/datepicker/datepicker-input-base.d.ts +9 -5
  296. package/datepicker/datepicker-input.d.ts +1 -0
  297. package/datepicker/index.metadata.json +1 -1
  298. package/dialog/dialog.d.ts +1 -1
  299. package/dialog/index.metadata.json +1 -1
  300. package/esm2015/autocomplete/autocomplete.js +3 -3
  301. package/esm2015/autocomplete/testing/autocomplete-harness.js +7 -1
  302. package/esm2015/bottom-sheet/bottom-sheet.js +1 -1
  303. package/esm2015/button/button.js +8 -3
  304. package/esm2015/button/testing/button-harness.js +7 -1
  305. package/esm2015/button-toggle/button-toggle.js +12 -3
  306. package/esm2015/button-toggle/testing/button-toggle-harness.js +7 -1
  307. package/esm2015/card/testing/card-harness-filters.js +8 -0
  308. package/esm2015/card/testing/card-harness.js +52 -0
  309. package/esm2015/card/testing/index.js +9 -0
  310. package/esm2015/card/testing/public-api.js +10 -0
  311. package/esm2015/card/testing/testing.externs.js +0 -0
  312. package/esm2015/checkbox/checkbox.js +1 -1
  313. package/esm2015/checkbox/testing/checkbox-harness.js +7 -1
  314. package/esm2015/chips/chip-list.js +3 -3
  315. package/esm2015/chips/chip.js +32 -11
  316. package/esm2015/core/common-behaviors/common-module.js +1 -1
  317. package/esm2015/core/common-behaviors/tabindex.js +3 -2
  318. package/esm2015/core/option/optgroup.js +22 -9
  319. package/esm2015/core/option/option.js +29 -14
  320. package/esm2015/core/version.js +1 -1
  321. package/esm2015/datepicker/date-range-input-parts.js +7 -1
  322. package/esm2015/datepicker/date-range-input.js +14 -11
  323. package/esm2015/datepicker/datepicker-base.js +24 -10
  324. package/esm2015/datepicker/datepicker-input-base.js +16 -8
  325. package/esm2015/datepicker/datepicker-input.js +4 -1
  326. package/esm2015/datepicker/datepicker-toggle.js +5 -5
  327. package/esm2015/dialog/dialog.js +6 -6
  328. package/esm2015/expansion/testing/expansion-harness.js +7 -1
  329. package/esm2015/form-field/error.js +10 -3
  330. package/esm2015/form-field/form-field.js +17 -19
  331. package/esm2015/form-field/hint.js +13 -3
  332. package/esm2015/form-field/prefix.js +9 -2
  333. package/esm2015/form-field/suffix.js +9 -2
  334. package/esm2015/grid-list/grid-list.js +2 -2
  335. package/esm2015/grid-list/tile-styler.js +1 -1
  336. package/esm2015/input/input.js +29 -5
  337. package/esm2015/input/testing/input-harness.js +13 -3
  338. package/esm2015/list/testing/action-list-harness.js +7 -1
  339. package/esm2015/list/testing/nav-list-harness.js +7 -1
  340. package/esm2015/list/testing/selection-list-harness.js +7 -1
  341. package/esm2015/menu/menu-content.js +10 -3
  342. package/esm2015/menu/menu-errors.js +10 -1
  343. package/esm2015/menu/menu-panel.js +1 -1
  344. package/esm2015/menu/menu-trigger.js +8 -4
  345. package/esm2015/menu/menu.js +8 -6
  346. package/esm2015/menu/testing/menu-harness.js +13 -1
  347. package/esm2015/progress-spinner/progress-spinner.js +17 -16
  348. package/esm2015/radio/radio.js +15 -6
  349. package/esm2015/radio/testing/radio-harness.js +7 -1
  350. package/esm2015/select/select.js +21 -12
  351. package/esm2015/select/testing/select-harness.js +7 -1
  352. package/esm2015/sidenav/drawer.js +15 -16
  353. package/esm2015/slide-toggle/slide-toggle.js +1 -1
  354. package/esm2015/slide-toggle/testing/slide-toggle-harness.js +7 -1
  355. package/esm2015/slider/slider.js +25 -22
  356. package/esm2015/slider/testing/slider-harness.js +7 -1
  357. package/esm2015/snack-bar/snack-bar.js +5 -3
  358. package/esm2015/sort/sort-header-intl.js +6 -2
  359. package/esm2015/sort/sort-header.js +18 -8
  360. package/esm2015/sort/testing/sort-header-harness.js +10 -7
  361. package/esm2015/stepper/stepper.js +3 -3
  362. package/esm2015/table/cell.js +12 -26
  363. package/esm2015/table/table.js +7 -4
  364. package/esm2015/tabs/index.js +4 -2
  365. package/esm2015/tabs/tab-content.js +12 -3
  366. package/esm2015/tabs/tab-label.js +9 -2
  367. package/esm2015/tabs/tab-nav-bar/tab-nav-bar.js +1 -1
  368. package/esm2015/tabs/tab.js +6 -5
  369. package/esm2015/toolbar/testing/index.js +9 -0
  370. package/esm2015/toolbar/testing/public-api.js +10 -0
  371. package/esm2015/toolbar/testing/testing.externs.js +0 -0
  372. package/esm2015/toolbar/testing/toolbar-harness-filters.js +8 -0
  373. package/esm2015/toolbar/testing/toolbar-harness.js +47 -0
  374. package/esm2015/tooltip/tooltip.js +56 -21
  375. package/esm2015/tree/data-source/flat-data-source.js +1 -1
  376. package/esm2015/tree/node.js +2 -2
  377. package/expansion/testing/expansion-harness.d.ts +2 -0
  378. package/fesm2015/autocomplete/testing.js +6 -0
  379. package/fesm2015/autocomplete/testing.js.map +1 -1
  380. package/fesm2015/autocomplete.js +2 -2
  381. package/fesm2015/autocomplete.js.map +1 -1
  382. package/fesm2015/button/testing.js +6 -0
  383. package/fesm2015/button/testing.js.map +1 -1
  384. package/fesm2015/button-toggle/testing.js +6 -0
  385. package/fesm2015/button-toggle/testing.js.map +1 -1
  386. package/fesm2015/button-toggle.js +12 -3
  387. package/fesm2015/button-toggle.js.map +1 -1
  388. package/fesm2015/button.js +7 -2
  389. package/fesm2015/button.js.map +1 -1
  390. package/fesm2015/card/testing.js +79 -0
  391. package/fesm2015/card/testing.js.map +1 -0
  392. package/fesm2015/checkbox/testing.js +6 -0
  393. package/fesm2015/checkbox/testing.js.map +1 -1
  394. package/fesm2015/checkbox.js.map +1 -1
  395. package/fesm2015/chips.js +33 -12
  396. package/fesm2015/chips.js.map +1 -1
  397. package/fesm2015/core.js +51 -23
  398. package/fesm2015/core.js.map +1 -1
  399. package/fesm2015/datepicker.js +60 -26
  400. package/fesm2015/datepicker.js.map +1 -1
  401. package/fesm2015/dialog.js +5 -5
  402. package/fesm2015/dialog.js.map +1 -1
  403. package/fesm2015/expansion/testing.js +6 -0
  404. package/fesm2015/expansion/testing.js.map +1 -1
  405. package/fesm2015/form-field.js +47 -18
  406. package/fesm2015/form-field.js.map +1 -1
  407. package/fesm2015/grid-list.js.map +1 -1
  408. package/fesm2015/input/testing.js +12 -2
  409. package/fesm2015/input/testing.js.map +1 -1
  410. package/fesm2015/input.js +28 -4
  411. package/fesm2015/input.js.map +1 -1
  412. package/fesm2015/list/testing.js +18 -0
  413. package/fesm2015/list/testing.js.map +1 -1
  414. package/fesm2015/menu/testing.js +12 -0
  415. package/fesm2015/menu/testing.js.map +1 -1
  416. package/fesm2015/menu.js +29 -7
  417. package/fesm2015/menu.js.map +1 -1
  418. package/fesm2015/progress-spinner.js +16 -15
  419. package/fesm2015/progress-spinner.js.map +1 -1
  420. package/fesm2015/radio/testing.js +6 -0
  421. package/fesm2015/radio/testing.js.map +1 -1
  422. package/fesm2015/radio.js +16 -7
  423. package/fesm2015/radio.js.map +1 -1
  424. package/fesm2015/select/testing.js +6 -0
  425. package/fesm2015/select/testing.js.map +1 -1
  426. package/fesm2015/select.js +21 -12
  427. package/fesm2015/select.js.map +1 -1
  428. package/fesm2015/sidenav.js +15 -16
  429. package/fesm2015/sidenav.js.map +1 -1
  430. package/fesm2015/slide-toggle/testing.js +6 -0
  431. package/fesm2015/slide-toggle/testing.js.map +1 -1
  432. package/fesm2015/slide-toggle.js.map +1 -1
  433. package/fesm2015/slider/testing.js +6 -0
  434. package/fesm2015/slider/testing.js.map +1 -1
  435. package/fesm2015/slider.js +24 -21
  436. package/fesm2015/slider.js.map +1 -1
  437. package/fesm2015/snack-bar.js +4 -2
  438. package/fesm2015/snack-bar.js.map +1 -1
  439. package/fesm2015/sort/testing.js +9 -6
  440. package/fesm2015/sort/testing.js.map +1 -1
  441. package/fesm2015/sort.js +22 -8
  442. package/fesm2015/sort.js.map +1 -1
  443. package/fesm2015/stepper.js +2 -2
  444. package/fesm2015/stepper.js.map +1 -1
  445. package/fesm2015/table.js +17 -28
  446. package/fesm2015/table.js.map +1 -1
  447. package/fesm2015/tabs.js +21 -4
  448. package/fesm2015/tabs.js.map +1 -1
  449. package/fesm2015/toolbar/testing.js +74 -0
  450. package/fesm2015/toolbar/testing.js.map +1 -0
  451. package/fesm2015/tooltip.js +55 -20
  452. package/fesm2015/tooltip.js.map +1 -1
  453. package/fesm2015/tree.js +1 -1
  454. package/fesm2015/tree.js.map +1 -1
  455. package/form-field/error.d.ts +7 -0
  456. package/form-field/form-field.d.ts +2 -3
  457. package/form-field/hint.d.ts +10 -0
  458. package/form-field/index.metadata.json +1 -1
  459. package/form-field/prefix.d.ts +7 -0
  460. package/form-field/suffix.d.ts +7 -0
  461. package/grid-list/grid-list.d.ts +2 -1
  462. package/grid-list/index.metadata.json +1 -1
  463. package/grid-list/tile-styler.d.ts +10 -5
  464. package/input/index.metadata.json +1 -1
  465. package/input/input.d.ts +6 -2
  466. package/input/testing/input-harness.d.ts +2 -0
  467. package/list/testing/action-list-harness.d.ts +2 -0
  468. package/list/testing/nav-list-harness.d.ts +2 -0
  469. package/list/testing/selection-list-harness.d.ts +2 -0
  470. package/menu/index.metadata.json +1 -1
  471. package/menu/menu-content.d.ts +7 -1
  472. package/menu/menu-errors.d.ts +6 -0
  473. package/menu/menu-panel.d.ts +1 -0
  474. package/menu/menu.d.ts +4 -0
  475. package/menu/testing/menu-harness.d.ts +4 -0
  476. package/package.json +2 -2
  477. package/prebuilt-themes/deeppurple-amber.css +1 -1
  478. package/prebuilt-themes/indigo-pink.css +1 -1
  479. package/prebuilt-themes/pink-bluegrey.css +1 -1
  480. package/prebuilt-themes/purple-green.css +1 -1
  481. package/progress-spinner/index.metadata.json +1 -1
  482. package/progress-spinner/progress-spinner.d.ts +5 -5
  483. package/radio/index.metadata.json +1 -1
  484. package/radio/radio.d.ts +8 -1
  485. package/radio/testing/radio-harness.d.ts +2 -0
  486. package/schematics/ng-add/index.js +1 -1
  487. package/schematics/ng-generate/navigation/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +3 -3
  488. package/schematics/ng-generate/navigation/schema.json +5 -0
  489. package/select/index.metadata.json +1 -1
  490. package/select/select.d.ts +7 -0
  491. package/select/testing/select-harness.d.ts +2 -0
  492. package/sidenav/drawer.d.ts +3 -3
  493. package/sidenav/index.metadata.json +1 -1
  494. package/slide-toggle/slide-toggle.d.ts +2 -1
  495. package/slide-toggle/testing/slide-toggle-harness.d.ts +2 -0
  496. package/slider/index.metadata.json +1 -1
  497. package/slider/slider.d.ts +9 -8
  498. package/slider/testing/slider-harness.d.ts +2 -0
  499. package/sort/index.metadata.json +1 -1
  500. package/sort/sort-header-intl.d.ts +5 -1
  501. package/sort/sort-header.d.ts +3 -1
  502. package/sort/testing/sort-header-harness.d.ts +6 -2
  503. package/stepper/index.metadata.json +1 -1
  504. package/table/cell.d.ts +7 -4
  505. package/table/index.metadata.json +1 -1
  506. package/table/table.d.ts +2 -0
  507. package/tabs/index.d.ts +3 -1
  508. package/tabs/index.metadata.json +1 -1
  509. package/tabs/tab-content.d.ts +7 -1
  510. package/tabs/tab-label.d.ts +7 -0
  511. package/tabs/tab-nav-bar/tab-nav-bar.d.ts +2 -1
  512. package/toolbar/testing/index.d.ts +8 -0
  513. package/toolbar/testing/package.json +9 -0
  514. package/toolbar/testing/public-api.d.ts +9 -0
  515. package/toolbar/testing/toolbar-harness-filters.d.ts +13 -0
  516. package/toolbar/testing/toolbar-harness.d.ts +31 -0
  517. package/tooltip/index.metadata.json +1 -1
  518. package/tooltip/tooltip.d.ts +7 -2
  519. package/tree/data-source/flat-data-source.d.ts +4 -4
  520. package/tree/index.metadata.json +1 -1
  521. package/tree/node.d.ts +2 -1
@@ -4,232 +4,305 @@
4
4
  (global = global || self, factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.menu = {}), global.ng.cdk.a11y, global.ng.cdk.coercion, global.ng.cdk.keycodes, global.ng.core, global.rxjs, global.rxjs.operators, global.ng.animations, global.ng.cdk.portal, global.ng.common, global.ng.material.core, global.ng.cdk.bidi, global.ng.cdk.overlay, global.ng.cdk.platform, global.ng.cdk.scrolling));
5
5
  }(this, (function (exports, a11y, coercion, keycodes, core, rxjs, operators, animations, portal, common, core$1, bidi, overlay, platform, scrolling) { 'use strict';
6
6
 
7
- /*! *****************************************************************************
8
- Copyright (c) Microsoft Corporation.
9
-
10
- Permission to use, copy, modify, and/or distribute this software for any
11
- purpose with or without fee is hereby granted.
12
-
13
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
14
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
15
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
17
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
18
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19
- PERFORMANCE OF THIS SOFTWARE.
20
- ***************************************************************************** */
21
- /* global Reflect, Promise */
22
-
23
- var extendStatics = function(d, b) {
24
- extendStatics = Object.setPrototypeOf ||
25
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
26
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
27
- return extendStatics(d, b);
28
- };
29
-
30
- function __extends(d, b) {
31
- extendStatics(d, b);
32
- function __() { this.constructor = d; }
33
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
34
- }
35
-
36
- var __assign = function() {
37
- __assign = Object.assign || function __assign(t) {
38
- for (var s, i = 1, n = arguments.length; i < n; i++) {
39
- s = arguments[i];
40
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
41
- }
42
- return t;
43
- };
44
- return __assign.apply(this, arguments);
45
- };
46
-
47
- function __rest(s, e) {
48
- var t = {};
49
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
50
- t[p] = s[p];
51
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
52
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
53
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
54
- t[p[i]] = s[p[i]];
55
- }
56
- return t;
57
- }
58
-
59
- function __decorate(decorators, target, key, desc) {
60
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
61
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
62
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
63
- return c > 3 && r && Object.defineProperty(target, key, r), r;
64
- }
65
-
66
- function __param(paramIndex, decorator) {
67
- return function (target, key) { decorator(target, key, paramIndex); }
68
- }
69
-
70
- function __metadata(metadataKey, metadataValue) {
71
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
72
- }
73
-
74
- function __awaiter(thisArg, _arguments, P, generator) {
75
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
76
- return new (P || (P = Promise))(function (resolve, reject) {
77
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
78
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
79
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
80
- step((generator = generator.apply(thisArg, _arguments || [])).next());
81
- });
82
- }
83
-
84
- function __generator(thisArg, body) {
85
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
86
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
87
- function verb(n) { return function (v) { return step([n, v]); }; }
88
- function step(op) {
89
- if (f) throw new TypeError("Generator is already executing.");
90
- while (_) try {
91
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
92
- if (y = 0, t) op = [op[0] & 2, t.value];
93
- switch (op[0]) {
94
- case 0: case 1: t = op; break;
95
- case 4: _.label++; return { value: op[1], done: false };
96
- case 5: _.label++; y = op[1]; op = [0]; continue;
97
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
98
- default:
99
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
100
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
101
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
102
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
103
- if (t[2]) _.ops.pop();
104
- _.trys.pop(); continue;
105
- }
106
- op = body.call(thisArg, _);
107
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
108
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
109
- }
110
- }
111
-
112
- var __createBinding = Object.create ? (function(o, m, k, k2) {
113
- if (k2 === undefined) k2 = k;
114
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
115
- }) : (function(o, m, k, k2) {
116
- if (k2 === undefined) k2 = k;
117
- o[k2] = m[k];
118
- });
119
-
120
- function __exportStar(m, exports) {
121
- for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
122
- }
123
-
124
- function __values(o) {
125
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
126
- if (m) return m.call(o);
127
- if (o && typeof o.length === "number") return {
128
- next: function () {
129
- if (o && i >= o.length) o = void 0;
130
- return { value: o && o[i++], done: !o };
131
- }
132
- };
133
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
134
- }
135
-
136
- function __read(o, n) {
137
- var m = typeof Symbol === "function" && o[Symbol.iterator];
138
- if (!m) return o;
139
- var i = m.call(o), r, ar = [], e;
140
- try {
141
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
142
- }
143
- catch (error) { e = { error: error }; }
144
- finally {
145
- try {
146
- if (r && !r.done && (m = i["return"])) m.call(i);
147
- }
148
- finally { if (e) throw e.error; }
149
- }
150
- return ar;
151
- }
152
-
153
- function __spread() {
154
- for (var ar = [], i = 0; i < arguments.length; i++)
155
- ar = ar.concat(__read(arguments[i]));
156
- return ar;
157
- }
158
-
159
- function __spreadArrays() {
160
- for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
161
- for (var r = Array(s), k = 0, i = 0; i < il; i++)
162
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
163
- r[k] = a[j];
164
- return r;
165
- };
166
-
167
- function __await(v) {
168
- return this instanceof __await ? (this.v = v, this) : new __await(v);
169
- }
170
-
171
- function __asyncGenerator(thisArg, _arguments, generator) {
172
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
173
- var g = generator.apply(thisArg, _arguments || []), i, q = [];
174
- return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
175
- function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
176
- function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
177
- function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
178
- function fulfill(value) { resume("next", value); }
179
- function reject(value) { resume("throw", value); }
180
- function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
181
- }
182
-
183
- function __asyncDelegator(o) {
184
- var i, p;
185
- return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
186
- function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
187
- }
188
-
189
- function __asyncValues(o) {
190
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
191
- var m = o[Symbol.asyncIterator], i;
192
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
193
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
194
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
195
- }
196
-
197
- function __makeTemplateObject(cooked, raw) {
198
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
199
- return cooked;
200
- };
201
-
202
- var __setModuleDefault = Object.create ? (function(o, v) {
203
- Object.defineProperty(o, "default", { enumerable: true, value: v });
204
- }) : function(o, v) {
205
- o["default"] = v;
206
- };
207
-
208
- function __importStar(mod) {
209
- if (mod && mod.__esModule) return mod;
210
- var result = {};
211
- if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
212
- __setModuleDefault(result, mod);
213
- return result;
214
- }
215
-
216
- function __importDefault(mod) {
217
- return (mod && mod.__esModule) ? mod : { default: mod };
218
- }
219
-
220
- function __classPrivateFieldGet(receiver, privateMap) {
221
- if (!privateMap.has(receiver)) {
222
- throw new TypeError("attempted to get private field on non-instance");
223
- }
224
- return privateMap.get(receiver);
225
- }
226
-
227
- function __classPrivateFieldSet(receiver, privateMap, value) {
228
- if (!privateMap.has(receiver)) {
229
- throw new TypeError("attempted to set private field on non-instance");
230
- }
231
- privateMap.set(receiver, value);
232
- return value;
7
+ /*! *****************************************************************************
8
+ Copyright (c) Microsoft Corporation.
9
+
10
+ Permission to use, copy, modify, and/or distribute this software for any
11
+ purpose with or without fee is hereby granted.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
14
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
15
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
17
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
18
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19
+ PERFORMANCE OF THIS SOFTWARE.
20
+ ***************************************************************************** */
21
+ /* global Reflect, Promise */
22
+ var extendStatics = function (d, b) {
23
+ extendStatics = Object.setPrototypeOf ||
24
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
25
+ function (d, b) { for (var p in b)
26
+ if (b.hasOwnProperty(p))
27
+ d[p] = b[p]; };
28
+ return extendStatics(d, b);
29
+ };
30
+ function __extends(d, b) {
31
+ extendStatics(d, b);
32
+ function __() { this.constructor = d; }
33
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
34
+ }
35
+ var __assign = function () {
36
+ __assign = Object.assign || function __assign(t) {
37
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
38
+ s = arguments[i];
39
+ for (var p in s)
40
+ if (Object.prototype.hasOwnProperty.call(s, p))
41
+ t[p] = s[p];
42
+ }
43
+ return t;
44
+ };
45
+ return __assign.apply(this, arguments);
46
+ };
47
+ function __rest(s, e) {
48
+ var t = {};
49
+ for (var p in s)
50
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
51
+ t[p] = s[p];
52
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
53
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
54
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
55
+ t[p[i]] = s[p[i]];
56
+ }
57
+ return t;
58
+ }
59
+ function __decorate(decorators, target, key, desc) {
60
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
61
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
62
+ r = Reflect.decorate(decorators, target, key, desc);
63
+ else
64
+ for (var i = decorators.length - 1; i >= 0; i--)
65
+ if (d = decorators[i])
66
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
67
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
68
+ }
69
+ function __param(paramIndex, decorator) {
70
+ return function (target, key) { decorator(target, key, paramIndex); };
71
+ }
72
+ function __metadata(metadataKey, metadataValue) {
73
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
74
+ return Reflect.metadata(metadataKey, metadataValue);
75
+ }
76
+ function __awaiter(thisArg, _arguments, P, generator) {
77
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
78
+ return new (P || (P = Promise))(function (resolve, reject) {
79
+ function fulfilled(value) { try {
80
+ step(generator.next(value));
81
+ }
82
+ catch (e) {
83
+ reject(e);
84
+ } }
85
+ function rejected(value) { try {
86
+ step(generator["throw"](value));
87
+ }
88
+ catch (e) {
89
+ reject(e);
90
+ } }
91
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
92
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
93
+ });
94
+ }
95
+ function __generator(thisArg, body) {
96
+ var _ = { label: 0, sent: function () { if (t[0] & 1)
97
+ throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
98
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
99
+ function verb(n) { return function (v) { return step([n, v]); }; }
100
+ function step(op) {
101
+ if (f)
102
+ throw new TypeError("Generator is already executing.");
103
+ while (_)
104
+ try {
105
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
106
+ return t;
107
+ if (y = 0, t)
108
+ op = [op[0] & 2, t.value];
109
+ switch (op[0]) {
110
+ case 0:
111
+ case 1:
112
+ t = op;
113
+ break;
114
+ case 4:
115
+ _.label++;
116
+ return { value: op[1], done: false };
117
+ case 5:
118
+ _.label++;
119
+ y = op[1];
120
+ op = [0];
121
+ continue;
122
+ case 7:
123
+ op = _.ops.pop();
124
+ _.trys.pop();
125
+ continue;
126
+ default:
127
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
128
+ _ = 0;
129
+ continue;
130
+ }
131
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
132
+ _.label = op[1];
133
+ break;
134
+ }
135
+ if (op[0] === 6 && _.label < t[1]) {
136
+ _.label = t[1];
137
+ t = op;
138
+ break;
139
+ }
140
+ if (t && _.label < t[2]) {
141
+ _.label = t[2];
142
+ _.ops.push(op);
143
+ break;
144
+ }
145
+ if (t[2])
146
+ _.ops.pop();
147
+ _.trys.pop();
148
+ continue;
149
+ }
150
+ op = body.call(thisArg, _);
151
+ }
152
+ catch (e) {
153
+ op = [6, e];
154
+ y = 0;
155
+ }
156
+ finally {
157
+ f = t = 0;
158
+ }
159
+ if (op[0] & 5)
160
+ throw op[1];
161
+ return { value: op[0] ? op[1] : void 0, done: true };
162
+ }
163
+ }
164
+ var __createBinding = Object.create ? (function (o, m, k, k2) {
165
+ if (k2 === undefined)
166
+ k2 = k;
167
+ Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
168
+ }) : (function (o, m, k, k2) {
169
+ if (k2 === undefined)
170
+ k2 = k;
171
+ o[k2] = m[k];
172
+ });
173
+ function __exportStar(m, exports) {
174
+ for (var p in m)
175
+ if (p !== "default" && !exports.hasOwnProperty(p))
176
+ __createBinding(exports, m, p);
177
+ }
178
+ function __values(o) {
179
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
180
+ if (m)
181
+ return m.call(o);
182
+ if (o && typeof o.length === "number")
183
+ return {
184
+ next: function () {
185
+ if (o && i >= o.length)
186
+ o = void 0;
187
+ return { value: o && o[i++], done: !o };
188
+ }
189
+ };
190
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
191
+ }
192
+ function __read(o, n) {
193
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
194
+ if (!m)
195
+ return o;
196
+ var i = m.call(o), r, ar = [], e;
197
+ try {
198
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
199
+ ar.push(r.value);
200
+ }
201
+ catch (error) {
202
+ e = { error: error };
203
+ }
204
+ finally {
205
+ try {
206
+ if (r && !r.done && (m = i["return"]))
207
+ m.call(i);
208
+ }
209
+ finally {
210
+ if (e)
211
+ throw e.error;
212
+ }
213
+ }
214
+ return ar;
215
+ }
216
+ function __spread() {
217
+ for (var ar = [], i = 0; i < arguments.length; i++)
218
+ ar = ar.concat(__read(arguments[i]));
219
+ return ar;
220
+ }
221
+ function __spreadArrays() {
222
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++)
223
+ s += arguments[i].length;
224
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
225
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
226
+ r[k] = a[j];
227
+ return r;
228
+ }
229
+ ;
230
+ function __await(v) {
231
+ return this instanceof __await ? (this.v = v, this) : new __await(v);
232
+ }
233
+ function __asyncGenerator(thisArg, _arguments, generator) {
234
+ if (!Symbol.asyncIterator)
235
+ throw new TypeError("Symbol.asyncIterator is not defined.");
236
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
237
+ return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
238
+ function verb(n) { if (g[n])
239
+ i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
240
+ function resume(n, v) { try {
241
+ step(g[n](v));
242
+ }
243
+ catch (e) {
244
+ settle(q[0][3], e);
245
+ } }
246
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
247
+ function fulfill(value) { resume("next", value); }
248
+ function reject(value) { resume("throw", value); }
249
+ function settle(f, v) { if (f(v), q.shift(), q.length)
250
+ resume(q[0][0], q[0][1]); }
251
+ }
252
+ function __asyncDelegator(o) {
253
+ var i, p;
254
+ return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
255
+ function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
256
+ }
257
+ function __asyncValues(o) {
258
+ if (!Symbol.asyncIterator)
259
+ throw new TypeError("Symbol.asyncIterator is not defined.");
260
+ var m = o[Symbol.asyncIterator], i;
261
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
262
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
263
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
264
+ }
265
+ function __makeTemplateObject(cooked, raw) {
266
+ if (Object.defineProperty) {
267
+ Object.defineProperty(cooked, "raw", { value: raw });
268
+ }
269
+ else {
270
+ cooked.raw = raw;
271
+ }
272
+ return cooked;
273
+ }
274
+ ;
275
+ var __setModuleDefault = Object.create ? (function (o, v) {
276
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
277
+ }) : function (o, v) {
278
+ o["default"] = v;
279
+ };
280
+ function __importStar(mod) {
281
+ if (mod && mod.__esModule)
282
+ return mod;
283
+ var result = {};
284
+ if (mod != null)
285
+ for (var k in mod)
286
+ if (Object.hasOwnProperty.call(mod, k))
287
+ __createBinding(result, mod, k);
288
+ __setModuleDefault(result, mod);
289
+ return result;
290
+ }
291
+ function __importDefault(mod) {
292
+ return (mod && mod.__esModule) ? mod : { default: mod };
293
+ }
294
+ function __classPrivateFieldGet(receiver, privateMap) {
295
+ if (!privateMap.has(receiver)) {
296
+ throw new TypeError("attempted to get private field on non-instance");
297
+ }
298
+ return privateMap.get(receiver);
299
+ }
300
+ function __classPrivateFieldSet(receiver, privateMap, value) {
301
+ if (!privateMap.has(receiver)) {
302
+ throw new TypeError("attempted to set private field on non-instance");
303
+ }
304
+ privateMap.set(receiver, value);
305
+ return value;
233
306
  }
234
307
 
235
308
  /**
@@ -301,6 +374,12 @@
301
374
  * Use of this source code is governed by an MIT-style license that can be
302
375
  * found in the LICENSE file at https://angular.io/license
303
376
  */
377
+ /**
378
+ * Injection token that can be used to reference instances of `MatMenuContent`. It serves
379
+ * as alternative token to the actual `MatMenuContent` class which could cause unnecessary
380
+ * retention of the class and its directive metadata.
381
+ */
382
+ var MAT_MENU_CONTENT = new core.InjectionToken('MatMenuContent');
304
383
  /**
305
384
  * Menu content that will be rendered lazily once the menu is opened.
306
385
  */
@@ -360,22 +439,23 @@
360
439
  this._outlet.dispose();
361
440
  }
362
441
  };
363
- MatMenuContent.decorators = [
364
- { type: core.Directive, args: [{
365
- selector: 'ng-template[matMenuContent]'
366
- },] }
367
- ];
368
- MatMenuContent.ctorParameters = function () { return [
369
- { type: core.TemplateRef },
370
- { type: core.ComponentFactoryResolver },
371
- { type: core.ApplicationRef },
372
- { type: core.Injector },
373
- { type: core.ViewContainerRef },
374
- { type: undefined, decorators: [{ type: core.Inject, args: [common.DOCUMENT,] }] },
375
- { type: core.ChangeDetectorRef }
376
- ]; };
377
442
  return MatMenuContent;
378
443
  }());
444
+ MatMenuContent.decorators = [
445
+ { type: core.Directive, args: [{
446
+ selector: 'ng-template[matMenuContent]',
447
+ providers: [{ provide: MAT_MENU_CONTENT, useExisting: MatMenuContent }],
448
+ },] }
449
+ ];
450
+ MatMenuContent.ctorParameters = function () { return [
451
+ { type: core.TemplateRef },
452
+ { type: core.ComponentFactoryResolver },
453
+ { type: core.ApplicationRef },
454
+ { type: core.Injector },
455
+ { type: core.ViewContainerRef },
456
+ { type: undefined, decorators: [{ type: core.Inject, args: [common.DOCUMENT,] }] },
457
+ { type: core.ChangeDetectorRef }
458
+ ]; };
379
459
 
380
460
  /**
381
461
  * @license
@@ -407,6 +487,15 @@
407
487
  function throwMatMenuInvalidPositionY() {
408
488
  throw Error("yPosition value must be either 'above' or below'.\n Example: <mat-menu yPosition=\"above\" #menu=\"matMenu\"></mat-menu>");
409
489
  }
490
+ /**
491
+ * Throws an exception for the case when a menu is assigned
492
+ * to a trigger that is placed inside the same menu.
493
+ * @docs-private
494
+ */
495
+ function throwMatMenuRecursiveError() {
496
+ throw Error("matMenuTriggerFor: menu cannot contain its own trigger. Assign a menu that is " +
497
+ "not a parent of the trigger or move the trigger outside of the menu.");
498
+ }
410
499
 
411
500
  /**
412
501
  * @license
@@ -421,13 +510,6 @@
421
510
  */
422
511
  var MAT_MENU_PANEL = new core.InjectionToken('MAT_MENU_PANEL');
423
512
 
424
- /**
425
- * @license
426
- * Copyright Google LLC All Rights Reserved.
427
- *
428
- * Use of this source code is governed by an MIT-style license that can be
429
- * found in the LICENSE file at https://angular.io/license
430
- */
431
513
  // Boilerplate for applying mixins to MatMenuItem.
432
514
  /** @docs-private */
433
515
  var MatMenuItemBase = /** @class */ (function () {
@@ -528,11 +610,11 @@
528
610
  var textNodeType = this._document ? this._document.TEXT_NODE : 3;
529
611
  var output = '';
530
612
  if (element.childNodes) {
531
- var length_1 = element.childNodes.length;
613
+ var length = element.childNodes.length;
532
614
  // Go through all the top-level text nodes and extract their text.
533
615
  // We skip anything that's not a text node to prevent the text from
534
616
  // being thrown off by something like an icon.
535
- for (var i = 0; i < length_1; i++) {
617
+ for (var i = 0; i < length; i++) {
536
618
  if (element.childNodes[i].nodeType === textNodeType) {
537
619
  output += element.childNodes[i].textContent;
538
620
  }
@@ -540,47 +622,40 @@
540
622
  }
541
623
  return output.trim();
542
624
  };
543
- MatMenuItem.decorators = [
544
- { type: core.Component, args: [{
545
- selector: '[mat-menu-item]',
546
- exportAs: 'matMenuItem',
547
- inputs: ['disabled', 'disableRipple'],
548
- host: {
549
- '[attr.role]': 'role',
550
- '[class.mat-menu-item]': 'true',
551
- '[class.mat-menu-item-highlighted]': '_highlighted',
552
- '[class.mat-menu-item-submenu-trigger]': '_triggersSubmenu',
553
- '[attr.tabindex]': '_getTabIndex()',
554
- '[attr.aria-disabled]': 'disabled.toString()',
555
- '[attr.disabled]': 'disabled || null',
556
- 'class': 'mat-focus-indicator',
557
- },
558
- changeDetection: core.ChangeDetectionStrategy.OnPush,
559
- encapsulation: core.ViewEncapsulation.None,
560
- template: "<ng-content></ng-content>\n<div class=\"mat-menu-ripple\" matRipple\n [matRippleDisabled]=\"disableRipple || disabled\"\n [matRippleTrigger]=\"_getHostElement()\">\n</div>\n"
561
- },] }
562
- ];
563
- MatMenuItem.ctorParameters = function () { return [
564
- { type: core.ElementRef },
565
- { type: undefined, decorators: [{ type: core.Inject, args: [common.DOCUMENT,] }] },
566
- { type: a11y.FocusMonitor },
567
- { type: undefined, decorators: [{ type: core.Inject, args: [MAT_MENU_PANEL,] }, { type: core.Optional }] }
568
- ]; };
569
- MatMenuItem.propDecorators = {
570
- role: [{ type: core.Input }],
571
- _checkDisabled: [{ type: core.HostListener, args: ['click', ['$event'],] }],
572
- _handleMouseEnter: [{ type: core.HostListener, args: ['mouseenter',] }]
573
- };
574
625
  return MatMenuItem;
575
626
  }(_MatMenuItemMixinBase));
627
+ MatMenuItem.decorators = [
628
+ { type: core.Component, args: [{
629
+ selector: '[mat-menu-item]',
630
+ exportAs: 'matMenuItem',
631
+ inputs: ['disabled', 'disableRipple'],
632
+ host: {
633
+ '[attr.role]': 'role',
634
+ '[class.mat-menu-item]': 'true',
635
+ '[class.mat-menu-item-highlighted]': '_highlighted',
636
+ '[class.mat-menu-item-submenu-trigger]': '_triggersSubmenu',
637
+ '[attr.tabindex]': '_getTabIndex()',
638
+ '[attr.aria-disabled]': 'disabled.toString()',
639
+ '[attr.disabled]': 'disabled || null',
640
+ 'class': 'mat-focus-indicator',
641
+ },
642
+ changeDetection: core.ChangeDetectionStrategy.OnPush,
643
+ encapsulation: core.ViewEncapsulation.None,
644
+ template: "<ng-content></ng-content>\n<div class=\"mat-menu-ripple\" matRipple\n [matRippleDisabled]=\"disableRipple || disabled\"\n [matRippleTrigger]=\"_getHostElement()\">\n</div>\n"
645
+ },] }
646
+ ];
647
+ MatMenuItem.ctorParameters = function () { return [
648
+ { type: core.ElementRef },
649
+ { type: undefined, decorators: [{ type: core.Inject, args: [common.DOCUMENT,] }] },
650
+ { type: a11y.FocusMonitor },
651
+ { type: undefined, decorators: [{ type: core.Inject, args: [MAT_MENU_PANEL,] }, { type: core.Optional }] }
652
+ ]; };
653
+ MatMenuItem.propDecorators = {
654
+ role: [{ type: core.Input }],
655
+ _checkDisabled: [{ type: core.HostListener, args: ['click', ['$event'],] }],
656
+ _handleMouseEnter: [{ type: core.HostListener, args: ['mouseenter',] }]
657
+ };
576
658
 
577
- /**
578
- * @license
579
- * Copyright Google LLC All Rights Reserved.
580
- *
581
- * Use of this source code is governed by an MIT-style license that can be
582
- * found in the LICENSE file at https://angular.io/license
583
- */
584
659
  /** Injection token to be used to override the default options for `mat-menu`. */
585
660
  var MAT_MENU_DEFAULT_OPTIONS = new core.InjectionToken('mat-menu-default-options', {
586
661
  providedIn: 'root',
@@ -619,6 +694,8 @@
619
694
  this._panelAnimationState = 'void';
620
695
  /** Emits whenever an animation on the menu completes. */
621
696
  this._animationDone = new rxjs.Subject();
697
+ /** Class or list of classes to be added to the overlay panel. */
698
+ this.overlayPanelClass = this._defaultOptions.overlayPanelClass || '';
622
699
  /** Class to be added to the backdrop element. */
623
700
  this.backdropClass = this._defaultOptions.backdropClass;
624
701
  this._overlapTrigger = this._defaultOptions.overlapTrigger;
@@ -637,7 +714,7 @@
637
714
  /** Position of the menu in the X axis. */
638
715
  get: function () { return this._xPosition; },
639
716
  set: function (value) {
640
- if (value !== 'before' && value !== 'after') {
717
+ if (core.isDevMode() && value !== 'before' && value !== 'after') {
641
718
  throwMatMenuInvalidPositionX();
642
719
  }
643
720
  this._xPosition = value;
@@ -650,7 +727,7 @@
650
727
  /** Position of the menu in the Y axis. */
651
728
  get: function () { return this._yPosition; },
652
729
  set: function (value) {
653
- if (value !== 'above' && value !== 'below') {
730
+ if (core.isDevMode() && value !== 'above' && value !== 'below') {
654
731
  throwMatMenuInvalidPositionY();
655
732
  }
656
733
  this._yPosition = value;
@@ -916,45 +993,45 @@
916
993
  _this._directDescendantItems.notifyOnChanges();
917
994
  });
918
995
  };
919
- _MatMenuBase.decorators = [
920
- { type: core.Directive }
921
- ];
922
- _MatMenuBase.ctorParameters = function () { return [
923
- { type: core.ElementRef },
924
- { type: core.NgZone },
925
- { type: undefined, decorators: [{ type: core.Inject, args: [MAT_MENU_DEFAULT_OPTIONS,] }] }
926
- ]; };
927
- _MatMenuBase.propDecorators = {
928
- _allItems: [{ type: core.ContentChildren, args: [MatMenuItem, { descendants: true },] }],
929
- backdropClass: [{ type: core.Input }],
930
- ariaLabel: [{ type: core.Input, args: ['aria-label',] }],
931
- ariaLabelledby: [{ type: core.Input, args: ['aria-labelledby',] }],
932
- ariaDescribedby: [{ type: core.Input, args: ['aria-describedby',] }],
933
- xPosition: [{ type: core.Input }],
934
- yPosition: [{ type: core.Input }],
935
- templateRef: [{ type: core.ViewChild, args: [core.TemplateRef,] }],
936
- items: [{ type: core.ContentChildren, args: [MatMenuItem, { descendants: false },] }],
937
- lazyContent: [{ type: core.ContentChild, args: [MatMenuContent,] }],
938
- overlapTrigger: [{ type: core.Input }],
939
- hasBackdrop: [{ type: core.Input }],
940
- panelClass: [{ type: core.Input, args: ['class',] }],
941
- classList: [{ type: core.Input }],
942
- closed: [{ type: core.Output }],
943
- close: [{ type: core.Output }]
944
- };
945
996
  return _MatMenuBase;
946
997
  }());
998
+ _MatMenuBase.decorators = [
999
+ { type: core.Directive }
1000
+ ];
1001
+ _MatMenuBase.ctorParameters = function () { return [
1002
+ { type: core.ElementRef },
1003
+ { type: core.NgZone },
1004
+ { type: undefined, decorators: [{ type: core.Inject, args: [MAT_MENU_DEFAULT_OPTIONS,] }] }
1005
+ ]; };
1006
+ _MatMenuBase.propDecorators = {
1007
+ _allItems: [{ type: core.ContentChildren, args: [MatMenuItem, { descendants: true },] }],
1008
+ backdropClass: [{ type: core.Input }],
1009
+ ariaLabel: [{ type: core.Input, args: ['aria-label',] }],
1010
+ ariaLabelledby: [{ type: core.Input, args: ['aria-labelledby',] }],
1011
+ ariaDescribedby: [{ type: core.Input, args: ['aria-describedby',] }],
1012
+ xPosition: [{ type: core.Input }],
1013
+ yPosition: [{ type: core.Input }],
1014
+ templateRef: [{ type: core.ViewChild, args: [core.TemplateRef,] }],
1015
+ items: [{ type: core.ContentChildren, args: [MatMenuItem, { descendants: false },] }],
1016
+ lazyContent: [{ type: core.ContentChild, args: [MAT_MENU_CONTENT,] }],
1017
+ overlapTrigger: [{ type: core.Input }],
1018
+ hasBackdrop: [{ type: core.Input }],
1019
+ panelClass: [{ type: core.Input, args: ['class',] }],
1020
+ classList: [{ type: core.Input }],
1021
+ closed: [{ type: core.Output }],
1022
+ close: [{ type: core.Output }]
1023
+ };
947
1024
  /** @docs-private We show the "_MatMenu" class as "MatMenu" in the docs. */
948
1025
  var MatMenu = /** @class */ (function (_super) {
949
1026
  __extends(MatMenu, _super);
950
1027
  function MatMenu() {
951
1028
  return _super !== null && _super.apply(this, arguments) || this;
952
1029
  }
953
- MatMenu.decorators = [
954
- { type: core.Directive }
955
- ];
956
1030
  return MatMenu;
957
1031
  }(_MatMenuBase));
1032
+ MatMenu.decorators = [
1033
+ { type: core.Directive }
1034
+ ];
958
1035
  // Note on the weird inheritance setup: we need three classes, because the MDC-based menu has to
959
1036
  // extend `MatMenu`, however keeping a reference to it will cause the inlined template and styles
960
1037
  // to be retained as well. The MDC menu also has to provide itself as a `MatMenu` in order for
@@ -971,39 +1048,32 @@
971
1048
  function _MatMenu(elementRef, ngZone, defaultOptions) {
972
1049
  return _super.call(this, elementRef, ngZone, defaultOptions) || this;
973
1050
  }
974
- _MatMenu.decorators = [
975
- { type: core.Component, args: [{
976
- selector: 'mat-menu',
977
- template: "<ng-template>\n <div\n class=\"mat-menu-panel\"\n [id]=\"panelId\"\n [ngClass]=\"_classList\"\n (keydown)=\"_handleKeydown($event)\"\n (click)=\"closed.emit('click')\"\n [@transformMenu]=\"_panelAnimationState\"\n (@transformMenu.start)=\"_onAnimationStart($event)\"\n (@transformMenu.done)=\"_onAnimationDone($event)\"\n tabindex=\"-1\"\n role=\"menu\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby || null\"\n [attr.aria-describedby]=\"ariaDescribedby || null\">\n <div class=\"mat-menu-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n",
978
- changeDetection: core.ChangeDetectionStrategy.OnPush,
979
- encapsulation: core.ViewEncapsulation.None,
980
- exportAs: 'matMenu',
981
- animations: [
982
- matMenuAnimations.transformMenu,
983
- matMenuAnimations.fadeInItems
984
- ],
985
- providers: [
986
- { provide: MAT_MENU_PANEL, useExisting: MatMenu },
987
- { provide: MatMenu, useExisting: _MatMenu }
988
- ],
989
- styles: [".mat-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 48px);border-radius:4px;outline:0;min-height:64px}.mat-menu-panel.ng-animating{pointer-events:none}.cdk-high-contrast-active .mat-menu-panel{outline:solid 1px}.mat-menu-content:not(:empty){padding-top:8px;padding-bottom:8px}.mat-menu-item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative}.mat-menu-item::-moz-focus-inner{border:0}.mat-menu-item[disabled]{cursor:default}[dir=rtl] .mat-menu-item{text-align:right}.mat-menu-item .mat-icon{margin-right:16px;vertical-align:middle}.mat-menu-item .mat-icon svg{vertical-align:top}[dir=rtl] .mat-menu-item .mat-icon{margin-left:16px;margin-right:0}.mat-menu-item[disabled]{pointer-events:none}.cdk-high-contrast-active .mat-menu-item.cdk-program-focused,.cdk-high-contrast-active .mat-menu-item.cdk-keyboard-focused,.cdk-high-contrast-active .mat-menu-item-highlighted{outline:dotted 1px}.mat-menu-item-submenu-trigger{padding-right:32px}.mat-menu-item-submenu-trigger::after{width:0;height:0;border-style:solid;border-width:5px 0 5px 5px;border-color:transparent transparent transparent currentColor;content:\"\";display:inline-block;position:absolute;top:50%;right:16px;transform:translateY(-50%)}[dir=rtl] .mat-menu-item-submenu-trigger{padding-right:16px;padding-left:32px}[dir=rtl] .mat-menu-item-submenu-trigger::after{right:auto;left:16px;transform:rotateY(180deg) translateY(-50%)}button.mat-menu-item{width:100%}.mat-menu-item .mat-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}\n"]
990
- },] }
991
- ];
992
- _MatMenu.ctorParameters = function () { return [
993
- { type: core.ElementRef },
994
- { type: core.NgZone },
995
- { type: undefined, decorators: [{ type: core.Inject, args: [MAT_MENU_DEFAULT_OPTIONS,] }] }
996
- ]; };
997
1051
  return _MatMenu;
998
1052
  }(MatMenu));
1053
+ _MatMenu.decorators = [
1054
+ { type: core.Component, args: [{
1055
+ selector: 'mat-menu',
1056
+ template: "<ng-template>\n <div\n class=\"mat-menu-panel\"\n [id]=\"panelId\"\n [ngClass]=\"_classList\"\n (keydown)=\"_handleKeydown($event)\"\n (click)=\"closed.emit('click')\"\n [@transformMenu]=\"_panelAnimationState\"\n (@transformMenu.start)=\"_onAnimationStart($event)\"\n (@transformMenu.done)=\"_onAnimationDone($event)\"\n tabindex=\"-1\"\n role=\"menu\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby || null\"\n [attr.aria-describedby]=\"ariaDescribedby || null\">\n <div class=\"mat-menu-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n",
1057
+ changeDetection: core.ChangeDetectionStrategy.OnPush,
1058
+ encapsulation: core.ViewEncapsulation.None,
1059
+ exportAs: 'matMenu',
1060
+ animations: [
1061
+ matMenuAnimations.transformMenu,
1062
+ matMenuAnimations.fadeInItems
1063
+ ],
1064
+ providers: [
1065
+ { provide: MAT_MENU_PANEL, useExisting: MatMenu },
1066
+ { provide: MatMenu, useExisting: _MatMenu }
1067
+ ],
1068
+ styles: [".mat-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 48px);border-radius:4px;outline:0;min-height:64px}.mat-menu-panel.ng-animating{pointer-events:none}.cdk-high-contrast-active .mat-menu-panel{outline:solid 1px}.mat-menu-content:not(:empty){padding-top:8px;padding-bottom:8px}.mat-menu-item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative}.mat-menu-item::-moz-focus-inner{border:0}.mat-menu-item[disabled]{cursor:default}[dir=rtl] .mat-menu-item{text-align:right}.mat-menu-item .mat-icon{margin-right:16px;vertical-align:middle}.mat-menu-item .mat-icon svg{vertical-align:top}[dir=rtl] .mat-menu-item .mat-icon{margin-left:16px;margin-right:0}.mat-menu-item[disabled]{pointer-events:none}.cdk-high-contrast-active .mat-menu-item.cdk-program-focused,.cdk-high-contrast-active .mat-menu-item.cdk-keyboard-focused,.cdk-high-contrast-active .mat-menu-item-highlighted{outline:dotted 1px}.mat-menu-item-submenu-trigger{padding-right:32px}.mat-menu-item-submenu-trigger::after{width:0;height:0;border-style:solid;border-width:5px 0 5px 5px;border-color:transparent transparent transparent currentColor;content:\"\";display:inline-block;position:absolute;top:50%;right:16px;transform:translateY(-50%)}[dir=rtl] .mat-menu-item-submenu-trigger{padding-right:16px;padding-left:32px}[dir=rtl] .mat-menu-item-submenu-trigger::after{right:auto;left:16px;transform:rotateY(180deg) translateY(-50%)}button.mat-menu-item{width:100%}.mat-menu-item .mat-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}\n"]
1069
+ },] }
1070
+ ];
1071
+ _MatMenu.ctorParameters = function () { return [
1072
+ { type: core.ElementRef },
1073
+ { type: core.NgZone },
1074
+ { type: undefined, decorators: [{ type: core.Inject, args: [MAT_MENU_DEFAULT_OPTIONS,] }] }
1075
+ ]; };
999
1076
 
1000
- /**
1001
- * @license
1002
- * Copyright Google LLC All Rights Reserved.
1003
- *
1004
- * Use of this source code is governed by an MIT-style license that can be
1005
- * found in the LICENSE file at https://angular.io/license
1006
- */
1007
1077
  /** Injection token that determines the scroll handling while the menu is open. */
1008
1078
  var MAT_MENU_SCROLL_STRATEGY = new core.InjectionToken('mat-menu-scroll-strategy');
1009
1079
  /** @docs-private */
@@ -1101,6 +1171,9 @@
1101
1171
  this._menu = menu;
1102
1172
  this._menuCloseSubscription.unsubscribe();
1103
1173
  if (menu) {
1174
+ if (core.isDevMode() && menu === this._parentMenu) {
1175
+ throwMatMenuRecursiveError();
1176
+ }
1104
1177
  this._menuCloseSubscription = menu.close.asObservable().subscribe(function (reason) {
1105
1178
  _this._destroyMenu();
1106
1179
  // If a click closed the menu, we should close the entire chain of nested menus.
@@ -1278,7 +1351,7 @@
1278
1351
  * matMenuTriggerFor. If not, an exception is thrown.
1279
1352
  */
1280
1353
  MatMenuTrigger.prototype._checkMenu = function () {
1281
- if (!this.menu) {
1354
+ if (core.isDevMode() && !this.menu) {
1282
1355
  throwMatMenuMissingError();
1283
1356
  }
1284
1357
  };
@@ -1309,6 +1382,7 @@
1309
1382
  .withLockedPosition()
1310
1383
  .withTransformOriginOn('.mat-menu-panel, .mat-mdc-menu-panel'),
1311
1384
  backdropClass: this.menu.backdropClass || 'cdk-overlay-transparent-backdrop',
1385
+ panelClass: this.menu.overlayPanelClass,
1312
1386
  scrollStrategy: this._scrollStrategy(),
1313
1387
  direction: this._dir
1314
1388
  });
@@ -1450,43 +1524,43 @@
1450
1524
  }
1451
1525
  return this._portal;
1452
1526
  };
1453
- MatMenuTrigger.decorators = [
1454
- { type: core.Directive, args: [{
1455
- selector: "[mat-menu-trigger-for], [matMenuTriggerFor]",
1456
- host: {
1457
- 'class': 'mat-menu-trigger',
1458
- 'aria-haspopup': 'true',
1459
- '[attr.aria-expanded]': 'menuOpen || null',
1460
- '[attr.aria-controls]': 'menuOpen ? menu.panelId : null',
1461
- '(mousedown)': '_handleMousedown($event)',
1462
- '(keydown)': '_handleKeydown($event)',
1463
- '(click)': '_handleClick($event)',
1464
- },
1465
- exportAs: 'matMenuTrigger'
1466
- },] }
1467
- ];
1468
- MatMenuTrigger.ctorParameters = function () { return [
1469
- { type: overlay.Overlay },
1470
- { type: core.ElementRef },
1471
- { type: core.ViewContainerRef },
1472
- { type: undefined, decorators: [{ type: core.Inject, args: [MAT_MENU_SCROLL_STRATEGY,] }] },
1473
- { type: MatMenu, decorators: [{ type: core.Optional }] },
1474
- { type: MatMenuItem, decorators: [{ type: core.Optional }, { type: core.Self }] },
1475
- { type: bidi.Directionality, decorators: [{ type: core.Optional }] },
1476
- { type: a11y.FocusMonitor }
1477
- ]; };
1478
- MatMenuTrigger.propDecorators = {
1479
- _deprecatedMatMenuTriggerFor: [{ type: core.Input, args: ['mat-menu-trigger-for',] }],
1480
- menu: [{ type: core.Input, args: ['matMenuTriggerFor',] }],
1481
- menuData: [{ type: core.Input, args: ['matMenuTriggerData',] }],
1482
- restoreFocus: [{ type: core.Input, args: ['matMenuTriggerRestoreFocus',] }],
1483
- menuOpened: [{ type: core.Output }],
1484
- onMenuOpen: [{ type: core.Output }],
1485
- menuClosed: [{ type: core.Output }],
1486
- onMenuClose: [{ type: core.Output }]
1487
- };
1488
1527
  return MatMenuTrigger;
1489
1528
  }());
1529
+ MatMenuTrigger.decorators = [
1530
+ { type: core.Directive, args: [{
1531
+ selector: "[mat-menu-trigger-for], [matMenuTriggerFor]",
1532
+ host: {
1533
+ 'class': 'mat-menu-trigger',
1534
+ 'aria-haspopup': 'true',
1535
+ '[attr.aria-expanded]': 'menuOpen || null',
1536
+ '[attr.aria-controls]': 'menuOpen ? menu.panelId : null',
1537
+ '(mousedown)': '_handleMousedown($event)',
1538
+ '(keydown)': '_handleKeydown($event)',
1539
+ '(click)': '_handleClick($event)',
1540
+ },
1541
+ exportAs: 'matMenuTrigger'
1542
+ },] }
1543
+ ];
1544
+ MatMenuTrigger.ctorParameters = function () { return [
1545
+ { type: overlay.Overlay },
1546
+ { type: core.ElementRef },
1547
+ { type: core.ViewContainerRef },
1548
+ { type: undefined, decorators: [{ type: core.Inject, args: [MAT_MENU_SCROLL_STRATEGY,] }] },
1549
+ { type: MatMenu, decorators: [{ type: core.Optional }] },
1550
+ { type: MatMenuItem, decorators: [{ type: core.Optional }, { type: core.Self }] },
1551
+ { type: bidi.Directionality, decorators: [{ type: core.Optional }] },
1552
+ { type: a11y.FocusMonitor }
1553
+ ]; };
1554
+ MatMenuTrigger.propDecorators = {
1555
+ _deprecatedMatMenuTriggerFor: [{ type: core.Input, args: ['mat-menu-trigger-for',] }],
1556
+ menu: [{ type: core.Input, args: ['matMenuTriggerFor',] }],
1557
+ menuData: [{ type: core.Input, args: ['matMenuTriggerData',] }],
1558
+ restoreFocus: [{ type: core.Input, args: ['matMenuTriggerRestoreFocus',] }],
1559
+ menuOpened: [{ type: core.Output }],
1560
+ onMenuOpen: [{ type: core.Output }],
1561
+ menuClosed: [{ type: core.Output }],
1562
+ onMenuClose: [{ type: core.Output }]
1563
+ };
1490
1564
 
1491
1565
  /**
1492
1566
  * @license
@@ -1502,37 +1576,37 @@
1502
1576
  var _MatMenuDirectivesModule = /** @class */ (function () {
1503
1577
  function _MatMenuDirectivesModule() {
1504
1578
  }
1505
- _MatMenuDirectivesModule.decorators = [
1506
- { type: core.NgModule, args: [{
1507
- exports: [MatMenuTrigger, MatMenuContent, core$1.MatCommonModule],
1508
- declarations: [
1509
- MatMenuTrigger,
1510
- MatMenuContent,
1511
- ],
1512
- providers: [MAT_MENU_SCROLL_STRATEGY_FACTORY_PROVIDER]
1513
- },] }
1514
- ];
1515
1579
  return _MatMenuDirectivesModule;
1516
1580
  }());
1581
+ _MatMenuDirectivesModule.decorators = [
1582
+ { type: core.NgModule, args: [{
1583
+ exports: [MatMenuTrigger, MatMenuContent, core$1.MatCommonModule],
1584
+ declarations: [
1585
+ MatMenuTrigger,
1586
+ MatMenuContent,
1587
+ ],
1588
+ providers: [MAT_MENU_SCROLL_STRATEGY_FACTORY_PROVIDER]
1589
+ },] }
1590
+ ];
1517
1591
  var MatMenuModule = /** @class */ (function () {
1518
1592
  function MatMenuModule() {
1519
1593
  }
1520
- MatMenuModule.decorators = [
1521
- { type: core.NgModule, args: [{
1522
- imports: [
1523
- common.CommonModule,
1524
- core$1.MatCommonModule,
1525
- core$1.MatRippleModule,
1526
- overlay.OverlayModule,
1527
- _MatMenuDirectivesModule,
1528
- ],
1529
- exports: [scrolling.CdkScrollableModule, core$1.MatCommonModule, _MatMenu, MatMenuItem, _MatMenuDirectivesModule],
1530
- declarations: [_MatMenu, MatMenuItem],
1531
- providers: [MAT_MENU_SCROLL_STRATEGY_FACTORY_PROVIDER]
1532
- },] }
1533
- ];
1534
1594
  return MatMenuModule;
1535
1595
  }());
1596
+ MatMenuModule.decorators = [
1597
+ { type: core.NgModule, args: [{
1598
+ imports: [
1599
+ common.CommonModule,
1600
+ core$1.MatCommonModule,
1601
+ core$1.MatRippleModule,
1602
+ overlay.OverlayModule,
1603
+ _MatMenuDirectivesModule,
1604
+ ],
1605
+ exports: [scrolling.CdkScrollableModule, core$1.MatCommonModule, _MatMenu, MatMenuItem, _MatMenuDirectivesModule],
1606
+ declarations: [_MatMenu, MatMenuItem],
1607
+ providers: [MAT_MENU_SCROLL_STRATEGY_FACTORY_PROVIDER]
1608
+ },] }
1609
+ ];
1536
1610
 
1537
1611
  /**
1538
1612
  * @license
@@ -1554,6 +1628,7 @@
1554
1628
  * Generated bundle index. Do not edit.
1555
1629
  */
1556
1630
 
1631
+ exports.MAT_MENU_CONTENT = MAT_MENU_CONTENT;
1557
1632
  exports.MAT_MENU_DEFAULT_OPTIONS = MAT_MENU_DEFAULT_OPTIONS;
1558
1633
  exports.MAT_MENU_PANEL = MAT_MENU_PANEL;
1559
1634
  exports.MAT_MENU_SCROLL_STRATEGY = MAT_MENU_SCROLL_STRATEGY;