@angular/material 11.0.4 → 11.1.2

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 (583) hide show
  1. package/_theming.scss +354 -337
  2. package/autocomplete/_autocomplete-theme.scss +4 -5
  3. package/autocomplete/autocomplete.d.ts +7 -1
  4. package/autocomplete/index.metadata.json +1 -1
  5. package/autocomplete/testing/autocomplete-harness.d.ts +29 -15
  6. package/badge/_badge-theme.scss +2 -3
  7. package/bottom-sheet/_bottom-sheet-theme.scss +4 -5
  8. package/bundles/material-autocomplete-testing.umd.js +54 -36
  9. package/bundles/material-autocomplete-testing.umd.js.map +1 -1
  10. package/bundles/material-autocomplete-testing.umd.min.js +2 -2
  11. package/bundles/material-autocomplete-testing.umd.min.js.map +1 -1
  12. package/bundles/material-autocomplete.umd.js +31 -9
  13. package/bundles/material-autocomplete.umd.js.map +1 -1
  14. package/bundles/material-autocomplete.umd.min.js +3 -3
  15. package/bundles/material-autocomplete.umd.min.js.map +1 -1
  16. package/bundles/material-badge-testing.umd.js +9 -1
  17. package/bundles/material-badge-testing.umd.js.map +1 -1
  18. package/bundles/material-badge-testing.umd.min.js +1 -1
  19. package/bundles/material-badge-testing.umd.min.js.map +1 -1
  20. package/bundles/material-badge.umd.js +9 -1
  21. package/bundles/material-badge.umd.js.map +1 -1
  22. package/bundles/material-badge.umd.min.js +3 -3
  23. package/bundles/material-badge.umd.min.js.map +1 -1
  24. package/bundles/material-bottom-sheet-testing.umd.js +9 -1
  25. package/bundles/material-bottom-sheet-testing.umd.js.map +1 -1
  26. package/bundles/material-bottom-sheet-testing.umd.min.js +1 -1
  27. package/bundles/material-bottom-sheet-testing.umd.min.js.map +1 -1
  28. package/bundles/material-bottom-sheet.umd.js +9 -1
  29. package/bundles/material-bottom-sheet.umd.js.map +1 -1
  30. package/bundles/material-bottom-sheet.umd.min.js +1 -1
  31. package/bundles/material-bottom-sheet.umd.min.js.map +1 -1
  32. package/bundles/material-button-testing.umd.js +9 -1
  33. package/bundles/material-button-testing.umd.js.map +1 -1
  34. package/bundles/material-button-testing.umd.min.js +1 -1
  35. package/bundles/material-button-testing.umd.min.js.map +1 -1
  36. package/bundles/material-button-toggle-testing.umd.js +9 -1
  37. package/bundles/material-button-toggle-testing.umd.js.map +1 -1
  38. package/bundles/material-button-toggle-testing.umd.min.js +1 -1
  39. package/bundles/material-button-toggle-testing.umd.min.js.map +1 -1
  40. package/bundles/material-button-toggle.umd.js +9 -1
  41. package/bundles/material-button-toggle.umd.js.map +1 -1
  42. package/bundles/material-button-toggle.umd.min.js +1 -1
  43. package/bundles/material-button-toggle.umd.min.js.map +1 -1
  44. package/bundles/material-button.umd.js +17 -5
  45. package/bundles/material-button.umd.js.map +1 -1
  46. package/bundles/material-button.umd.min.js +1 -1
  47. package/bundles/material-button.umd.min.js.map +1 -1
  48. package/bundles/material-card-testing.umd.js +9 -1
  49. package/bundles/material-card-testing.umd.js.map +1 -1
  50. package/bundles/material-card-testing.umd.min.js +1 -1
  51. package/bundles/material-card-testing.umd.min.js.map +1 -1
  52. package/bundles/material-checkbox-testing.umd.js +73 -64
  53. package/bundles/material-checkbox-testing.umd.js.map +1 -1
  54. package/bundles/material-checkbox-testing.umd.min.js +2 -2
  55. package/bundles/material-checkbox-testing.umd.min.js.map +1 -1
  56. package/bundles/material-checkbox.umd.js +15 -3
  57. package/bundles/material-checkbox.umd.js.map +1 -1
  58. package/bundles/material-checkbox.umd.min.js +2 -2
  59. package/bundles/material-checkbox.umd.min.js.map +1 -1
  60. package/bundles/material-chips-testing.umd.js +189 -29
  61. package/bundles/material-chips-testing.umd.js.map +1 -1
  62. package/bundles/material-chips-testing.umd.min.js +2 -2
  63. package/bundles/material-chips-testing.umd.min.js.map +1 -1
  64. package/bundles/material-chips.umd.js +9 -1
  65. package/bundles/material-chips.umd.js.map +1 -1
  66. package/bundles/material-chips.umd.min.js +4 -4
  67. package/bundles/material-chips.umd.min.js.map +1 -1
  68. package/bundles/material-core-testing.umd.js +14 -3
  69. package/bundles/material-core-testing.umd.js.map +1 -1
  70. package/bundles/material-core-testing.umd.min.js +1 -1
  71. package/bundles/material-core-testing.umd.min.js.map +1 -1
  72. package/bundles/material-core.umd.js +55 -14
  73. package/bundles/material-core.umd.js.map +1 -1
  74. package/bundles/material-core.umd.min.js +16 -8
  75. package/bundles/material-core.umd.min.js.map +1 -1
  76. package/bundles/material-datepicker-testing.umd.js +24 -12
  77. package/bundles/material-datepicker-testing.umd.js.map +1 -1
  78. package/bundles/material-datepicker-testing.umd.min.js +1 -1
  79. package/bundles/material-datepicker-testing.umd.min.js.map +1 -1
  80. package/bundles/material-datepicker.umd.js +250 -80
  81. package/bundles/material-datepicker.umd.js.map +1 -1
  82. package/bundles/material-datepicker.umd.min.js +20 -12
  83. package/bundles/material-datepicker.umd.min.js.map +1 -1
  84. package/bundles/material-dialog-testing.umd.js +9 -1
  85. package/bundles/material-dialog-testing.umd.js.map +1 -1
  86. package/bundles/material-dialog-testing.umd.min.js +1 -1
  87. package/bundles/material-dialog-testing.umd.min.js.map +1 -1
  88. package/bundles/material-dialog.umd.js +10 -2
  89. package/bundles/material-dialog.umd.js.map +1 -1
  90. package/bundles/material-dialog.umd.min.js +8 -8
  91. package/bundles/material-dialog.umd.min.js.map +1 -1
  92. package/bundles/material-divider-testing.umd.js +9 -1
  93. package/bundles/material-divider-testing.umd.js.map +1 -1
  94. package/bundles/material-divider-testing.umd.min.js +2 -2
  95. package/bundles/material-divider-testing.umd.min.js.map +1 -1
  96. package/bundles/material-expansion-testing.umd.js +9 -1
  97. package/bundles/material-expansion-testing.umd.js.map +1 -1
  98. package/bundles/material-expansion-testing.umd.min.js +1 -1
  99. package/bundles/material-expansion-testing.umd.min.js.map +1 -1
  100. package/bundles/material-expansion.umd.js +16 -4
  101. package/bundles/material-expansion.umd.js.map +1 -1
  102. package/bundles/material-expansion.umd.min.js +6 -6
  103. package/bundles/material-expansion.umd.min.js.map +1 -1
  104. package/bundles/material-form-field-testing-control.umd.js +9 -1
  105. package/bundles/material-form-field-testing-control.umd.js.map +1 -1
  106. package/bundles/material-form-field-testing-control.umd.min.js +1 -1
  107. package/bundles/material-form-field-testing-control.umd.min.js.map +1 -1
  108. package/bundles/material-form-field-testing.umd.js +41 -30
  109. package/bundles/material-form-field-testing.umd.js.map +1 -1
  110. package/bundles/material-form-field-testing.umd.min.js +3 -3
  111. package/bundles/material-form-field-testing.umd.min.js.map +1 -1
  112. package/bundles/material-form-field.umd.js +11 -3
  113. package/bundles/material-form-field.umd.js.map +1 -1
  114. package/bundles/material-form-field.umd.min.js +2 -2
  115. package/bundles/material-form-field.umd.min.js.map +1 -1
  116. package/bundles/material-grid-list-testing.umd.js +15 -5
  117. package/bundles/material-grid-list-testing.umd.js.map +1 -1
  118. package/bundles/material-grid-list-testing.umd.min.js +2 -2
  119. package/bundles/material-grid-list-testing.umd.min.js.map +1 -1
  120. package/bundles/material-grid-list.umd.js +156 -146
  121. package/bundles/material-grid-list.umd.js.map +1 -1
  122. package/bundles/material-grid-list.umd.min.js +12 -19
  123. package/bundles/material-grid-list.umd.min.js.map +1 -1
  124. package/bundles/material-icon-testing.umd.js +12 -2
  125. package/bundles/material-icon-testing.umd.js.map +1 -1
  126. package/bundles/material-icon-testing.umd.min.js +2 -2
  127. package/bundles/material-icon-testing.umd.min.js.map +1 -1
  128. package/bundles/material-icon.umd.js +46 -2
  129. package/bundles/material-icon.umd.js.map +1 -1
  130. package/bundles/material-icon.umd.min.js +3 -3
  131. package/bundles/material-icon.umd.min.js.map +1 -1
  132. package/bundles/material-input-testing.umd.js +19 -8
  133. package/bundles/material-input-testing.umd.js.map +1 -1
  134. package/bundles/material-input-testing.umd.min.js +1 -1
  135. package/bundles/material-input-testing.umd.min.js.map +1 -1
  136. package/bundles/material-input.umd.js +9 -1
  137. package/bundles/material-input.umd.js.map +1 -1
  138. package/bundles/material-input.umd.min.js +1 -1
  139. package/bundles/material-input.umd.min.js.map +1 -1
  140. package/bundles/material-list-testing.umd.js +62 -57
  141. package/bundles/material-list-testing.umd.js.map +1 -1
  142. package/bundles/material-list-testing.umd.min.js +1 -1
  143. package/bundles/material-list-testing.umd.min.js.map +1 -1
  144. package/bundles/material-list.umd.js +9 -1
  145. package/bundles/material-list.umd.js.map +1 -1
  146. package/bundles/material-list.umd.min.js +1 -1
  147. package/bundles/material-list.umd.min.js.map +1 -1
  148. package/bundles/material-menu-testing.umd.js +94 -67
  149. package/bundles/material-menu-testing.umd.js.map +1 -1
  150. package/bundles/material-menu-testing.umd.min.js +2 -2
  151. package/bundles/material-menu-testing.umd.min.js.map +1 -1
  152. package/bundles/material-menu.umd.js +24 -28
  153. package/bundles/material-menu.umd.js.map +1 -1
  154. package/bundles/material-menu.umd.min.js +3 -3
  155. package/bundles/material-menu.umd.min.js.map +1 -1
  156. package/bundles/material-paginator-testing.umd.js +50 -34
  157. package/bundles/material-paginator-testing.umd.js.map +1 -1
  158. package/bundles/material-paginator-testing.umd.min.js +2 -2
  159. package/bundles/material-paginator-testing.umd.min.js.map +1 -1
  160. package/bundles/material-paginator.umd.js +9 -1
  161. package/bundles/material-paginator.umd.js.map +1 -1
  162. package/bundles/material-paginator.umd.min.js +1 -1
  163. package/bundles/material-paginator.umd.min.js.map +1 -1
  164. package/bundles/material-progress-bar-testing.umd.js +9 -1
  165. package/bundles/material-progress-bar-testing.umd.js.map +1 -1
  166. package/bundles/material-progress-bar-testing.umd.min.js +1 -1
  167. package/bundles/material-progress-bar-testing.umd.min.js.map +1 -1
  168. package/bundles/material-progress-bar.umd.js +9 -1
  169. package/bundles/material-progress-bar.umd.js.map +1 -1
  170. package/bundles/material-progress-bar.umd.min.js +1 -1
  171. package/bundles/material-progress-bar.umd.min.js.map +1 -1
  172. package/bundles/material-progress-spinner-testing.umd.js +9 -1
  173. package/bundles/material-progress-spinner-testing.umd.js.map +1 -1
  174. package/bundles/material-progress-spinner-testing.umd.min.js +1 -1
  175. package/bundles/material-progress-spinner-testing.umd.min.js.map +1 -1
  176. package/bundles/material-progress-spinner.umd.js +9 -1
  177. package/bundles/material-progress-spinner.umd.js.map +1 -1
  178. package/bundles/material-progress-spinner.umd.min.js +2 -2
  179. package/bundles/material-progress-spinner.umd.min.js.map +1 -1
  180. package/bundles/material-radio-testing.umd.js +88 -63
  181. package/bundles/material-radio-testing.umd.js.map +1 -1
  182. package/bundles/material-radio-testing.umd.min.js +2 -2
  183. package/bundles/material-radio-testing.umd.min.js.map +1 -1
  184. package/bundles/material-radio.umd.js +18 -5
  185. package/bundles/material-radio.umd.js.map +1 -1
  186. package/bundles/material-radio.umd.min.js +1 -1
  187. package/bundles/material-radio.umd.min.js.map +1 -1
  188. package/bundles/material-select-testing.umd.js +73 -51
  189. package/bundles/material-select-testing.umd.js.map +1 -1
  190. package/bundles/material-select-testing.umd.min.js +2 -2
  191. package/bundles/material-select-testing.umd.min.js.map +1 -1
  192. package/bundles/material-select.umd.js +14 -3
  193. package/bundles/material-select.umd.js.map +1 -1
  194. package/bundles/material-select.umd.min.js +5 -5
  195. package/bundles/material-select.umd.min.js.map +1 -1
  196. package/bundles/material-sidenav-testing.umd.js +175 -28
  197. package/bundles/material-sidenav-testing.umd.js.map +1 -1
  198. package/bundles/material-sidenav-testing.umd.min.js +2 -2
  199. package/bundles/material-sidenav-testing.umd.min.js.map +1 -1
  200. package/bundles/material-sidenav.umd.js +9 -1
  201. package/bundles/material-sidenav.umd.js.map +1 -1
  202. package/bundles/material-sidenav.umd.min.js +1 -1
  203. package/bundles/material-sidenav.umd.min.js.map +1 -1
  204. package/bundles/material-slide-toggle-testing.umd.js +9 -1
  205. package/bundles/material-slide-toggle-testing.umd.js.map +1 -1
  206. package/bundles/material-slide-toggle-testing.umd.min.js +1 -1
  207. package/bundles/material-slide-toggle-testing.umd.min.js.map +1 -1
  208. package/bundles/material-slide-toggle.umd.js +16 -3
  209. package/bundles/material-slide-toggle.umd.js.map +1 -1
  210. package/bundles/material-slide-toggle.umd.min.js +3 -3
  211. package/bundles/material-slide-toggle.umd.min.js.map +1 -1
  212. package/bundles/material-slider-testing.umd.js +15 -4
  213. package/bundles/material-slider-testing.umd.js.map +1 -1
  214. package/bundles/material-slider-testing.umd.min.js +2 -2
  215. package/bundles/material-slider-testing.umd.min.js.map +1 -1
  216. package/bundles/material-slider.umd.js +9 -1
  217. package/bundles/material-slider.umd.js.map +1 -1
  218. package/bundles/material-slider.umd.min.js +1 -1
  219. package/bundles/material-slider.umd.min.js.map +1 -1
  220. package/bundles/material-snack-bar-testing.umd.js +29 -12
  221. package/bundles/material-snack-bar-testing.umd.js.map +1 -1
  222. package/bundles/material-snack-bar-testing.umd.min.js +2 -2
  223. package/bundles/material-snack-bar-testing.umd.min.js.map +1 -1
  224. package/bundles/material-snack-bar.umd.js +20 -2
  225. package/bundles/material-snack-bar.umd.js.map +1 -1
  226. package/bundles/material-snack-bar.umd.min.js +1 -1
  227. package/bundles/material-snack-bar.umd.min.js.map +1 -1
  228. package/bundles/material-sort-testing.umd.js +9 -1
  229. package/bundles/material-sort-testing.umd.js.map +1 -1
  230. package/bundles/material-sort-testing.umd.min.js +1 -1
  231. package/bundles/material-sort-testing.umd.min.js.map +1 -1
  232. package/bundles/material-sort.umd.js +9 -1
  233. package/bundles/material-sort.umd.js.map +1 -1
  234. package/bundles/material-sort.umd.min.js +3 -3
  235. package/bundles/material-sort.umd.min.js.map +1 -1
  236. package/bundles/material-stepper-testing.umd.js +9 -1
  237. package/bundles/material-stepper-testing.umd.js.map +1 -1
  238. package/bundles/material-stepper-testing.umd.min.js +2 -2
  239. package/bundles/material-stepper-testing.umd.min.js.map +1 -1
  240. package/bundles/material-stepper.umd.js +16 -3
  241. package/bundles/material-stepper.umd.js.map +1 -1
  242. package/bundles/material-stepper.umd.min.js +3 -3
  243. package/bundles/material-stepper.umd.min.js.map +1 -1
  244. package/bundles/material-table-testing.umd.js +26 -17
  245. package/bundles/material-table-testing.umd.js.map +1 -1
  246. package/bundles/material-table-testing.umd.min.js +2 -2
  247. package/bundles/material-table-testing.umd.min.js.map +1 -1
  248. package/bundles/material-table.umd.js +65 -38
  249. package/bundles/material-table.umd.js.map +1 -1
  250. package/bundles/material-table.umd.min.js +3 -3
  251. package/bundles/material-table.umd.min.js.map +1 -1
  252. package/bundles/material-tabs-testing.umd.js +11 -3
  253. package/bundles/material-tabs-testing.umd.js.map +1 -1
  254. package/bundles/material-tabs-testing.umd.min.js +1 -1
  255. package/bundles/material-tabs-testing.umd.min.js.map +1 -1
  256. package/bundles/material-tabs.umd.js +10 -2
  257. package/bundles/material-tabs.umd.js.map +1 -1
  258. package/bundles/material-tabs.umd.min.js +5 -5
  259. package/bundles/material-tabs.umd.min.js.map +1 -1
  260. package/bundles/material-toolbar-testing.umd.js +11 -2
  261. package/bundles/material-toolbar-testing.umd.js.map +1 -1
  262. package/bundles/material-toolbar-testing.umd.min.js +2 -2
  263. package/bundles/material-toolbar-testing.umd.min.js.map +1 -1
  264. package/bundles/material-toolbar.umd.js +9 -1
  265. package/bundles/material-toolbar.umd.js.map +1 -1
  266. package/bundles/material-toolbar.umd.min.js +2 -2
  267. package/bundles/material-toolbar.umd.min.js.map +1 -1
  268. package/bundles/material-tooltip-testing.umd.js +9 -1
  269. package/bundles/material-tooltip-testing.umd.js.map +1 -1
  270. package/bundles/material-tooltip-testing.umd.min.js +1 -1
  271. package/bundles/material-tooltip-testing.umd.min.js.map +1 -1
  272. package/bundles/material-tooltip.umd.js +35 -7
  273. package/bundles/material-tooltip.umd.js.map +1 -1
  274. package/bundles/material-tooltip.umd.min.js +3 -3
  275. package/bundles/material-tooltip.umd.min.js.map +1 -1
  276. package/bundles/material-tree-testing.umd.js +10 -2
  277. package/bundles/material-tree-testing.umd.js.map +1 -1
  278. package/bundles/material-tree-testing.umd.min.js +1 -1
  279. package/bundles/material-tree-testing.umd.min.js.map +1 -1
  280. package/bundles/material-tree.umd.js +9 -1
  281. package/bundles/material-tree.umd.js.map +1 -1
  282. package/bundles/material-tree.umd.min.js +3 -3
  283. package/bundles/material-tree.umd.min.js.map +1 -1
  284. package/button/_button-base.scss +2 -2
  285. package/button/_button-theme.scss +10 -11
  286. package/button/index.metadata.json +1 -1
  287. package/button-toggle/_button-toggle-theme.scss +9 -10
  288. package/card/_card-theme.scss +5 -6
  289. package/checkbox/_checkbox-theme.scss +2 -3
  290. package/checkbox/testing/checkbox-harness.d.ts +21 -16
  291. package/chips/_chips-theme.scss +4 -5
  292. package/chips/testing/chip-harness-filters.d.ts +11 -3
  293. package/chips/testing/chip-harness.d.ts +5 -5
  294. package/chips/testing/chip-list-harness.d.ts +15 -12
  295. package/chips/testing/chip-listbox-harness.d.ts +34 -0
  296. package/chips/testing/chip-option-harness.d.ts +29 -0
  297. package/chips/testing/public-api.d.ts +3 -1
  298. package/core/_core.scss +6 -6
  299. package/core/color/_all-color.scss +2 -1
  300. package/core/datetime/date-formats.d.ts +1 -0
  301. package/core/density/private/_all-density.scss +34 -0
  302. package/core/density/{_index.scss → private/_compatibility.scss} +11 -8
  303. package/core/focus-indicators/_focus-indicators.scss +3 -4
  304. package/core/index.metadata.json +1 -1
  305. package/core/option/_optgroup-theme.scss +2 -3
  306. package/core/option/_option-theme.scss +2 -3
  307. package/core/option/index.d.ts +1 -0
  308. package/core/option/optgroup.d.ts +4 -0
  309. package/core/option/option-parent.d.ts +22 -0
  310. package/core/option/option.d.ts +2 -14
  311. package/core/ripple/_ripple.scss +2 -3
  312. package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +2 -3
  313. package/core/style/_elevation.scss +2 -18
  314. package/core/style/_form-common.scss +2 -2
  315. package/core/style/_private.scss +40 -0
  316. package/core/testing/option-harness.d.ts +2 -0
  317. package/core/theming/_all-theme.scss +3 -2
  318. package/core/theming/_theming.scss +148 -38
  319. package/core/typography/_all-typography.scss +1 -1
  320. package/datepicker/_datepicker-theme.scss +5 -6
  321. package/datepicker/date-range-input-parts.d.ts +2 -3
  322. package/datepicker/date-range-input.d.ts +5 -4
  323. package/datepicker/date-selection-model.d.ts +10 -0
  324. package/datepicker/datepicker-actions.d.ts +33 -0
  325. package/datepicker/datepicker-base.d.ts +52 -9
  326. package/datepicker/datepicker-input-base.d.ts +5 -10
  327. package/datepicker/datepicker-input.d.ts +9 -8
  328. package/datepicker/datepicker-toggle.d.ts +4 -2
  329. package/datepicker/index.metadata.json +1 -1
  330. package/datepicker/public-api.d.ts +1 -0
  331. package/dialog/_dialog-theme.scss +4 -5
  332. package/divider/_divider-theme.scss +2 -3
  333. package/esm2015/autocomplete/autocomplete-trigger.js +10 -2
  334. package/esm2015/autocomplete/autocomplete.js +11 -4
  335. package/esm2015/autocomplete/testing/autocomplete-harness.js +27 -19
  336. package/esm2015/button/button.js +10 -5
  337. package/esm2015/checkbox/checkbox.js +8 -3
  338. package/esm2015/checkbox/testing/checkbox-harness.js +31 -36
  339. package/esm2015/chips/testing/chip-harness-filters.js +1 -1
  340. package/esm2015/chips/testing/chip-harness.js +6 -6
  341. package/esm2015/chips/testing/chip-list-harness.js +19 -16
  342. package/esm2015/chips/testing/chip-listbox-harness.js +49 -0
  343. package/esm2015/chips/testing/chip-option-harness.js +54 -0
  344. package/esm2015/chips/testing/public-api.js +4 -2
  345. package/esm2015/core/common-behaviors/common-module.js +1 -1
  346. package/esm2015/core/datetime/date-formats.js +1 -1
  347. package/esm2015/core/option/index.js +2 -1
  348. package/esm2015/core/option/optgroup.js +32 -7
  349. package/esm2015/core/option/option-parent.js +13 -0
  350. package/esm2015/core/option/option.js +5 -8
  351. package/esm2015/core/testing/option-harness.js +7 -2
  352. package/esm2015/core/version.js +1 -1
  353. package/esm2015/datepicker/date-range-input-parts.js +10 -14
  354. package/esm2015/datepicker/date-range-input.js +11 -4
  355. package/esm2015/datepicker/date-range-picker.js +3 -2
  356. package/esm2015/datepicker/date-selection-model.js +24 -1
  357. package/esm2015/datepicker/datepicker-actions.js +89 -0
  358. package/esm2015/datepicker/datepicker-base.js +66 -25
  359. package/esm2015/datepicker/datepicker-input-base.js +15 -27
  360. package/esm2015/datepicker/datepicker-input.js +11 -5
  361. package/esm2015/datepicker/datepicker-module.js +8 -1
  362. package/esm2015/datepicker/datepicker-toggle.js +7 -10
  363. package/esm2015/datepicker/datepicker.js +5 -2
  364. package/esm2015/datepicker/month-view.js +6 -3
  365. package/esm2015/datepicker/public-api.js +2 -1
  366. package/esm2015/datepicker/testing/date-range-input-harness.js +4 -4
  367. package/esm2015/datepicker/testing/datepicker-input-harness.js +3 -3
  368. package/esm2015/datepicker/testing/datepicker-trigger-harness-base.js +3 -3
  369. package/esm2015/dialog/dialog-ref.js +2 -2
  370. package/esm2015/expansion/expansion-panel-header.js +9 -4
  371. package/esm2015/expansion/expansion-panel.js +1 -1
  372. package/esm2015/form-field/form-field-animations.js +2 -2
  373. package/esm2015/form-field/form-field.js +2 -2
  374. package/esm2015/form-field/testing/form-field-harness.js +14 -9
  375. package/esm2015/grid-list/public-api.js +3 -2
  376. package/esm2015/grid-list/testing/grid-list-harness.js +6 -5
  377. package/esm2015/icon/icon-registry.js +39 -3
  378. package/esm2015/icon/testing/fake-icon-registry.js +4 -2
  379. package/esm2015/input/testing/input-harness.js +3 -3
  380. package/esm2015/input/testing/native-select-harness.js +7 -5
  381. package/esm2015/list/selection-list.js +1 -1
  382. package/esm2015/list/testing/list-harness-base.js +5 -4
  383. package/esm2015/list/testing/list-item-harness-base.js +5 -4
  384. package/esm2015/list/testing/selection-list-harness.js +8 -5
  385. package/esm2015/menu/menu-item.js +3 -3
  386. package/esm2015/menu/menu-trigger.js +15 -25
  387. package/esm2015/menu/menu.js +2 -2
  388. package/esm2015/menu/testing/menu-harness.js +44 -32
  389. package/esm2015/paginator/testing/paginator-harness.js +27 -25
  390. package/esm2015/radio/radio.js +10 -5
  391. package/esm2015/radio/testing/radio-harness.js +40 -29
  392. package/esm2015/select/select.js +6 -3
  393. package/esm2015/select/testing/select-harness.js +36 -28
  394. package/esm2015/sidenav/testing/drawer-container-harness.js +41 -0
  395. package/esm2015/sidenav/testing/drawer-content-harness.js +23 -0
  396. package/esm2015/sidenav/testing/drawer-harness-filters.js +1 -1
  397. package/esm2015/sidenav/testing/drawer-harness.js +19 -13
  398. package/esm2015/sidenav/testing/public-api.js +6 -2
  399. package/esm2015/sidenav/testing/sidenav-container-harness.js +41 -0
  400. package/esm2015/sidenav/testing/sidenav-content-harness.js +23 -0
  401. package/esm2015/sidenav/testing/sidenav-harness.js +4 -4
  402. package/esm2015/slide-toggle/slide-toggle.js +8 -3
  403. package/esm2015/slider/testing/slider-harness.js +5 -5
  404. package/esm2015/snack-bar/snack-bar-container.js +12 -2
  405. package/esm2015/snack-bar/testing/snack-bar-harness.js +19 -12
  406. package/esm2015/stepper/step-header.js +8 -3
  407. package/esm2015/table/table-data-source.js +34 -21
  408. package/esm2015/table/testing/cell-harness.js +3 -3
  409. package/esm2015/table/testing/row-harness.js +5 -5
  410. package/esm2015/table/testing/table-harness.js +8 -8
  411. package/esm2015/tabs/tab-body.js +3 -3
  412. package/esm2015/tabs/testing/tab-group-harness.js +3 -3
  413. package/esm2015/tabs/testing/tab-nav-bar-harness.js +3 -3
  414. package/esm2015/toolbar/testing/toolbar-harness.js +3 -3
  415. package/esm2015/tooltip/tooltip.js +28 -7
  416. package/esm2015/tree/testing/tree-harness.js +2 -2
  417. package/expansion/_expansion-mixins.scss +11 -0
  418. package/expansion/_expansion-theme.scss +13 -19
  419. package/expansion/index.metadata.json +1 -1
  420. package/fesm2015/autocomplete/testing.js +26 -18
  421. package/fesm2015/autocomplete/testing.js.map +1 -1
  422. package/fesm2015/autocomplete.js +19 -5
  423. package/fesm2015/autocomplete.js.map +1 -1
  424. package/fesm2015/button.js +9 -4
  425. package/fesm2015/button.js.map +1 -1
  426. package/fesm2015/checkbox/testing.js +30 -35
  427. package/fesm2015/checkbox/testing.js.map +1 -1
  428. package/fesm2015/checkbox.js +7 -2
  429. package/fesm2015/checkbox.js.map +1 -1
  430. package/fesm2015/chips/testing.js +120 -21
  431. package/fesm2015/chips/testing.js.map +1 -1
  432. package/fesm2015/core/testing.js +6 -1
  433. package/fesm2015/core/testing.js.map +1 -1
  434. package/fesm2015/core.js +45 -13
  435. package/fesm2015/core.js.map +1 -1
  436. package/fesm2015/datepicker/testing.js +5 -5
  437. package/fesm2015/datepicker/testing.js.map +1 -1
  438. package/fesm2015/datepicker.js +275 -116
  439. package/fesm2015/datepicker.js.map +1 -1
  440. package/fesm2015/dialog.js +1 -1
  441. package/fesm2015/dialog.js.map +1 -1
  442. package/fesm2015/expansion.js +8 -3
  443. package/fesm2015/expansion.js.map +1 -1
  444. package/fesm2015/form-field/testing.js +13 -8
  445. package/fesm2015/form-field/testing.js.map +1 -1
  446. package/fesm2015/form-field.js +2 -2
  447. package/fesm2015/form-field.js.map +1 -1
  448. package/fesm2015/grid-list/testing.js +5 -4
  449. package/fesm2015/grid-list/testing.js.map +1 -1
  450. package/fesm2015/grid-list.js +128 -126
  451. package/fesm2015/grid-list.js.map +1 -1
  452. package/fesm2015/icon/testing.js +3 -1
  453. package/fesm2015/icon/testing.js.map +1 -1
  454. package/fesm2015/icon.js +38 -2
  455. package/fesm2015/icon.js.map +1 -1
  456. package/fesm2015/input/testing.js +7 -5
  457. package/fesm2015/input/testing.js.map +1 -1
  458. package/fesm2015/list/testing.js +13 -8
  459. package/fesm2015/list/testing.js.map +1 -1
  460. package/fesm2015/list.js.map +1 -1
  461. package/fesm2015/menu/testing.js +45 -33
  462. package/fesm2015/menu/testing.js.map +1 -1
  463. package/fesm2015/menu.js +17 -27
  464. package/fesm2015/menu.js.map +1 -1
  465. package/fesm2015/paginator/testing.js +26 -24
  466. package/fesm2015/paginator/testing.js.map +1 -1
  467. package/fesm2015/paginator.js.map +1 -1
  468. package/fesm2015/progress-spinner.js.map +1 -1
  469. package/fesm2015/radio/testing.js +39 -28
  470. package/fesm2015/radio/testing.js.map +1 -1
  471. package/fesm2015/radio.js +9 -4
  472. package/fesm2015/radio.js.map +1 -1
  473. package/fesm2015/select/testing.js +36 -28
  474. package/fesm2015/select/testing.js.map +1 -1
  475. package/fesm2015/select.js +5 -2
  476. package/fesm2015/select.js.map +1 -1
  477. package/fesm2015/sidenav/testing.js +139 -15
  478. package/fesm2015/sidenav/testing.js.map +1 -1
  479. package/fesm2015/sidenav.js.map +1 -1
  480. package/fesm2015/slide-toggle.js +7 -2
  481. package/fesm2015/slide-toggle.js.map +1 -1
  482. package/fesm2015/slider/testing.js +4 -4
  483. package/fesm2015/slider/testing.js.map +1 -1
  484. package/fesm2015/snack-bar/testing.js +18 -11
  485. package/fesm2015/snack-bar/testing.js.map +1 -1
  486. package/fesm2015/snack-bar.js +11 -1
  487. package/fesm2015/snack-bar.js.map +1 -1
  488. package/fesm2015/stepper.js +7 -2
  489. package/fesm2015/stepper.js.map +1 -1
  490. package/fesm2015/table/testing.js +11 -11
  491. package/fesm2015/table/testing.js.map +1 -1
  492. package/fesm2015/table.js +34 -21
  493. package/fesm2015/table.js.map +1 -1
  494. package/fesm2015/tabs/testing.js +3 -3
  495. package/fesm2015/tabs/testing.js.map +1 -1
  496. package/fesm2015/tabs.js +2 -2
  497. package/fesm2015/tabs.js.map +1 -1
  498. package/fesm2015/toolbar/testing.js +2 -2
  499. package/fesm2015/toolbar/testing.js.map +1 -1
  500. package/fesm2015/tooltip.js +27 -7
  501. package/fesm2015/tooltip.js.map +1 -1
  502. package/fesm2015/tree/testing.js +1 -1
  503. package/fesm2015/tree/testing.js.map +1 -1
  504. package/form-field/_form-field-fill-theme.scss +4 -5
  505. package/form-field/_form-field-legacy-theme.scss +5 -6
  506. package/form-field/_form-field-outline-theme.scss +4 -5
  507. package/form-field/_form-field-standard-theme.scss +5 -6
  508. package/form-field/_form-field-theme.scss +8 -9
  509. package/form-field/index.metadata.json +1 -1
  510. package/grid-list/_grid-list-theme.scss +2 -3
  511. package/grid-list/index.metadata.json +1 -1
  512. package/grid-list/public-api.d.ts +2 -1
  513. package/icon/_icon-theme.scss +2 -3
  514. package/icon/icon-registry.d.ts +23 -0
  515. package/icon/index.metadata.json +1 -1
  516. package/icon/testing/fake-icon-registry.d.ts +1 -0
  517. package/icon/testing/index.metadata.json +1 -1
  518. package/input/_input-theme.scss +3 -4
  519. package/list/_list-theme.scss +2 -3
  520. package/list/index.metadata.json +1 -1
  521. package/list/selection-list.d.ts +6 -1
  522. package/list/testing/list-harness-base.d.ts +1 -1
  523. package/list/testing/list-item-harness-base.d.ts +2 -2
  524. package/list/testing/selection-list-harness.d.ts +2 -1
  525. package/menu/_menu-theme.scss +4 -5
  526. package/menu/index.metadata.json +1 -1
  527. package/menu/menu-trigger.d.ts +1 -3
  528. package/menu/menu.d.ts +4 -2
  529. package/menu/testing/menu-harness.d.ts +39 -26
  530. package/package.json +2 -2
  531. package/paginator/_paginator-theme.scss +7 -8
  532. package/paginator/testing/paginator-harness.d.ts +32 -19
  533. package/prebuilt-themes/deeppurple-amber.css +1 -1
  534. package/prebuilt-themes/indigo-pink.css +1 -1
  535. package/prebuilt-themes/pink-bluegrey.css +1 -1
  536. package/prebuilt-themes/purple-green.css +1 -1
  537. package/progress-bar/_progress-bar-theme.scss +2 -3
  538. package/progress-spinner/_progress-spinner-theme.scss +2 -3
  539. package/radio/_radio-theme.scss +2 -3
  540. package/radio/index.metadata.json +1 -1
  541. package/radio/radio.d.ts +2 -2
  542. package/radio/testing/radio-harness.d.ts +39 -24
  543. package/schematics/ng-add/fonts/material-fonts.js +7 -5
  544. package/schematics/ng-add/index.js +1 -1
  545. package/schematics/ng-add/setup-project.js +4 -3
  546. package/select/_select-theme.scss +5 -6
  547. package/select/index.metadata.json +1 -1
  548. package/select/testing/select-harness.d.ts +28 -16
  549. package/sidenav/_sidenav-theme.scss +4 -5
  550. package/sidenav/testing/drawer-container-harness.d.ts +30 -0
  551. package/sidenav/testing/drawer-content-harness.d.ts +21 -0
  552. package/sidenav/testing/drawer-harness-filters.d.ts +6 -0
  553. package/sidenav/testing/drawer-harness.d.ts +13 -7
  554. package/sidenav/testing/public-api.d.ts +5 -1
  555. package/sidenav/testing/sidenav-container-harness.d.ts +30 -0
  556. package/sidenav/testing/sidenav-content-harness.d.ts +21 -0
  557. package/sidenav/testing/sidenav-harness.d.ts +3 -3
  558. package/slide-toggle/_slide-toggle-theme.scss +4 -5
  559. package/slide-toggle/slide-toggle.d.ts +2 -2
  560. package/slider/_slider-theme.scss +2 -3
  561. package/snack-bar/_snack-bar-theme.scss +4 -5
  562. package/snack-bar/index.metadata.json +1 -1
  563. package/snack-bar/snack-bar-container.d.ts +5 -0
  564. package/snack-bar/testing/snack-bar-harness.d.ts +7 -4
  565. package/sort/_sort-theme.scss +2 -3
  566. package/stepper/_stepper-theme.scss +7 -8
  567. package/stepper/step-header.d.ts +2 -2
  568. package/table/_table-theme.scss +2 -3
  569. package/table/index.metadata.json +1 -1
  570. package/table/table-data-source.d.ts +31 -20
  571. package/table/testing/cell-harness.d.ts +2 -2
  572. package/tabs/_tabs-common.scss +2 -2
  573. package/tabs/_tabs-theme.scss +14 -9
  574. package/tabs/index.metadata.json +1 -1
  575. package/tabs/tab-body.d.ts +3 -3
  576. package/toolbar/_toolbar-theme.scss +8 -9
  577. package/tooltip/_tooltip-theme.scss +2 -3
  578. package/tooltip/index.metadata.json +1 -1
  579. package/tooltip/tooltip.d.ts +10 -1
  580. package/tree/_tree-theme.scss +7 -8
  581. package/core/density/_all-density.scss +0 -19
  582. package/core/style/_noop-animation.scss +0 -22
  583. package/core/theming/_check-duplicate-styles.scss +0 -106
@@ -1 +1 @@
1
- {"version":3,"sources":["src/material/material-menu-testing.umd.js"],"names":["global","factory","exports","module","require","define","amd","self","ng","material","menu","testing","cdk","coercion","this","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends","__","constructor","create","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","adopt","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","n","v","op","TypeError","pop","length","push","__read","o","m","r","i","ar","error","__spread","arguments","concat","MatMenuHarness","_super","_this","_documentRootLocator","documentRootLocatorFactory","with","options","HarnessPredicate","addOption","triggerText","harness","text","stringMatches","getTriggerText","isDisabled","disabled","_a","_b","host","getAttribute","coerceBooleanProperty","isOpen","_getMenuPanel","focus","blur","isFocused","open","click","close","panel","sendKeys","TestKey","ESCAPE","getItems","filters","panelId","_getPanelId","locatorForAll","MatMenuItemHarness","assign","ancestor","clickItem","itemFilter","subItemFilters","_i","items","Error","JSON","stringify","getSubmenu","getRootHarnessLoader","harnessLoaderFor","locatorForOptional","ContentContainerComponentHarness","hostSelector","getText","hasSubmenu","matchesSelector","locatorFactory","defineProperty"],"mappings":"CAAC,SAAUA,EAAQC,GACI,iBAAZC,SAA0C,oBAAXC,OAAyBF,EAAQC,QAASE,QAAQ,wBAAyBA,QAAQ,0BACvG,mBAAXC,QAAyBA,OAAOC,IAAMD,OAAO,iCAAkC,CAAC,UAAW,uBAAwB,yBAA0BJ,GAC1HA,IAAzBD,EAASA,GAAUO,MAAsBC,GAAKR,EAAOQ,IAAM,GAAIR,EAAOQ,GAAGC,SAAWT,EAAOQ,GAAGC,UAAY,GAAIT,EAAOQ,GAAGC,SAASC,KAAOV,EAAOQ,GAAGC,SAASC,MAAQ,GAAIV,EAAOQ,GAAGC,SAASC,KAAKC,QAAU,IAAKX,EAAOQ,GAAGI,IAAID,QAASX,EAAOQ,GAAGI,IAAIC,UAHxP,CAIEC,MAAM,SAAWZ,EAASS,EAASE,GAAY;;;;;;;;;;;;;;oFAiB7C,IAAIE,EAAgB,SAAUC,EAAGC,GAM7B,OALAF,EAAgBG,OAAOC,gBAClB,CAAEC,UAAW,cAAgBC,OAAS,SAAUL,EAAGC,GAAKD,EAAEI,UAAYH,IACvE,SAAUD,EAAGC,GAAK,IAAK,IAAIK,KAAKL,EACxBC,OAAOK,UAAUC,eAAeC,KAAKR,EAAGK,KACxCN,EAAEM,GAAKL,EAAEK,MACAN,EAAGC,IAE5B,SAASS,EAAUV,EAAGC,GAElB,SAASU,IAAOb,KAAKc,YAAcZ,EADnCD,EAAcC,EAAGC,GAEjBD,EAAEO,UAAkB,OAANN,EAAaC,OAAOW,OAAOZ,IAAMU,EAAGJ,UAAYN,EAAEM,UAAW,IAAII,GA2CnF,SAASG,EAAUC,EAASC,EAAYC,EAAGC,GAEvC,OAAO,IAAKD,IAAMA,EAAIE,WAAU,SAAUC,EAASC,GAC/C,SAASC,EAAUC,GAAS,IACxBC,EAAKN,EAAUO,KAAKF,IAExB,MAAOG,GACHL,EAAOK,IAEX,SAASC,EAASJ,GAAS,IACvBC,EAAKN,EAAiB,MAAEK,IAE5B,MAAOG,GACHL,EAAOK,IAEX,SAASF,EAAKI,GAAUA,EAAOC,KAAOT,EAAQQ,EAAOL,OAdzD,SAASO,EAAMP,GAAS,OAAOA,aAAiBN,EAAIM,EAAQ,IAAIN,GAAE,SAAUG,GAAWA,EAAQG,MAc7BO,CAAMF,EAAOL,OAAOQ,KAAKT,EAAWK,GAClGH,GAAMN,EAAYA,EAAUc,MAAMjB,EAASC,GAAc,KAAKS,WAGtE,SAASQ,EAAYlB,EAASmB,GAC1B,IACyDC,EAAGC,EAAGC,EAAGC,EAD9DC,EAAI,CAAEC,MAAO,EAAGC,KAAM,WAAc,GAAW,EAAPJ,EAAE,GACtC,MAAMA,EAAE,GAAI,OAAOA,EAAE,IAAOK,KAAM,GAAIC,IAAK,IACnD,OAAOL,EAAI,CAAEb,KAAMmB,EAAK,GAAIC,MAASD,EAAK,GAAIE,OAAUF,EAAK,IAAwB,mBAAXG,SAA0BT,EAAES,OAAOC,UAAY,WAAc,OAAOlD,OAAUwC,EACxJ,SAASM,EAAKK,GAAK,OAAO,SAAUC,GAAK,OACzC,SAAS1B,EAAK2B,GACV,GAAIhB,EACA,MAAM,IAAIiB,UAAU,mCACxB,KAAOb,GACH,IACI,GAAIJ,EAAI,EAAGC,IAAMC,EAAY,EAARc,EAAG,GAASf,EAAU,OAAIe,EAAG,GAAKf,EAAS,SAAOC,EAAID,EAAU,SAAMC,EAAE5B,KAAK2B,GAAI,GAAKA,EAAEX,SAAWY,EAAIA,EAAE5B,KAAK2B,EAAGe,EAAG,KAAKtB,KAC1I,OAAOQ,EAGX,OAFID,EAAI,EAAGC,IACPc,EAAK,CAAS,EAARA,EAAG,GAAQd,EAAEd,QACf4B,EAAG,IACP,KAAK,EACL,KAAK,EACDd,EAAIc,EACJ,MACJ,KAAK,EAED,OADAZ,EAAEC,QACK,CAAEjB,MAAO4B,EAAG,GAAItB,MAAM,GACjC,KAAK,EACDU,EAAEC,QACFJ,EAAIe,EAAG,GACPA,EAAK,CAAC,GACN,SACJ,KAAK,EACDA,EAAKZ,EAAEI,IAAIU,MACXd,EAAEG,KAAKW,MACP,SACJ,QACI,MAAkBhB,GAAZA,EAAIE,EAAEG,MAAYY,OAAS,GAAKjB,EAAEA,EAAEiB,OAAS,KAAkB,IAAVH,EAAG,IAAsB,IAAVA,EAAG,IAAW,CACpFZ,EAAI,EACJ,SAEJ,GAAc,IAAVY,EAAG,MAAcd,GAAMc,EAAG,GAAKd,EAAE,IAAMc,EAAG,GAAKd,EAAE,IAAM,CACvDE,EAAEC,MAAQW,EAAG,GACb,MAEJ,GAAc,IAAVA,EAAG,IAAYZ,EAAEC,MAAQH,EAAE,GAAI,CAC/BE,EAAEC,MAAQH,EAAE,GACZA,EAAIc,EACJ,MAEJ,GAAId,GAAKE,EAAEC,MAAQH,EAAE,GAAI,CACrBE,EAAEC,MAAQH,EAAE,GACZE,EAAEI,IAAIY,KAAKJ,GACX,MAEAd,EAAE,IACFE,EAAEI,IAAIU,MACVd,EAAEG,KAAKW,MACP,SAERF,EAAKjB,EAAKzB,KAAKM,EAASwB,GAE5B,MAAOb,GACHyB,EAAK,CAAC,EAAGzB,GACTU,EAAI,EAER,QACID,EAAIE,EAAI,EAEhB,GAAY,EAARc,EAAG,GACH,MAAMA,EAAG,GACb,MAAO,CAAE5B,MAAO4B,EAAG,GAAKA,EAAG,QAAK,EAAQtB,MAAM,GA9DFL,CAAK,CAACyB,EAAGC,MA6F7D,SAASM,EAAOC,EAAGR,GACf,IAAIS,EAAsB,mBAAXX,QAAyBU,EAAEV,OAAOC,UACjD,IAAKU,EACD,OAAOD,EACX,IAAmBE,EAAYjC,EAA3BkC,EAAIF,EAAEjD,KAAKgD,GAAOI,EAAK,GAC3B,IACI,WAAc,IAANZ,GAAgBA,KAAM,MAAQU,EAAIC,EAAEnC,QAAQI,MAChDgC,EAAGN,KAAKI,EAAEpC,OAElB,MAAOuC,GACHpC,EAAI,CAAEoC,MAAOA,GAEjB,QACI,IACQH,IAAMA,EAAE9B,OAAS6B,EAAIE,EAAU,SAC/BF,EAAEjD,KAAKmD,GAEf,QACI,GAAIlC,EACA,MAAMA,EAAEoC,OAGpB,OAAOD,EAEX,SAASE,IACL,IAAK,IAAIF,EAAK,GAAID,EAAI,EAAGA,EAAII,UAAUV,OAAQM,IAC3CC,EAAKA,EAAGI,OAAOT,EAAOQ,UAAUJ,KACpC,OAAOC,EA0FX,IAAIK,EAAgC,SAAUC,GAE1C,SAASD,IACL,IAAIE,EAAQD,EAAOnC,MAAMlC,KAAMiE,EAASC,aAAelE,KAEvD,OADAsE,EAAMC,qBAAuBD,EAAME,6BAC5BF,EA4NX,OAhOA1D,EAAUwD,EAAgBC,GAa1BD,EAAeK,KAAO,SAAUC,GAE5B,YADgB,IAAZA,IAAsBA,EAAU,IAC7B,IAAI7E,EAAQ8E,iBAAiBP,EAAgBM,GAC/CE,UAAU,cAAeF,EAAQG,aAAa,SAAUC,EAASC,GAAQ,OAAOlF,EAAQ8E,iBAAiBK,cAAcF,EAAQG,iBAAkBF,OAG1JX,EAAe3D,UAAUyE,WAAa,WAClC,OAAOlE,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,IAAImF,EAAUC,EACd,OAAOjD,EAAYnC,MAAM,SAAUqF,GAC/B,OAAQA,EAAG3C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAGD,OAFAH,EAAYE,EAAG1C,OAAQ4C,aAAa,YACpCH,EAAKrF,EAASyF,sBACP,CAAC,EAAaL,GACzB,KAAK,EAAG,MAAO,CAAC,EAAcC,EAAGlD,WAAM,EAAQ,CAACmD,EAAG1C,kBAMnEyB,EAAe3D,UAAUgF,OAAS,WAC9B,OAAOzE,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAK0F,iBAClC,KAAK,EAAG,MAAO,CAAC,IAAiBN,EAAGzC,gBAMpDyB,EAAe3D,UAAUwE,eAAiB,WACtC,OAAOjE,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAAG,MAAO,CAAC,EAAeF,EAAGzC,OAAQoC,gBAM1DX,EAAe3D,UAAUkF,MAAQ,WAC7B,OAAO3E,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAAG,MAAO,CAAC,EAAeF,EAAGzC,OAAQgD,iBAM1DvB,EAAe3D,UAAUmF,KAAO,WAC5B,OAAO5E,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAAG,MAAO,CAAC,EAAeF,EAAGzC,OAAQiD,gBAM1DxB,EAAe3D,UAAUoF,UAAY,WACjC,OAAO7E,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAAG,MAAO,CAAC,EAAeF,EAAGzC,OAAQkD,qBAM1DzB,EAAe3D,UAAUqF,KAAO,WAC5B,OAAO9E,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKyF,UAClC,KAAK,EACD,OAAOL,EAAGzC,OAAgB,CAAC,EAAa,GACjC,CAAC,EAAa3C,KAAKsF,QAC9B,KAAK,EAAG,MAAO,CAAC,EAAeF,EAAGzC,OAAQoD,SAC1C,KAAK,EAAG,MAAO,CAAC,WAMhC3B,EAAe3D,UAAUuF,MAAQ,WAC7B,OAAOhF,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,IAAIiG,EACJ,OAAO9D,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAK0F,iBAClC,KAAK,EAED,OADAO,EAAQb,EAAGzC,QAEA,CAAC,EAAcsD,EAAMC,SAASrG,EAAQsG,QAAQC,SAElD,CAAC,WAS5BhC,EAAe3D,UAAU4F,SAAW,SAAUC,GAE1C,YADgB,IAAZA,IAAsBA,EAAU,IAC7BtF,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,IAAIuG,EACJ,OAAOpE,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKwG,eAClC,KAAK,EAED,OADAD,EAAUnB,EAAGzC,QAEF,CAAC,EAAc3C,KAAKuE,qBAAqBkC,cAAcC,EAAmBjC,KAAKrE,OAAOuG,OAAOvG,OAAOuG,OAAO,GAAIL,GAAU,CAAEM,SAAU,IAAML,KAA5HvG,IAEnB,CAAC,EAAc,YAa1CoE,EAAe3D,UAAUoG,UAAY,SAAUC,GAE3C,IADA,IAAIC,EAAiB,GACZC,EAAK,EAAGA,EAAK9C,UAAUV,OAAQwD,IACpCD,EAAeC,EAAK,GAAK9C,UAAU8C,GAEvC,OAAOhG,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,IAAIiH,EAAOrH,EACX,OAAOuC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAK8F,QAClC,KAAK,EAED,OADAV,EAAGzC,OACI,CAAC,EAAa3C,KAAKqG,SAASS,IACvC,KAAK,EAED,KADAG,EAAQ7B,EAAGzC,QACAa,OACP,MAAM0D,MAAM,gCAAkCC,KAAKC,UAAUN,IAEjE,OAAMC,EAAevD,OAAe,CAAC,EAAa,GAC3C,CAAC,EAAayD,EAAM,GAAGlB,SAClC,KAAK,EAAG,MAAO,CAAC,EAAcX,EAAGzC,QACjC,KAAK,EAAG,MAAO,CAAC,EAAasE,EAAM,GAAGI,cACtC,KAAK,EAED,KADAzH,EAAOwF,EAAGzC,QAEN,MAAMuE,MAAM,iBAAmBC,KAAKC,UAAUN,GAAc,4BAEhE,MAAO,CAAC,EAAclH,EAAKiH,UAAU3E,MAAMtC,EAAMqE,EAAS8C,aAK9E3C,EAAe3D,UAAU6G,qBAAuB,WAC5C,OAAOtG,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,IAAIuG,EACJ,OAAOpE,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKwG,eAClC,KAAK,EAED,OADAD,EAAUnB,EAAGzC,OACN,CAAC,EAAc3C,KAAKwE,6BAA6B+C,iBAAiB,IAAMhB,YAMnGnC,EAAe3D,UAAUiF,cAAgB,WACrC,OAAO1E,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,IAAIuG,EACJ,OAAOpE,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKwG,eAClC,KAAK,EAED,MAAO,CAAC,GADRD,EAAUnB,EAAGzC,QACmB3C,KAAKuE,qBAAqBiD,mBAAmB,IAAMjB,EAAnDvG,GAAgE,cAMpHoE,EAAe3D,UAAU+F,YAAc,WACnC,OAAOxF,EAAUhB,UAAM,OAAQ,GAAQ,WAEnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAAG,MAAO,CAAC,EAAcF,EAAGzC,OAAQ4C,aAAa,kBACtD,KAAK,EAED,MAAO,CAAC,EADEH,EAAGzC,QACoB,cAK9CyB,EAjOwB,CAkOjCvE,EAAQ4H,kCAEVrD,EAAesD,aAAe,oBAE9B,IAAIhB,EAAoC,SAAUrC,GAE9C,SAASqC,IACL,OAAkB,OAAXrC,GAAmBA,EAAOnC,MAAMlC,KAAMkE,YAAclE,KAqH/D,OAvHAY,EAAU8F,EAAoBrC,GAU9BqC,EAAmBjC,KAAO,SAAUC,GAChC,IAAIJ,EAAQtE,KAEZ,YADgB,IAAZ0E,IAAsBA,EAAU,IAC7B,IAAI7E,EAAQ8E,iBAAiB+B,EAAoBhC,GACnDE,UAAU,OAAQF,EAAQK,MAAM,SAAUD,EAASC,GAAQ,OAAOlF,EAAQ8E,iBAAiBK,cAAcF,EAAQ6C,UAAW5C,MAC5HH,UAAU,aAAcF,EAAQkD,YAAY,SAAU9C,EAAS8C,GAAc,OAAO5G,EAAUsD,OAAO,OAAQ,GAAQ,WAAc,OAAOnC,EAAYnC,MAAM,SAAUoF,GACvK,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAaoC,EAAQ8C,cACrC,KAAK,EAAG,MAAO,CAAC,EAAexC,EAAGzC,SAAYiF,cAK1DlB,EAAmBjG,UAAUyE,WAAa,WACtC,OAAOlE,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,IAAImF,EAAUC,EACd,OAAOjD,EAAYnC,MAAM,SAAUqF,GAC/B,OAAQA,EAAG3C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAGD,OAFAH,EAAYE,EAAG1C,OAAQ4C,aAAa,YACpCH,EAAKrF,EAASyF,sBACP,CAAC,EAAaL,GACzB,KAAK,EAAG,MAAO,CAAC,EAAcC,EAAGlD,WAAM,EAAQ,CAACmD,EAAG1C,kBAMnE+D,EAAmBjG,UAAUkH,QAAU,WACnC,OAAO3G,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAAG,MAAO,CAAC,EAAeF,EAAGzC,OAAQoC,gBAM1D2B,EAAmBjG,UAAUkF,MAAQ,WACjC,OAAO3E,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAAG,MAAO,CAAC,EAAeF,EAAGzC,OAAQgD,iBAM1De,EAAmBjG,UAAUmF,KAAO,WAChC,OAAO5E,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAAG,MAAO,CAAC,EAAeF,EAAGzC,OAAQiD,gBAM1Dc,EAAmBjG,UAAUoF,UAAY,WACrC,OAAO7E,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAAG,MAAO,CAAC,EAAeF,EAAGzC,OAAQkD,qBAM1Da,EAAmBjG,UAAUsF,MAAQ,WACjC,OAAO/E,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAAG,MAAO,CAAC,EAAeF,EAAGzC,OAAQoD,iBAM1DW,EAAmBjG,UAAUmH,WAAa,WACtC,OAAO5G,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAKsF,QAClC,KAAK,EAAG,MAAO,CAAC,EAAeF,EAAGzC,OAAQkF,gBAAgBzD,EAAesD,uBAMzFhB,EAAmBjG,UAAU4G,WAAa,WACtC,OAAOrG,EAAUhB,UAAM,OAAQ,GAAQ,WACnC,OAAOmC,EAAYnC,MAAM,SAAUoF,GAC/B,OAAQA,EAAG1C,OACP,KAAK,EAAG,MAAO,CAAC,EAAa1C,KAAK4H,cAClC,KAAK,EACD,OAAIxC,EAAGzC,OACI,CAAC,EAAc,IAAIyB,EAAepE,KAAK8H,iBAE3C,CAAC,EAAc,cAKnCpB,EAxH4B,CAyHrC7G,EAAQ4H,kCAEVf,EAAmBgB,aAAe;;;;;;;;;;;;;;;AAkBlCtI,EAAQgF,eAAiBA,EACzBhF,EAAQsH,mBAAqBA,EAE7BtG,OAAO2H,eAAe3I,EAAS,aAAc,CAAEqC,OAAO","sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/cdk/testing'), require('@angular/cdk/coercion')) :\n typeof define === 'function' && define.amd ? define('@angular/material/menu/testing', ['exports', '@angular/cdk/testing', '@angular/cdk/coercion'], factory) :\n (global = global || self, factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.menu = global.ng.material.menu || {}, global.ng.material.menu.testing = {}), global.ng.cdk.testing, global.ng.cdk.coercion));\n}(this, (function (exports, testing, coercion) { 'use strict';\n\n /*! *****************************************************************************\n Copyright (c) Microsoft Corporation.\n\n Permission to use, copy, modify, and/or distribute this software for any\n purpose with or without fee is hereby granted.\n\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n PERFORMANCE OF THIS SOFTWARE.\n ***************************************************************************** */\n /* global Reflect, Promise */\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b)\n if (Object.prototype.hasOwnProperty.call(b, p))\n d[p] = b[p]; };\n return extendStatics(d, b);\n };\n function __extends(d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n }\n var __assign = function () {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s)\n if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n };\n function __rest(s, e) {\n var t = {};\n for (var p in s)\n if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n }\n function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\")\n r = Reflect.decorate(decorators, target, key, desc);\n else\n for (var i = decorators.length - 1; i >= 0; i--)\n if (d = decorators[i])\n r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n }\n function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); };\n }\n function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\")\n return Reflect.metadata(metadataKey, metadataValue);\n }\n function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try {\n step(generator.next(value));\n }\n catch (e) {\n reject(e);\n } }\n function rejected(value) { try {\n step(generator[\"throw\"](value));\n }\n catch (e) {\n reject(e);\n } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n }\n function __generator(thisArg, body) {\n var _ = { label: 0, sent: function () { if (t[0] & 1)\n throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function () { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f)\n throw new TypeError(\"Generator is already executing.\");\n while (_)\n try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)\n return t;\n if (y = 0, t)\n op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return { value: op[1], done: false };\n case 5:\n _.label++;\n y = op[1];\n op = [0];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2])\n _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n }\n catch (e) {\n op = [6, e];\n y = 0;\n }\n finally {\n f = t = 0;\n }\n if (op[0] & 5)\n throw op[1];\n return { value: op[0] ? op[1] : void 0, done: true };\n }\n }\n var __createBinding = Object.create ? (function (o, m, k, k2) {\n if (k2 === undefined)\n k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });\n }) : (function (o, m, k, k2) {\n if (k2 === undefined)\n k2 = k;\n o[k2] = m[k];\n });\n function __exportStar(m, o) {\n for (var p in m)\n if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p))\n __createBinding(o, m, p);\n }\n function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m)\n return m.call(o);\n if (o && typeof o.length === \"number\")\n return {\n next: function () {\n if (o && i >= o.length)\n o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n }\n function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m)\n return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done)\n ar.push(r.value);\n }\n catch (error) {\n e = { error: error };\n }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"]))\n m.call(i);\n }\n finally {\n if (e)\n throw e.error;\n }\n }\n return ar;\n }\n function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n }\n function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++)\n s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n }\n ;\n function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n }\n function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator)\n throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n])\n i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try {\n step(g[n](v));\n }\n catch (e) {\n settle(q[0][3], e);\n } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length)\n resume(q[0][0], q[0][1]); }\n }\n function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\n }\n function __asyncValues(o) {\n if (!Symbol.asyncIterator)\n throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }\n }\n function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) {\n Object.defineProperty(cooked, \"raw\", { value: raw });\n }\n else {\n cooked.raw = raw;\n }\n return cooked;\n }\n ;\n var __setModuleDefault = Object.create ? (function (o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n }) : function (o, v) {\n o[\"default\"] = v;\n };\n function __importStar(mod) {\n if (mod && mod.__esModule)\n return mod;\n var result = {};\n if (mod != null)\n for (var k in mod)\n if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k))\n __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n }\n function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n }\n function __classPrivateFieldGet(receiver, privateMap) {\n if (!privateMap.has(receiver)) {\n throw new TypeError(\"attempted to get private field on non-instance\");\n }\n return privateMap.get(receiver);\n }\n function __classPrivateFieldSet(receiver, privateMap, value) {\n if (!privateMap.has(receiver)) {\n throw new TypeError(\"attempted to set private field on non-instance\");\n }\n privateMap.set(receiver, value);\n return value;\n }\n\n /** Harness for interacting with a standard mat-menu in tests. */\n var MatMenuHarness = /** @class */ (function (_super) {\n __extends(MatMenuHarness, _super);\n function MatMenuHarness() {\n var _this = _super.apply(this, __spread(arguments)) || this;\n _this._documentRootLocator = _this.documentRootLocatorFactory();\n return _this;\n }\n // TODO: potentially extend MatButtonHarness\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatMenuHarness` that meets certain\n * criteria.\n * @param options Options for filtering which menu instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n MatMenuHarness.with = function (options) {\n if (options === void 0) { options = {}; }\n return new testing.HarnessPredicate(MatMenuHarness, options)\n .addOption('triggerText', options.triggerText, function (harness, text) { return testing.HarnessPredicate.stringMatches(harness.getTriggerText(), text); });\n };\n /** Whether the menu is disabled. */\n MatMenuHarness.prototype.isDisabled = function () {\n return __awaiter(this, void 0, void 0, function () {\n var disabled, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1:\n disabled = (_b.sent()).getAttribute('disabled');\n _a = coercion.coerceBooleanProperty;\n return [4 /*yield*/, disabled];\n case 2: return [2 /*return*/, _a.apply(void 0, [_b.sent()])];\n }\n });\n });\n };\n /** Whether the menu is open. */\n MatMenuHarness.prototype.isOpen = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._getMenuPanel()];\n case 1: return [2 /*return*/, !!(_a.sent())];\n }\n });\n });\n };\n /** Gets the text of the menu's trigger element. */\n MatMenuHarness.prototype.getTriggerText = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).text()];\n }\n });\n });\n };\n /** Focuses the menu. */\n MatMenuHarness.prototype.focus = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).focus()];\n }\n });\n });\n };\n /** Blurs the menu. */\n MatMenuHarness.prototype.blur = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).blur()];\n }\n });\n });\n };\n /** Whether the menu is focused. */\n MatMenuHarness.prototype.isFocused = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).isFocused()];\n }\n });\n });\n };\n /** Opens the menu. */\n MatMenuHarness.prototype.open = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.isOpen()];\n case 1:\n if (!!(_a.sent())) return [3 /*break*/, 3];\n return [4 /*yield*/, this.host()];\n case 2: return [2 /*return*/, (_a.sent()).click()];\n case 3: return [2 /*return*/];\n }\n });\n });\n };\n /** Closes the menu. */\n MatMenuHarness.prototype.close = function () {\n return __awaiter(this, void 0, void 0, function () {\n var panel;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._getMenuPanel()];\n case 1:\n panel = _a.sent();\n if (panel) {\n return [2 /*return*/, panel.sendKeys(testing.TestKey.ESCAPE)];\n }\n return [2 /*return*/];\n }\n });\n });\n };\n /**\n * Gets a list of `MatMenuItemHarness` representing the items in the menu.\n * @param filters Optionally filters which menu items are included.\n */\n MatMenuHarness.prototype.getItems = function (filters) {\n if (filters === void 0) { filters = {}; }\n return __awaiter(this, void 0, void 0, function () {\n var panelId;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._getPanelId()];\n case 1:\n panelId = _a.sent();\n if (panelId) {\n return [2 /*return*/, this._documentRootLocator.locatorForAll(MatMenuItemHarness.with(Object.assign(Object.assign({}, filters), { ancestor: \"#\" + panelId })))()];\n }\n return [2 /*return*/, []];\n }\n });\n });\n };\n /**\n * Clicks an item in the menu, and optionally continues clicking items in subsequent sub-menus.\n * @param itemFilter A filter used to represent which item in the menu should be clicked. The\n * first matching menu item will be clicked.\n * @param subItemFilters A list of filters representing the items to click in any subsequent\n * sub-menus. The first item in the sub-menu matching the corresponding filter in\n * `subItemFilters` will be clicked.\n */\n MatMenuHarness.prototype.clickItem = function (itemFilter) {\n var subItemFilters = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n subItemFilters[_i - 1] = arguments[_i];\n }\n return __awaiter(this, void 0, void 0, function () {\n var items, menu;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.open()];\n case 1:\n _a.sent();\n return [4 /*yield*/, this.getItems(itemFilter)];\n case 2:\n items = _a.sent();\n if (!items.length) {\n throw Error(\"Could not find item matching \" + JSON.stringify(itemFilter));\n }\n if (!!subItemFilters.length) return [3 /*break*/, 4];\n return [4 /*yield*/, items[0].click()];\n case 3: return [2 /*return*/, _a.sent()];\n case 4: return [4 /*yield*/, items[0].getSubmenu()];\n case 5:\n menu = _a.sent();\n if (!menu) {\n throw Error(\"Item matching \" + JSON.stringify(itemFilter) + \" does not have a submenu\");\n }\n return [2 /*return*/, menu.clickItem.apply(menu, __spread(subItemFilters))];\n }\n });\n });\n };\n MatMenuHarness.prototype.getRootHarnessLoader = function () {\n return __awaiter(this, void 0, void 0, function () {\n var panelId;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._getPanelId()];\n case 1:\n panelId = _a.sent();\n return [2 /*return*/, this.documentRootLocatorFactory().harnessLoaderFor(\"#\" + panelId)];\n }\n });\n });\n };\n /** Gets the menu panel associated with this menu. */\n MatMenuHarness.prototype._getMenuPanel = function () {\n return __awaiter(this, void 0, void 0, function () {\n var panelId;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._getPanelId()];\n case 1:\n panelId = _a.sent();\n return [2 /*return*/, panelId ? this._documentRootLocator.locatorForOptional(\"#\" + panelId)() : null];\n }\n });\n });\n };\n /** Gets the id of the menu panel associated with this menu. */\n MatMenuHarness.prototype._getPanelId = function () {\n return __awaiter(this, void 0, void 0, function () {\n var panelId;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [4 /*yield*/, (_a.sent()).getAttribute('aria-controls')];\n case 2:\n panelId = _a.sent();\n return [2 /*return*/, panelId || null];\n }\n });\n });\n };\n return MatMenuHarness;\n }(testing.ContentContainerComponentHarness));\n /** The selector for the host element of a `MatMenu` instance. */\n MatMenuHarness.hostSelector = '.mat-menu-trigger';\n /** Harness for interacting with a standard mat-menu-item in tests. */\n var MatMenuItemHarness = /** @class */ (function (_super) {\n __extends(MatMenuItemHarness, _super);\n function MatMenuItemHarness() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatMenuItemHarness` that meets\n * certain criteria.\n * @param options Options for filtering which menu item instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n MatMenuItemHarness.with = function (options) {\n var _this = this;\n if (options === void 0) { options = {}; }\n return new testing.HarnessPredicate(MatMenuItemHarness, options)\n .addOption('text', options.text, function (harness, text) { return testing.HarnessPredicate.stringMatches(harness.getText(), text); })\n .addOption('hasSubmenu', options.hasSubmenu, function (harness, hasSubmenu) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, harness.hasSubmenu()];\n case 1: return [2 /*return*/, (_a.sent()) === hasSubmenu];\n }\n }); }); });\n };\n /** Whether the menu is disabled. */\n MatMenuItemHarness.prototype.isDisabled = function () {\n return __awaiter(this, void 0, void 0, function () {\n var disabled, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1:\n disabled = (_b.sent()).getAttribute('disabled');\n _a = coercion.coerceBooleanProperty;\n return [4 /*yield*/, disabled];\n case 2: return [2 /*return*/, _a.apply(void 0, [_b.sent()])];\n }\n });\n });\n };\n /** Gets the text of the menu item. */\n MatMenuItemHarness.prototype.getText = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).text()];\n }\n });\n });\n };\n /** Focuses the menu item. */\n MatMenuItemHarness.prototype.focus = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).focus()];\n }\n });\n });\n };\n /** Blurs the menu item. */\n MatMenuItemHarness.prototype.blur = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).blur()];\n }\n });\n });\n };\n /** Whether the menu item is focused. */\n MatMenuItemHarness.prototype.isFocused = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).isFocused()];\n }\n });\n });\n };\n /** Clicks the menu item. */\n MatMenuItemHarness.prototype.click = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).click()];\n }\n });\n });\n };\n /** Whether this item has a submenu. */\n MatMenuItemHarness.prototype.hasSubmenu = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).matchesSelector(MatMenuHarness.hostSelector)];\n }\n });\n });\n };\n /** Gets the submenu associated with this menu item, or null if none. */\n MatMenuItemHarness.prototype.getSubmenu = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.hasSubmenu()];\n case 1:\n if (_a.sent()) {\n return [2 /*return*/, new MatMenuHarness(this.locatorFactory)];\n }\n return [2 /*return*/, null];\n }\n });\n });\n };\n return MatMenuItemHarness;\n }(testing.ContentContainerComponentHarness));\n /** The selector for the host element of a `MatMenuItem` instance. */\n MatMenuItemHarness.hostSelector = '.mat-menu-item';\n\n /**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n /**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n exports.MatMenuHarness = MatMenuHarness;\n exports.MatMenuItemHarness = MatMenuItemHarness;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=material-menu-testing.umd.js.map\n"]}
1
+ {"version":3,"sources":["src/material/material-menu-testing.umd.js"],"names":["global","factory","exports","module","require","define","amd","self","ng","material","menu","testing","cdk","coercion","this","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends","TypeError","String","__","constructor","create","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","adopt","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","n","v","op","pop","length","push","__read","o","m","r","i","ar","error","__spread","arguments","concat","_MatMenuHarnessBase","_super","_this","_documentRootLocator","documentRootLocatorFactory","isDisabled","disabled","_a","_b","host","getAttribute","coerceBooleanProperty","isOpen","_getMenuPanel","getTriggerText","text","focus","blur","isFocused","open","click","close","panel","sendKeys","TestKey","ESCAPE","getItems","filters","panelId","_getPanelId","locatorForAll","_itemClass","with","assign","ancestor","clickItem","itemFilter","subItemFilters","_i","items","Error","JSON","stringify","getSubmenu","getRootHarnessLoader","harnessLoaderFor","locatorForOptional","ContentContainerComponentHarness","_MatMenuItemHarnessBase","getText","hasSubmenu","matchesSelector","_menuClass","hostSelector","locatorFactory","MatMenuHarness","MatMenuItemHarness","options","HarnessPredicate","addOption","triggerText","harness","stringMatches","defineProperty"],"mappings":"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","sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/cdk/testing'), require('@angular/cdk/coercion')) :\n typeof define === 'function' && define.amd ? define('@angular/material/menu/testing', ['exports', '@angular/cdk/testing', '@angular/cdk/coercion'], factory) :\n (global = global || self, factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.menu = global.ng.material.menu || {}, global.ng.material.menu.testing = {}), global.ng.cdk.testing, global.ng.cdk.coercion));\n}(this, (function (exports, testing, coercion) { 'use strict';\n\n /*! *****************************************************************************\n Copyright (c) Microsoft Corporation.\n\n Permission to use, copy, modify, and/or distribute this software for any\n purpose with or without fee is hereby granted.\n\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n PERFORMANCE OF THIS SOFTWARE.\n ***************************************************************************** */\n /* global Reflect, Promise */\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b)\n if (Object.prototype.hasOwnProperty.call(b, p))\n d[p] = b[p]; };\n return extendStatics(d, b);\n };\n function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n }\n var __assign = function () {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s)\n if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n };\n function __rest(s, e) {\n var t = {};\n for (var p in s)\n if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n }\n function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\")\n r = Reflect.decorate(decorators, target, key, desc);\n else\n for (var i = decorators.length - 1; i >= 0; i--)\n if (d = decorators[i])\n r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n }\n function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); };\n }\n function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\")\n return Reflect.metadata(metadataKey, metadataValue);\n }\n function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try {\n step(generator.next(value));\n }\n catch (e) {\n reject(e);\n } }\n function rejected(value) { try {\n step(generator[\"throw\"](value));\n }\n catch (e) {\n reject(e);\n } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n }\n function __generator(thisArg, body) {\n var _ = { label: 0, sent: function () { if (t[0] & 1)\n throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function () { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f)\n throw new TypeError(\"Generator is already executing.\");\n while (_)\n try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)\n return t;\n if (y = 0, t)\n op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return { value: op[1], done: false };\n case 5:\n _.label++;\n y = op[1];\n op = [0];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2])\n _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n }\n catch (e) {\n op = [6, e];\n y = 0;\n }\n finally {\n f = t = 0;\n }\n if (op[0] & 5)\n throw op[1];\n return { value: op[0] ? op[1] : void 0, done: true };\n }\n }\n var __createBinding = Object.create ? (function (o, m, k, k2) {\n if (k2 === undefined)\n k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });\n }) : (function (o, m, k, k2) {\n if (k2 === undefined)\n k2 = k;\n o[k2] = m[k];\n });\n function __exportStar(m, o) {\n for (var p in m)\n if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p))\n __createBinding(o, m, p);\n }\n function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m)\n return m.call(o);\n if (o && typeof o.length === \"number\")\n return {\n next: function () {\n if (o && i >= o.length)\n o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n }\n function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m)\n return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done)\n ar.push(r.value);\n }\n catch (error) {\n e = { error: error };\n }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"]))\n m.call(i);\n }\n finally {\n if (e)\n throw e.error;\n }\n }\n return ar;\n }\n /** @deprecated */\n function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n }\n /** @deprecated */\n function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++)\n s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n }\n function __spreadArray(to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n }\n function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n }\n function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator)\n throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n])\n i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try {\n step(g[n](v));\n }\n catch (e) {\n settle(q[0][3], e);\n } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length)\n resume(q[0][0], q[0][1]); }\n }\n function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\n }\n function __asyncValues(o) {\n if (!Symbol.asyncIterator)\n throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }\n }\n function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) {\n Object.defineProperty(cooked, \"raw\", { value: raw });\n }\n else {\n cooked.raw = raw;\n }\n return cooked;\n }\n ;\n var __setModuleDefault = Object.create ? (function (o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n }) : function (o, v) {\n o[\"default\"] = v;\n };\n function __importStar(mod) {\n if (mod && mod.__esModule)\n return mod;\n var result = {};\n if (mod != null)\n for (var k in mod)\n if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k))\n __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n }\n function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n }\n function __classPrivateFieldGet(receiver, privateMap) {\n if (!privateMap.has(receiver)) {\n throw new TypeError(\"attempted to get private field on non-instance\");\n }\n return privateMap.get(receiver);\n }\n function __classPrivateFieldSet(receiver, privateMap, value) {\n if (!privateMap.has(receiver)) {\n throw new TypeError(\"attempted to set private field on non-instance\");\n }\n privateMap.set(receiver, value);\n return value;\n }\n\n var _MatMenuHarnessBase = /** @class */ (function (_super) {\n __extends(_MatMenuHarnessBase, _super);\n function _MatMenuHarnessBase() {\n var _this = _super.apply(this, __spread(arguments)) || this;\n _this._documentRootLocator = _this.documentRootLocatorFactory();\n return _this;\n }\n // TODO: potentially extend MatButtonHarness\n /** Whether the menu is disabled. */\n _MatMenuHarnessBase.prototype.isDisabled = function () {\n return __awaiter(this, void 0, void 0, function () {\n var disabled, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1:\n disabled = (_b.sent()).getAttribute('disabled');\n _a = coercion.coerceBooleanProperty;\n return [4 /*yield*/, disabled];\n case 2: return [2 /*return*/, _a.apply(void 0, [_b.sent()])];\n }\n });\n });\n };\n /** Whether the menu is open. */\n _MatMenuHarnessBase.prototype.isOpen = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._getMenuPanel()];\n case 1: return [2 /*return*/, !!(_a.sent())];\n }\n });\n });\n };\n /** Gets the text of the menu's trigger element. */\n _MatMenuHarnessBase.prototype.getTriggerText = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).text()];\n }\n });\n });\n };\n /** Focuses the menu. */\n _MatMenuHarnessBase.prototype.focus = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).focus()];\n }\n });\n });\n };\n /** Blurs the menu. */\n _MatMenuHarnessBase.prototype.blur = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).blur()];\n }\n });\n });\n };\n /** Whether the menu is focused. */\n _MatMenuHarnessBase.prototype.isFocused = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).isFocused()];\n }\n });\n });\n };\n /** Opens the menu. */\n _MatMenuHarnessBase.prototype.open = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.isOpen()];\n case 1:\n if (!!(_a.sent())) return [3 /*break*/, 3];\n return [4 /*yield*/, this.host()];\n case 2: return [2 /*return*/, (_a.sent()).click()];\n case 3: return [2 /*return*/];\n }\n });\n });\n };\n /** Closes the menu. */\n _MatMenuHarnessBase.prototype.close = function () {\n return __awaiter(this, void 0, void 0, function () {\n var panel;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._getMenuPanel()];\n case 1:\n panel = _a.sent();\n if (panel) {\n return [2 /*return*/, panel.sendKeys(testing.TestKey.ESCAPE)];\n }\n return [2 /*return*/];\n }\n });\n });\n };\n /**\n * Gets a list of `MatMenuItemHarness` representing the items in the menu.\n * @param filters Optionally filters which menu items are included.\n */\n _MatMenuHarnessBase.prototype.getItems = function (filters) {\n return __awaiter(this, void 0, void 0, function () {\n var panelId;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._getPanelId()];\n case 1:\n panelId = _a.sent();\n if (panelId) {\n return [2 /*return*/, this._documentRootLocator.locatorForAll(this._itemClass.with(Object.assign(Object.assign({}, (filters || {})), { ancestor: \"#\" + panelId })))()];\n }\n return [2 /*return*/, []];\n }\n });\n });\n };\n /**\n * Clicks an item in the menu, and optionally continues clicking items in subsequent sub-menus.\n * @param itemFilter A filter used to represent which item in the menu should be clicked. The\n * first matching menu item will be clicked.\n * @param subItemFilters A list of filters representing the items to click in any subsequent\n * sub-menus. The first item in the sub-menu matching the corresponding filter in\n * `subItemFilters` will be clicked.\n */\n _MatMenuHarnessBase.prototype.clickItem = function (itemFilter) {\n var subItemFilters = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n subItemFilters[_i - 1] = arguments[_i];\n }\n return __awaiter(this, void 0, void 0, function () {\n var items, menu;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.open()];\n case 1:\n _a.sent();\n return [4 /*yield*/, this.getItems(itemFilter)];\n case 2:\n items = _a.sent();\n if (!items.length) {\n throw Error(\"Could not find item matching \" + JSON.stringify(itemFilter));\n }\n if (!!subItemFilters.length) return [3 /*break*/, 4];\n return [4 /*yield*/, items[0].click()];\n case 3: return [2 /*return*/, _a.sent()];\n case 4: return [4 /*yield*/, items[0].getSubmenu()];\n case 5:\n menu = _a.sent();\n if (!menu) {\n throw Error(\"Item matching \" + JSON.stringify(itemFilter) + \" does not have a submenu\");\n }\n return [2 /*return*/, menu.clickItem.apply(menu, __spread(subItemFilters))];\n }\n });\n });\n };\n _MatMenuHarnessBase.prototype.getRootHarnessLoader = function () {\n return __awaiter(this, void 0, void 0, function () {\n var panelId;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._getPanelId()];\n case 1:\n panelId = _a.sent();\n return [2 /*return*/, this.documentRootLocatorFactory().harnessLoaderFor(\"#\" + panelId)];\n }\n });\n });\n };\n /** Gets the menu panel associated with this menu. */\n _MatMenuHarnessBase.prototype._getMenuPanel = function () {\n return __awaiter(this, void 0, void 0, function () {\n var panelId;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this._getPanelId()];\n case 1:\n panelId = _a.sent();\n return [2 /*return*/, panelId ? this._documentRootLocator.locatorForOptional(\"#\" + panelId)() : null];\n }\n });\n });\n };\n /** Gets the id of the menu panel associated with this menu. */\n _MatMenuHarnessBase.prototype._getPanelId = function () {\n return __awaiter(this, void 0, void 0, function () {\n var panelId;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [4 /*yield*/, (_a.sent()).getAttribute('aria-controls')];\n case 2:\n panelId = _a.sent();\n return [2 /*return*/, panelId || null];\n }\n });\n });\n };\n return _MatMenuHarnessBase;\n }(testing.ContentContainerComponentHarness));\n var _MatMenuItemHarnessBase = /** @class */ (function (_super) {\n __extends(_MatMenuItemHarnessBase, _super);\n function _MatMenuItemHarnessBase() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n /** Whether the menu is disabled. */\n _MatMenuItemHarnessBase.prototype.isDisabled = function () {\n return __awaiter(this, void 0, void 0, function () {\n var disabled, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1:\n disabled = (_b.sent()).getAttribute('disabled');\n _a = coercion.coerceBooleanProperty;\n return [4 /*yield*/, disabled];\n case 2: return [2 /*return*/, _a.apply(void 0, [_b.sent()])];\n }\n });\n });\n };\n /** Gets the text of the menu item. */\n _MatMenuItemHarnessBase.prototype.getText = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).text()];\n }\n });\n });\n };\n /** Focuses the menu item. */\n _MatMenuItemHarnessBase.prototype.focus = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).focus()];\n }\n });\n });\n };\n /** Blurs the menu item. */\n _MatMenuItemHarnessBase.prototype.blur = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).blur()];\n }\n });\n });\n };\n /** Whether the menu item is focused. */\n _MatMenuItemHarnessBase.prototype.isFocused = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).isFocused()];\n }\n });\n });\n };\n /** Clicks the menu item. */\n _MatMenuItemHarnessBase.prototype.click = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).click()];\n }\n });\n });\n };\n /** Whether this item has a submenu. */\n _MatMenuItemHarnessBase.prototype.hasSubmenu = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).matchesSelector(this._menuClass.hostSelector)];\n }\n });\n });\n };\n /** Gets the submenu associated with this menu item, or null if none. */\n _MatMenuItemHarnessBase.prototype.getSubmenu = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.hasSubmenu()];\n case 1:\n if (_a.sent()) {\n return [2 /*return*/, new this._menuClass(this.locatorFactory)];\n }\n return [2 /*return*/, null];\n }\n });\n });\n };\n return _MatMenuItemHarnessBase;\n }(testing.ContentContainerComponentHarness));\n /** Harness for interacting with a standard mat-menu in tests. */\n var MatMenuHarness = /** @class */ (function (_super) {\n __extends(MatMenuHarness, _super);\n function MatMenuHarness() {\n var _this = _super.apply(this, __spread(arguments)) || this;\n _this._itemClass = MatMenuItemHarness;\n return _this;\n }\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatMenuHarness` that meets certain\n * criteria.\n * @param options Options for filtering which menu instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n MatMenuHarness.with = function (options) {\n if (options === void 0) { options = {}; }\n return new testing.HarnessPredicate(MatMenuHarness, options)\n .addOption('triggerText', options.triggerText, function (harness, text) { return testing.HarnessPredicate.stringMatches(harness.getTriggerText(), text); });\n };\n return MatMenuHarness;\n }(_MatMenuHarnessBase));\n /** The selector for the host element of a `MatMenu` instance. */\n MatMenuHarness.hostSelector = '.mat-menu-trigger';\n /** Harness for interacting with a standard mat-menu-item in tests. */\n var MatMenuItemHarness = /** @class */ (function (_super) {\n __extends(MatMenuItemHarness, _super);\n function MatMenuItemHarness() {\n var _this = _super.apply(this, __spread(arguments)) || this;\n _this._menuClass = MatMenuHarness;\n return _this;\n }\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatMenuItemHarness` that meets\n * certain criteria.\n * @param options Options for filtering which menu item instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n MatMenuItemHarness.with = function (options) {\n var _this = this;\n if (options === void 0) { options = {}; }\n return new testing.HarnessPredicate(MatMenuItemHarness, options)\n .addOption('text', options.text, function (harness, text) { return testing.HarnessPredicate.stringMatches(harness.getText(), text); })\n .addOption('hasSubmenu', options.hasSubmenu, function (harness, hasSubmenu) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, harness.hasSubmenu()];\n case 1: return [2 /*return*/, (_a.sent()) === hasSubmenu];\n }\n }); }); });\n };\n return MatMenuItemHarness;\n }(_MatMenuItemHarnessBase));\n /** The selector for the host element of a `MatMenuItem` instance. */\n MatMenuItemHarness.hostSelector = '.mat-menu-item';\n\n /**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n /**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n exports.MatMenuHarness = MatMenuHarness;\n exports.MatMenuItemHarness = MatMenuItemHarness;\n exports._MatMenuHarnessBase = _MatMenuHarnessBase;\n exports._MatMenuItemHarnessBase = _MatMenuItemHarnessBase;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=material-menu-testing.umd.js.map\n"]}
@@ -28,6 +28,8 @@
28
28
  return extendStatics(d, b);
29
29
  };
30
30
  function __extends(d, b) {
31
+ if (typeof b !== "function" && b !== null)
32
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
31
33
  extendStatics(d, b);
32
34
  function __() { this.constructor = d; }
33
35
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
@@ -213,11 +215,13 @@
213
215
  }
214
216
  return ar;
215
217
  }
218
+ /** @deprecated */
216
219
  function __spread() {
217
220
  for (var ar = [], i = 0; i < arguments.length; i++)
218
221
  ar = ar.concat(__read(arguments[i]));
219
222
  return ar;
220
223
  }
224
+ /** @deprecated */
221
225
  function __spreadArrays() {
222
226
  for (var s = 0, i = 0, il = arguments.length; i < il; i++)
223
227
  s += arguments[i].length;
@@ -226,7 +230,11 @@
226
230
  r[k] = a[j];
227
231
  return r;
228
232
  }
229
- ;
233
+ function __spreadArray(to, from) {
234
+ for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
235
+ to[j] = from[i];
236
+ return to;
237
+ }
230
238
  function __await(v) {
231
239
  return this instanceof __await ? (this.v = v, this) : new __await(v);
232
240
  }
@@ -550,8 +558,7 @@
550
558
  }
551
559
  /** Focuses the menu item. */
552
560
  MatMenuItem.prototype.focus = function (origin, options) {
553
- if (origin === void 0) { origin = 'program'; }
554
- if (this._focusMonitor) {
561
+ if (this._focusMonitor && origin) {
555
562
  this._focusMonitor.focusVia(this._getHostElement(), origin, options);
556
563
  }
557
564
  else {
@@ -1041,7 +1048,7 @@
1041
1048
  providers: [
1042
1049
  { provide: MAT_MENU_PANEL, useExisting: MatMenu },
1043
1050
  ],
1044
- 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"]
1051
+ 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{margin-top:1px}.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"]
1045
1052
  },] }
1046
1053
  ];
1047
1054
  MatMenu.ctorParameters = function () { return [
@@ -1095,7 +1102,7 @@
1095
1102
  this._handleTouchStart = function () { return _this._openedBy = 'touch'; };
1096
1103
  // Tracking input type is necessary so it's possible to only auto-focus
1097
1104
  // the first item of the list when the menu is opened via the keyboard
1098
- this._openedBy = null;
1105
+ this._openedBy = undefined;
1099
1106
  /**
1100
1107
  * Whether focus should be restored when the menu is closed.
1101
1108
  * Note that disabling this option can have accessibility implications
@@ -1154,7 +1161,7 @@
1154
1161
  throwMatMenuRecursiveError();
1155
1162
  }
1156
1163
  this._menuCloseSubscription = menu.close.subscribe(function (reason) {
1157
- _this._destroyMenu();
1164
+ _this._destroyMenu(reason);
1158
1165
  // If a click closed the menu, we should close the entire chain of nested menus.
1159
1166
  if ((reason === 'click' || reason === 'tab') && _this._parentMaterialMenu) {
1160
1167
  _this._parentMaterialMenu.closed.emit(reason);
@@ -1234,8 +1241,7 @@
1234
1241
  * @param origin Source of the menu trigger's focus.
1235
1242
  */
1236
1243
  MatMenuTrigger.prototype.focus = function (origin, options) {
1237
- if (origin === void 0) { origin = 'program'; }
1238
- if (this._focusMonitor) {
1244
+ if (this._focusMonitor && origin) {
1239
1245
  this._focusMonitor.focusVia(this._element, origin, options);
1240
1246
  }
1241
1247
  else {
@@ -1243,7 +1249,7 @@
1243
1249
  }
1244
1250
  };
1245
1251
  /** Closes the menu and does the necessary cleanup. */
1246
- MatMenuTrigger.prototype._destroyMenu = function () {
1252
+ MatMenuTrigger.prototype._destroyMenu = function (reason) {
1247
1253
  var _this = this;
1248
1254
  if (!this._overlayRef || !this.menuOpen) {
1249
1255
  return;
@@ -1251,7 +1257,14 @@
1251
1257
  var menu = this.menu;
1252
1258
  this._closingActionsSubscription.unsubscribe();
1253
1259
  this._overlayRef.detach();
1254
- this._restoreFocus();
1260
+ // Always restore focus if the user is navigating using the keyboard or the menu was opened
1261
+ // programmatically. We don't restore for non-root triggers, because it can prevent focus
1262
+ // from making it back to the root trigger when closing a long chain of menus by clicking
1263
+ // on the backdrop.
1264
+ if (this.restoreFocus && (reason === 'keydown' || !this._openedBy || !this.triggersSubmenu())) {
1265
+ this.focus(this._openedBy);
1266
+ }
1267
+ this._openedBy = undefined;
1255
1268
  if (menu instanceof _MatMenuBase) {
1256
1269
  menu._resetAnimation();
1257
1270
  if (menu.lazyContent) {
@@ -1300,23 +1313,6 @@
1300
1313
  this.menu.setElevation(depth);
1301
1314
  }
1302
1315
  };
1303
- /** Restores focus to the element that was focused before the menu was open. */
1304
- MatMenuTrigger.prototype._restoreFocus = function () {
1305
- // We should reset focus if the user is navigating using a keyboard or
1306
- // if we have a top-level trigger which might cause focus to be lost
1307
- // when clicking on the backdrop.
1308
- if (this.restoreFocus) {
1309
- if (!this._openedBy) {
1310
- // Note that the focus style will show up both for `program` and
1311
- // `keyboard` so we don't have to specify which one it is.
1312
- this.focus();
1313
- }
1314
- else if (!this.triggersSubmenu()) {
1315
- this.focus(this._openedBy);
1316
- }
1317
- }
1318
- this._openedBy = null;
1319
- };
1320
1316
  // set state rather than toggle to support triggers sharing a menu
1321
1317
  MatMenuTrigger.prototype._setIsMenuOpen = function (isOpen) {
1322
1318
  this._menuOpen = isOpen;
@@ -1437,7 +1433,7 @@
1437
1433
  if (!a11y.isFakeMousedownFromScreenReader(event)) {
1438
1434
  // Since right or middle button clicks won't trigger the `click` event,
1439
1435
  // we shouldn't consider the menu as opened by mouse in those cases.
1440
- this._openedBy = event.button === 0 ? 'mouse' : null;
1436
+ this._openedBy = event.button === 0 ? 'mouse' : undefined;
1441
1437
  // Since clicking on the trigger won't close the menu if it opens a sub-menu,
1442
1438
  // we should prevent focus from moving onto it via click to avoid the
1443
1439
  // highlight from lingering on the menu item.