@angular/material 16.0.0 → 16.1.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (394) hide show
  1. package/autocomplete/index.d.ts +28 -0
  2. package/autocomplete/testing/index.d.ts +3 -1
  3. package/badge/index.d.ts +10 -1
  4. package/core/style/_elevation.scss +21 -7
  5. package/core/tokens/m2/mdc/_linear-progress.scss +5 -3
  6. package/core/tokens/m2/mdc/_plain-tooltip.scss +80 -0
  7. package/esm2022/autocomplete/autocomplete-origin.mjs +7 -7
  8. package/esm2022/autocomplete/autocomplete-trigger.mjs +63 -8
  9. package/esm2022/autocomplete/autocomplete.mjs +7 -7
  10. package/esm2022/autocomplete/module.mjs +5 -5
  11. package/esm2022/autocomplete/testing/autocomplete-harness.mjs +5 -1
  12. package/esm2022/badge/badge-module.mjs +5 -5
  13. package/esm2022/badge/badge.mjs +50 -10
  14. package/esm2022/bottom-sheet/bottom-sheet-container.mjs +4 -4
  15. package/esm2022/bottom-sheet/bottom-sheet-module.mjs +5 -5
  16. package/esm2022/bottom-sheet/bottom-sheet.mjs +4 -4
  17. package/esm2022/button/button-base.mjs +7 -7
  18. package/esm2022/button/button-lazy-loader.mjs +4 -4
  19. package/esm2022/button/button.mjs +7 -7
  20. package/esm2022/button/fab.mjs +13 -13
  21. package/esm2022/button/icon-button.mjs +7 -7
  22. package/esm2022/button/module.mjs +5 -5
  23. package/esm2022/button-toggle/button-toggle-module.mjs +5 -5
  24. package/esm2022/button-toggle/button-toggle.mjs +7 -7
  25. package/esm2022/card/card.mjs +43 -43
  26. package/esm2022/card/module.mjs +5 -5
  27. package/esm2022/checkbox/checkbox-required-validator.mjs +4 -4
  28. package/esm2022/checkbox/checkbox.mjs +7 -7
  29. package/esm2022/checkbox/module.mjs +9 -9
  30. package/esm2022/chips/chip-action.mjs +4 -4
  31. package/esm2022/chips/chip-edit-input.mjs +4 -4
  32. package/esm2022/chips/chip-grid.mjs +4 -4
  33. package/esm2022/chips/chip-icons.mjs +10 -10
  34. package/esm2022/chips/chip-input.mjs +4 -4
  35. package/esm2022/chips/chip-listbox.mjs +4 -4
  36. package/esm2022/chips/chip-option.mjs +4 -4
  37. package/esm2022/chips/chip-row.mjs +4 -4
  38. package/esm2022/chips/chip-set.mjs +4 -4
  39. package/esm2022/chips/chip.mjs +4 -4
  40. package/esm2022/chips/module.mjs +5 -5
  41. package/esm2022/core/common-behaviors/common-module.mjs +5 -5
  42. package/esm2022/core/datetime/index.mjs +9 -9
  43. package/esm2022/core/datetime/native-date-adapter.mjs +4 -4
  44. package/esm2022/core/error/error-options.mjs +7 -7
  45. package/esm2022/core/line/line.mjs +8 -8
  46. package/esm2022/core/option/index.mjs +5 -5
  47. package/esm2022/core/option/optgroup.mjs +7 -7
  48. package/esm2022/core/option/option.mjs +8 -8
  49. package/esm2022/core/ripple/index.mjs +5 -5
  50. package/esm2022/core/ripple/ripple.mjs +4 -4
  51. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +5 -5
  52. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  53. package/esm2022/core/version.mjs +1 -1
  54. package/esm2022/datepicker/calendar-body.mjs +4 -4
  55. package/esm2022/datepicker/calendar.mjs +7 -7
  56. package/esm2022/datepicker/date-range-input-parts.mjs +10 -10
  57. package/esm2022/datepicker/date-range-input.mjs +4 -4
  58. package/esm2022/datepicker/date-range-picker.mjs +4 -4
  59. package/esm2022/datepicker/date-range-selection-strategy.mjs +4 -4
  60. package/esm2022/datepicker/date-selection-model.mjs +10 -10
  61. package/esm2022/datepicker/datepicker-actions.mjs +10 -10
  62. package/esm2022/datepicker/datepicker-base.mjs +7 -7
  63. package/esm2022/datepicker/datepicker-input-base.mjs +4 -4
  64. package/esm2022/datepicker/datepicker-input.mjs +4 -4
  65. package/esm2022/datepicker/datepicker-intl.mjs +4 -4
  66. package/esm2022/datepicker/datepicker-module.mjs +5 -5
  67. package/esm2022/datepicker/datepicker-toggle.mjs +7 -7
  68. package/esm2022/datepicker/datepicker.mjs +4 -4
  69. package/esm2022/datepicker/month-view.mjs +4 -4
  70. package/esm2022/datepicker/multi-year-view.mjs +4 -4
  71. package/esm2022/datepicker/year-view.mjs +4 -4
  72. package/esm2022/dialog/dialog-container.mjs +8 -8
  73. package/esm2022/dialog/dialog-content-directives.mjs +13 -13
  74. package/esm2022/dialog/dialog.mjs +7 -7
  75. package/esm2022/dialog/module.mjs +5 -5
  76. package/esm2022/divider/divider-module.mjs +5 -5
  77. package/esm2022/divider/divider.mjs +4 -4
  78. package/esm2022/expansion/accordion.mjs +4 -4
  79. package/esm2022/expansion/expansion-module.mjs +5 -5
  80. package/esm2022/expansion/expansion-panel-content.mjs +4 -4
  81. package/esm2022/expansion/expansion-panel-header.mjs +10 -10
  82. package/esm2022/expansion/expansion-panel.mjs +7 -7
  83. package/esm2022/form-field/directives/error.mjs +4 -4
  84. package/esm2022/form-field/directives/floating-label.mjs +4 -4
  85. package/esm2022/form-field/directives/hint.mjs +4 -4
  86. package/esm2022/form-field/directives/label.mjs +4 -4
  87. package/esm2022/form-field/directives/line-ripple.mjs +4 -4
  88. package/esm2022/form-field/directives/notched-outline.mjs +4 -4
  89. package/esm2022/form-field/directives/prefix.mjs +4 -4
  90. package/esm2022/form-field/directives/suffix.mjs +4 -4
  91. package/esm2022/form-field/form-field-control.mjs +4 -4
  92. package/esm2022/form-field/form-field.mjs +5 -5
  93. package/esm2022/form-field/module.mjs +5 -5
  94. package/esm2022/grid-list/grid-list-module.mjs +5 -5
  95. package/esm2022/grid-list/grid-list.mjs +4 -4
  96. package/esm2022/grid-list/grid-tile.mjs +16 -16
  97. package/esm2022/icon/icon-module.mjs +5 -5
  98. package/esm2022/icon/icon-registry.mjs +4 -4
  99. package/esm2022/icon/icon.mjs +4 -4
  100. package/esm2022/icon/testing/fake-icon-registry.mjs +8 -8
  101. package/esm2022/input/input.mjs +4 -4
  102. package/esm2022/input/module.mjs +5 -5
  103. package/esm2022/legacy-autocomplete/autocomplete-module.mjs +5 -5
  104. package/esm2022/legacy-autocomplete/autocomplete-origin.mjs +4 -4
  105. package/esm2022/legacy-autocomplete/autocomplete-trigger.mjs +4 -4
  106. package/esm2022/legacy-autocomplete/autocomplete.mjs +4 -4
  107. package/esm2022/legacy-button/button-module.mjs +5 -5
  108. package/esm2022/legacy-button/button.mjs +7 -7
  109. package/esm2022/legacy-card/card-module.mjs +5 -5
  110. package/esm2022/legacy-card/card.mjs +43 -43
  111. package/esm2022/legacy-checkbox/checkbox-module.mjs +5 -5
  112. package/esm2022/legacy-checkbox/checkbox.mjs +4 -4
  113. package/esm2022/legacy-chips/chip-input.mjs +4 -4
  114. package/esm2022/legacy-chips/chip-list.mjs +4 -4
  115. package/esm2022/legacy-chips/chip.mjs +13 -13
  116. package/esm2022/legacy-chips/chips-module.mjs +5 -5
  117. package/esm2022/legacy-core/option/index.mjs +5 -5
  118. package/esm2022/legacy-core/option/optgroup.mjs +4 -4
  119. package/esm2022/legacy-core/option/option.mjs +4 -4
  120. package/esm2022/legacy-dialog/dialog-container.mjs +4 -4
  121. package/esm2022/legacy-dialog/dialog-content-directives.mjs +13 -13
  122. package/esm2022/legacy-dialog/dialog-module.mjs +5 -5
  123. package/esm2022/legacy-dialog/dialog.mjs +4 -4
  124. package/esm2022/legacy-form-field/error.mjs +4 -4
  125. package/esm2022/legacy-form-field/form-field-module.mjs +5 -5
  126. package/esm2022/legacy-form-field/form-field.mjs +4 -4
  127. package/esm2022/legacy-form-field/hint.mjs +4 -4
  128. package/esm2022/legacy-form-field/label.mjs +4 -4
  129. package/esm2022/legacy-form-field/placeholder.mjs +4 -4
  130. package/esm2022/legacy-form-field/prefix.mjs +4 -4
  131. package/esm2022/legacy-form-field/suffix.mjs +4 -4
  132. package/esm2022/legacy-input/input-module.mjs +5 -5
  133. package/esm2022/legacy-input/input.mjs +4 -4
  134. package/esm2022/legacy-list/list-module.mjs +5 -5
  135. package/esm2022/legacy-list/list.mjs +19 -19
  136. package/esm2022/legacy-list/selection-list.mjs +7 -7
  137. package/esm2022/legacy-menu/menu-content.mjs +4 -4
  138. package/esm2022/legacy-menu/menu-item.mjs +4 -4
  139. package/esm2022/legacy-menu/menu-module.mjs +5 -5
  140. package/esm2022/legacy-menu/menu-trigger.mjs +4 -4
  141. package/esm2022/legacy-menu/menu.mjs +4 -4
  142. package/esm2022/legacy-paginator/paginator-module.mjs +5 -5
  143. package/esm2022/legacy-paginator/paginator.mjs +4 -4
  144. package/esm2022/legacy-progress-bar/progress-bar-module.mjs +5 -5
  145. package/esm2022/legacy-progress-bar/progress-bar.mjs +4 -4
  146. package/esm2022/legacy-progress-spinner/progress-spinner-module.mjs +5 -5
  147. package/esm2022/legacy-progress-spinner/progress-spinner.mjs +4 -4
  148. package/esm2022/legacy-radio/radio-module.mjs +5 -5
  149. package/esm2022/legacy-radio/radio.mjs +7 -7
  150. package/esm2022/legacy-select/select-module.mjs +5 -5
  151. package/esm2022/legacy-select/select.mjs +7 -7
  152. package/esm2022/legacy-slide-toggle/slide-toggle-module.mjs +5 -5
  153. package/esm2022/legacy-slide-toggle/slide-toggle.mjs +4 -4
  154. package/esm2022/legacy-slider/slider-module.mjs +5 -5
  155. package/esm2022/legacy-slider/slider.mjs +4 -4
  156. package/esm2022/legacy-snack-bar/simple-snack-bar.mjs +4 -4
  157. package/esm2022/legacy-snack-bar/snack-bar-container.mjs +4 -4
  158. package/esm2022/legacy-snack-bar/snack-bar-module.mjs +5 -5
  159. package/esm2022/legacy-snack-bar/snack-bar.mjs +4 -4
  160. package/esm2022/legacy-table/cell.mjs +22 -22
  161. package/esm2022/legacy-table/row.mjs +22 -22
  162. package/esm2022/legacy-table/table-module.mjs +5 -5
  163. package/esm2022/legacy-table/table.mjs +7 -7
  164. package/esm2022/legacy-table/text-column.mjs +4 -4
  165. package/esm2022/legacy-tabs/ink-bar.mjs +4 -4
  166. package/esm2022/legacy-tabs/tab-body.mjs +7 -7
  167. package/esm2022/legacy-tabs/tab-content.mjs +4 -4
  168. package/esm2022/legacy-tabs/tab-group.mjs +4 -4
  169. package/esm2022/legacy-tabs/tab-header.mjs +4 -4
  170. package/esm2022/legacy-tabs/tab-label-wrapper.mjs +4 -4
  171. package/esm2022/legacy-tabs/tab-label.mjs +4 -4
  172. package/esm2022/legacy-tabs/tab-nav-bar/tab-nav-bar.mjs +10 -10
  173. package/esm2022/legacy-tabs/tab.mjs +4 -4
  174. package/esm2022/legacy-tabs/tabs-module.mjs +5 -5
  175. package/esm2022/legacy-tooltip/testing/tooltip-harness.mjs +2 -1
  176. package/esm2022/legacy-tooltip/tooltip-module.mjs +5 -5
  177. package/esm2022/legacy-tooltip/tooltip.mjs +8 -7
  178. package/esm2022/list/action-list.mjs +4 -4
  179. package/esm2022/list/list-base.mjs +7 -7
  180. package/esm2022/list/list-item-sections.mjs +19 -19
  181. package/esm2022/list/list-module.mjs +5 -5
  182. package/esm2022/list/list-option.mjs +4 -4
  183. package/esm2022/list/list.mjs +7 -7
  184. package/esm2022/list/nav-list.mjs +4 -4
  185. package/esm2022/list/selection-list.mjs +4 -4
  186. package/esm2022/list/subheader.mjs +4 -4
  187. package/esm2022/menu/menu-content.mjs +7 -7
  188. package/esm2022/menu/menu-item.mjs +4 -4
  189. package/esm2022/menu/menu-trigger.mjs +7 -7
  190. package/esm2022/menu/menu.mjs +7 -7
  191. package/esm2022/menu/module.mjs +5 -5
  192. package/esm2022/paginator/module.mjs +5 -5
  193. package/esm2022/paginator/paginator-intl.mjs +4 -4
  194. package/esm2022/paginator/paginator.mjs +7 -7
  195. package/esm2022/progress-bar/module.mjs +5 -5
  196. package/esm2022/progress-bar/progress-bar.mjs +5 -5
  197. package/esm2022/progress-spinner/module.mjs +5 -5
  198. package/esm2022/progress-spinner/progress-spinner.mjs +4 -4
  199. package/esm2022/radio/module.mjs +5 -5
  200. package/esm2022/radio/radio.mjs +13 -13
  201. package/esm2022/select/module.mjs +5 -5
  202. package/esm2022/select/select.mjs +69 -13
  203. package/esm2022/sidenav/drawer.mjs +10 -10
  204. package/esm2022/sidenav/sidenav-module.mjs +5 -5
  205. package/esm2022/sidenav/sidenav.mjs +10 -10
  206. package/esm2022/slide-toggle/module.mjs +9 -9
  207. package/esm2022/slide-toggle/slide-toggle-required-validator.mjs +4 -4
  208. package/esm2022/slide-toggle/slide-toggle.mjs +7 -7
  209. package/esm2022/slider/module.mjs +5 -5
  210. package/esm2022/slider/slider-input.mjs +7 -7
  211. package/esm2022/slider/slider-thumb.mjs +4 -4
  212. package/esm2022/slider/slider.mjs +4 -4
  213. package/esm2022/snack-bar/module.mjs +5 -5
  214. package/esm2022/snack-bar/simple-snack-bar.mjs +4 -4
  215. package/esm2022/snack-bar/snack-bar-container.mjs +10 -8
  216. package/esm2022/snack-bar/snack-bar-content.mjs +10 -10
  217. package/esm2022/snack-bar/snack-bar.mjs +7 -7
  218. package/esm2022/sort/sort-header-intl.mjs +4 -4
  219. package/esm2022/sort/sort-header.mjs +4 -4
  220. package/esm2022/sort/sort-module.mjs +5 -5
  221. package/esm2022/sort/sort.mjs +4 -4
  222. package/esm2022/stepper/step-content.mjs +4 -4
  223. package/esm2022/stepper/step-header.mjs +4 -4
  224. package/esm2022/stepper/step-label.mjs +4 -4
  225. package/esm2022/stepper/stepper-button.mjs +7 -7
  226. package/esm2022/stepper/stepper-icon.mjs +4 -4
  227. package/esm2022/stepper/stepper-intl.mjs +4 -4
  228. package/esm2022/stepper/stepper-module.mjs +5 -5
  229. package/esm2022/stepper/stepper.mjs +7 -7
  230. package/esm2022/table/cell.mjs +22 -22
  231. package/esm2022/table/module.mjs +5 -5
  232. package/esm2022/table/row.mjs +22 -22
  233. package/esm2022/table/table.mjs +9 -9
  234. package/esm2022/table/text-column.mjs +4 -4
  235. package/esm2022/tabs/ink-bar.mjs +4 -1
  236. package/esm2022/tabs/module.mjs +5 -5
  237. package/esm2022/tabs/paginated-tab-header.mjs +4 -4
  238. package/esm2022/tabs/tab-body.mjs +10 -10
  239. package/esm2022/tabs/tab-content.mjs +4 -4
  240. package/esm2022/tabs/tab-group.mjs +8 -7
  241. package/esm2022/tabs/tab-header.mjs +8 -8
  242. package/esm2022/tabs/tab-label-wrapper.mjs +7 -7
  243. package/esm2022/tabs/tab-label.mjs +4 -4
  244. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +26 -17
  245. package/esm2022/tabs/tab.mjs +7 -7
  246. package/esm2022/toolbar/toolbar-module.mjs +5 -5
  247. package/esm2022/toolbar/toolbar.mjs +7 -7
  248. package/esm2022/tooltip/module.mjs +5 -5
  249. package/esm2022/tooltip/testing/tooltip-harness.mjs +7 -1
  250. package/esm2022/tooltip/tooltip.mjs +15 -14
  251. package/esm2022/tree/node.mjs +10 -10
  252. package/esm2022/tree/outlet.mjs +4 -4
  253. package/esm2022/tree/padding.mjs +4 -4
  254. package/esm2022/tree/toggle.mjs +4 -4
  255. package/esm2022/tree/tree-module.mjs +5 -5
  256. package/esm2022/tree/tree.mjs +4 -4
  257. package/fesm2022/autocomplete/testing.mjs +4 -0
  258. package/fesm2022/autocomplete/testing.mjs.map +1 -1
  259. package/fesm2022/autocomplete.mjs +78 -24
  260. package/fesm2022/autocomplete.mjs.map +1 -1
  261. package/fesm2022/badge.mjs +53 -13
  262. package/fesm2022/badge.mjs.map +1 -1
  263. package/fesm2022/bottom-sheet.mjs +10 -10
  264. package/fesm2022/bottom-sheet.mjs.map +1 -1
  265. package/fesm2022/button-toggle.mjs +10 -10
  266. package/fesm2022/button-toggle.mjs.map +1 -1
  267. package/fesm2022/button.mjs +37 -37
  268. package/fesm2022/button.mjs.map +1 -1
  269. package/fesm2022/card.mjs +46 -46
  270. package/fesm2022/card.mjs.map +1 -1
  271. package/fesm2022/checkbox.mjs +17 -17
  272. package/fesm2022/checkbox.mjs.map +1 -1
  273. package/fesm2022/chips.mjs +40 -40
  274. package/fesm2022/chips.mjs.map +1 -1
  275. package/fesm2022/core.mjs +60 -60
  276. package/fesm2022/core.mjs.map +1 -1
  277. package/fesm2022/datepicker.mjs +82 -82
  278. package/fesm2022/datepicker.mjs.map +1 -1
  279. package/fesm2022/dialog.mjs +29 -29
  280. package/fesm2022/dialog.mjs.map +1 -1
  281. package/fesm2022/divider.mjs +7 -7
  282. package/fesm2022/divider.mjs.map +1 -1
  283. package/fesm2022/expansion.mjs +25 -25
  284. package/fesm2022/expansion.mjs.map +1 -1
  285. package/fesm2022/form-field.mjs +35 -35
  286. package/fesm2022/form-field.mjs.map +1 -1
  287. package/fesm2022/grid-list.mjs +22 -22
  288. package/fesm2022/grid-list.mjs.map +1 -1
  289. package/fesm2022/icon/testing.mjs +7 -7
  290. package/fesm2022/icon/testing.mjs.map +1 -1
  291. package/fesm2022/icon.mjs +10 -10
  292. package/fesm2022/icon.mjs.map +1 -1
  293. package/fesm2022/input.mjs +7 -7
  294. package/fesm2022/input.mjs.map +1 -1
  295. package/fesm2022/legacy-autocomplete.mjs +13 -13
  296. package/fesm2022/legacy-autocomplete.mjs.map +1 -1
  297. package/fesm2022/legacy-button.mjs +10 -10
  298. package/fesm2022/legacy-button.mjs.map +1 -1
  299. package/fesm2022/legacy-card.mjs +46 -46
  300. package/fesm2022/legacy-card.mjs.map +1 -1
  301. package/fesm2022/legacy-checkbox.mjs +7 -7
  302. package/fesm2022/legacy-checkbox.mjs.map +1 -1
  303. package/fesm2022/legacy-chips.mjs +22 -22
  304. package/fesm2022/legacy-chips.mjs.map +1 -1
  305. package/fesm2022/legacy-core.mjs +10 -10
  306. package/fesm2022/legacy-core.mjs.map +1 -1
  307. package/fesm2022/legacy-dialog.mjs +22 -22
  308. package/fesm2022/legacy-dialog.mjs.map +1 -1
  309. package/fesm2022/legacy-form-field.mjs +25 -25
  310. package/fesm2022/legacy-form-field.mjs.map +1 -1
  311. package/fesm2022/legacy-input.mjs +7 -7
  312. package/fesm2022/legacy-input.mjs.map +1 -1
  313. package/fesm2022/legacy-list.mjs +28 -28
  314. package/fesm2022/legacy-list.mjs.map +1 -1
  315. package/fesm2022/legacy-menu.mjs +16 -16
  316. package/fesm2022/legacy-menu.mjs.map +1 -1
  317. package/fesm2022/legacy-paginator.mjs +7 -7
  318. package/fesm2022/legacy-paginator.mjs.map +1 -1
  319. package/fesm2022/legacy-progress-bar.mjs +7 -7
  320. package/fesm2022/legacy-progress-bar.mjs.map +1 -1
  321. package/fesm2022/legacy-progress-spinner.mjs +7 -7
  322. package/fesm2022/legacy-progress-spinner.mjs.map +1 -1
  323. package/fesm2022/legacy-radio.mjs +10 -10
  324. package/fesm2022/legacy-radio.mjs.map +1 -1
  325. package/fesm2022/legacy-select.mjs +10 -10
  326. package/fesm2022/legacy-select.mjs.map +1 -1
  327. package/fesm2022/legacy-slide-toggle.mjs +7 -7
  328. package/fesm2022/legacy-slide-toggle.mjs.map +1 -1
  329. package/fesm2022/legacy-slider.mjs +7 -7
  330. package/fesm2022/legacy-slider.mjs.map +1 -1
  331. package/fesm2022/legacy-snack-bar.mjs +13 -13
  332. package/fesm2022/legacy-snack-bar.mjs.map +1 -1
  333. package/fesm2022/legacy-table.mjs +55 -55
  334. package/fesm2022/legacy-table.mjs.map +1 -1
  335. package/fesm2022/legacy-tabs.mjs +40 -40
  336. package/fesm2022/legacy-tabs.mjs.map +1 -1
  337. package/fesm2022/legacy-tooltip/testing.mjs +1 -0
  338. package/fesm2022/legacy-tooltip/testing.mjs.map +1 -1
  339. package/fesm2022/legacy-tooltip.mjs +11 -10
  340. package/fesm2022/legacy-tooltip.mjs.map +1 -1
  341. package/fesm2022/list.mjs +49 -49
  342. package/fesm2022/list.mjs.map +1 -1
  343. package/fesm2022/menu.mjs +25 -25
  344. package/fesm2022/menu.mjs.map +1 -1
  345. package/fesm2022/paginator.mjs +13 -13
  346. package/fesm2022/paginator.mjs.map +1 -1
  347. package/fesm2022/progress-bar.mjs +8 -8
  348. package/fesm2022/progress-bar.mjs.map +1 -1
  349. package/fesm2022/progress-spinner.mjs +7 -7
  350. package/fesm2022/progress-spinner.mjs.map +1 -1
  351. package/fesm2022/radio.mjs +16 -16
  352. package/fesm2022/radio.mjs.map +1 -1
  353. package/fesm2022/select.mjs +72 -16
  354. package/fesm2022/select.mjs.map +1 -1
  355. package/fesm2022/sidenav.mjs +22 -22
  356. package/fesm2022/sidenav.mjs.map +1 -1
  357. package/fesm2022/slide-toggle.mjs +17 -17
  358. package/fesm2022/slide-toggle.mjs.map +1 -1
  359. package/fesm2022/slider.mjs +16 -16
  360. package/fesm2022/slider.mjs.map +1 -1
  361. package/fesm2022/snack-bar.mjs +31 -29
  362. package/fesm2022/snack-bar.mjs.map +1 -1
  363. package/fesm2022/sort.mjs +13 -13
  364. package/fesm2022/sort.mjs.map +1 -1
  365. package/fesm2022/stepper.mjs +31 -31
  366. package/fesm2022/stepper.mjs.map +1 -1
  367. package/fesm2022/table.mjs +57 -57
  368. package/fesm2022/table.mjs.map +1 -1
  369. package/fesm2022/tabs.mjs +76 -63
  370. package/fesm2022/tabs.mjs.map +1 -1
  371. package/fesm2022/toolbar.mjs +10 -10
  372. package/fesm2022/toolbar.mjs.map +1 -1
  373. package/fesm2022/tooltip/testing.mjs +6 -0
  374. package/fesm2022/tooltip/testing.mjs.map +1 -1
  375. package/fesm2022/tooltip.mjs +18 -17
  376. package/fesm2022/tooltip.mjs.map +1 -1
  377. package/fesm2022/tree.mjs +25 -25
  378. package/fesm2022/tree.mjs.map +1 -1
  379. package/legacy-tooltip/testing/index.d.ts +1 -0
  380. package/package.json +54 -54
  381. package/prebuilt-themes/deeppurple-amber.css +1 -1
  382. package/prebuilt-themes/indigo-pink.css +1 -1
  383. package/prebuilt-themes/pink-bluegrey.css +1 -1
  384. package/prebuilt-themes/purple-green.css +1 -1
  385. package/schematics/ng-add/index.js +2 -2
  386. package/schematics/ng-add/index.mjs +2 -2
  387. package/schematics/ng-generate/mdc-migration/index_bundled.js +2 -2
  388. package/schematics/ng-generate/mdc-migration/index_bundled.js.map +2 -2
  389. package/select/_select-theme.scss +20 -1
  390. package/select/index.d.ts +28 -0
  391. package/tabs/_tabs-common.scss +4 -0
  392. package/tabs/index.d.ts +4 -1
  393. package/tooltip/_tooltip-theme.scss +18 -22
  394. package/tooltip/testing/index.d.ts +4 -0
@@ -11,7 +11,7 @@ import { MAT_FORM_FIELD, MatFormFieldControl, MatFormFieldModule } from '@angula
11
11
  import * as i1 from '@angular/cdk/scrolling';
12
12
  import { CdkScrollableModule } from '@angular/cdk/scrolling';
13
13
  import * as i5 from '@angular/cdk/a11y';
14
- import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';
14
+ import { removeAriaReferencedId, addAriaReferencedId, ActiveDescendantKeyManager } from '@angular/cdk/a11y';
15
15
  import * as i3 from '@angular/cdk/bidi';
16
16
  import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';
17
17
  import { SelectionModel } from '@angular/cdk/collections';
@@ -274,6 +274,12 @@ class _MatSelectBase extends _MatSelectMixinBase {
274
274
  * @docs-private
275
275
  */
276
276
  this.valueChange = new EventEmitter();
277
+ /**
278
+ * Track which modal we have modified the `aria-owns` attribute of. When the combobox trigger is
279
+ * inside an aria-modal, we apply aria-owns to the parent modal with the `id` of the options
280
+ * panel. Track the modal we have changed so we can undo the changes on destroy.
281
+ */
282
+ this._trackedModal = null;
277
283
  if (this.ngControl) {
278
284
  // Note: we provide the value accessor through here, instead of
279
285
  // the `providers` to avoid running into a circular import.
@@ -355,6 +361,7 @@ class _MatSelectBase extends _MatSelectMixinBase {
355
361
  this._destroy.next();
356
362
  this._destroy.complete();
357
363
  this.stateChanges.complete();
364
+ this._clearFromModal();
358
365
  }
359
366
  /** Toggles the overlay panel open or closed. */
360
367
  toggle() {
@@ -363,12 +370,61 @@ class _MatSelectBase extends _MatSelectMixinBase {
363
370
  /** Opens the overlay panel. */
364
371
  open() {
365
372
  if (this._canOpen()) {
373
+ this._applyModalPanelOwnership();
366
374
  this._panelOpen = true;
367
375
  this._keyManager.withHorizontalOrientation(null);
368
376
  this._highlightCorrectOption();
369
377
  this._changeDetectorRef.markForCheck();
370
378
  }
371
379
  }
380
+ /**
381
+ * If the autocomplete trigger is inside of an `aria-modal` element, connect
382
+ * that modal to the options panel with `aria-owns`.
383
+ *
384
+ * For some browser + screen reader combinations, when navigation is inside
385
+ * of an `aria-modal` element, the screen reader treats everything outside
386
+ * of that modal as hidden or invisible.
387
+ *
388
+ * This causes a problem when the combobox trigger is _inside_ of a modal, because the
389
+ * options panel is rendered _outside_ of that modal, preventing screen reader navigation
390
+ * from reaching the panel.
391
+ *
392
+ * We can work around this issue by applying `aria-owns` to the modal with the `id` of
393
+ * the options panel. This effectively communicates to assistive technology that the
394
+ * options panel is part of the same interaction as the modal.
395
+ *
396
+ * At time of this writing, this issue is present in VoiceOver.
397
+ * See https://github.com/angular/components/issues/20694
398
+ */
399
+ _applyModalPanelOwnership() {
400
+ // TODO(http://github.com/angular/components/issues/26853): consider de-duplicating this with
401
+ // the `LiveAnnouncer` and any other usages.
402
+ //
403
+ // Note that the selector here is limited to CDK overlays at the moment in order to reduce the
404
+ // section of the DOM we need to look through. This should cover all the cases we support, but
405
+ // the selector can be expanded if it turns out to be too narrow.
406
+ const modal = this._elementRef.nativeElement.closest('body > .cdk-overlay-container [aria-modal="true"]');
407
+ if (!modal) {
408
+ // Most commonly, the autocomplete trigger is not inside a modal.
409
+ return;
410
+ }
411
+ const panelId = `${this.id}-panel`;
412
+ if (this._trackedModal) {
413
+ removeAriaReferencedId(this._trackedModal, 'aria-owns', panelId);
414
+ }
415
+ addAriaReferencedId(modal, 'aria-owns', panelId);
416
+ this._trackedModal = modal;
417
+ }
418
+ /** Clears the reference to the listbox overlay element from the modal it was added to. */
419
+ _clearFromModal() {
420
+ if (!this._trackedModal) {
421
+ // Most commonly, the autocomplete trigger is not used inside a modal.
422
+ return;
423
+ }
424
+ const panelId = `${this.id}-panel`;
425
+ removeAriaReferencedId(this._trackedModal, 'aria-owns', panelId);
426
+ this._trackedModal = null;
427
+ }
372
428
  /** Closes the overlay panel and focuses the host element. */
373
429
  close() {
374
430
  if (this._panelOpen) {
@@ -846,10 +902,10 @@ class _MatSelectBase extends _MatSelectMixinBase {
846
902
  get shouldLabelFloat() {
847
903
  return this._panelOpen || !this.empty || (this._focused && !!this._placeholder);
848
904
  }
849
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-rc.2", ngImport: i0, type: _MatSelectBase, deps: [{ token: i1.ViewportRuler }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i2.ErrorStateMatcher }, { token: i0.ElementRef }, { token: i3.Directionality, optional: true }, { token: i4.NgForm, optional: true }, { token: i4.FormGroupDirective, optional: true }, { token: MAT_FORM_FIELD, optional: true }, { token: i4.NgControl, optional: true, self: true }, { token: 'tabindex', attribute: true }, { token: MAT_SELECT_SCROLL_STRATEGY }, { token: i5.LiveAnnouncer }, { token: MAT_SELECT_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
850
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-rc.2", type: _MatSelectBase, inputs: { userAriaDescribedBy: ["aria-describedby", "userAriaDescribedBy"], panelClass: "panelClass", placeholder: "placeholder", required: "required", multiple: "multiple", disableOptionCentering: "disableOptionCentering", compareWith: "compareWith", value: "value", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], errorStateMatcher: "errorStateMatcher", typeaheadDebounceInterval: "typeaheadDebounceInterval", sortComparator: "sortComparator", id: "id" }, outputs: { openedChange: "openedChange", _openedStream: "opened", _closedStream: "closed", selectionChange: "selectionChange", valueChange: "valueChange" }, viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }, { propertyName: "panel", first: true, predicate: ["panel"], descendants: true }, { propertyName: "_overlayDir", first: true, predicate: CdkConnectedOverlay, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
905
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: _MatSelectBase, deps: [{ token: i1.ViewportRuler }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i2.ErrorStateMatcher }, { token: i0.ElementRef }, { token: i3.Directionality, optional: true }, { token: i4.NgForm, optional: true }, { token: i4.FormGroupDirective, optional: true }, { token: MAT_FORM_FIELD, optional: true }, { token: i4.NgControl, optional: true, self: true }, { token: 'tabindex', attribute: true }, { token: MAT_SELECT_SCROLL_STRATEGY }, { token: i5.LiveAnnouncer }, { token: MAT_SELECT_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
906
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: _MatSelectBase, inputs: { userAriaDescribedBy: ["aria-describedby", "userAriaDescribedBy"], panelClass: "panelClass", placeholder: "placeholder", required: "required", multiple: "multiple", disableOptionCentering: "disableOptionCentering", compareWith: "compareWith", value: "value", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], errorStateMatcher: "errorStateMatcher", typeaheadDebounceInterval: "typeaheadDebounceInterval", sortComparator: "sortComparator", id: "id" }, outputs: { openedChange: "openedChange", _openedStream: "opened", _closedStream: "closed", selectionChange: "selectionChange", valueChange: "valueChange" }, viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }, { propertyName: "panel", first: true, predicate: ["panel"], descendants: true }, { propertyName: "_overlayDir", first: true, predicate: CdkConnectedOverlay, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
851
907
  }
852
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-rc.2", ngImport: i0, type: _MatSelectBase, decorators: [{
908
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: _MatSelectBase, decorators: [{
853
909
  type: Directive
854
910
  }], ctorParameters: function () { return [{ type: i1.ViewportRuler }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i2.ErrorStateMatcher }, { type: i0.ElementRef }, { type: i3.Directionality, decorators: [{
855
911
  type: Optional
@@ -934,10 +990,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-rc.2", ng
934
990
  * Allows the user to customize the trigger that is displayed when the select has a value.
935
991
  */
936
992
  class MatSelectTrigger {
937
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-rc.2", ngImport: i0, type: MatSelectTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
938
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0-rc.2", type: MatSelectTrigger, selector: "mat-select-trigger", providers: [{ provide: MAT_SELECT_TRIGGER, useExisting: MatSelectTrigger }], ngImport: i0 }); }
993
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: MatSelectTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
994
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: MatSelectTrigger, selector: "mat-select-trigger", providers: [{ provide: MAT_SELECT_TRIGGER, useExisting: MatSelectTrigger }], ngImport: i0 }); }
939
995
  }
940
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-rc.2", ngImport: i0, type: MatSelectTrigger, decorators: [{
996
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: MatSelectTrigger, decorators: [{
941
997
  type: Directive,
942
998
  args: [{
943
999
  selector: 'mat-select-trigger',
@@ -1070,13 +1126,13 @@ class MatSelect extends _MatSelectBase {
1070
1126
  }
1071
1127
  }
1072
1128
  }
1073
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-rc.2", ngImport: i0, type: MatSelect, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1074
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0-rc.2", type: MatSelect, selector: "mat-select", inputs: { disabled: "disabled", disableRipple: "disableRipple", tabIndex: "tabIndex", hideSingleSelectionIndicator: "hideSingleSelectionIndicator" }, host: { attributes: { "role": "combobox", "aria-autocomplete": "none", "aria-haspopup": "listbox", "ngSkipHydration": "true" }, listeners: { "keydown": "_handleKeydown($event)", "focus": "_onFocus()", "blur": "_onBlur()" }, properties: { "attr.id": "id", "attr.tabindex": "tabIndex", "attr.aria-controls": "panelOpen ? id + \"-panel\" : null", "attr.aria-expanded": "panelOpen", "attr.aria-label": "ariaLabel || null", "attr.aria-required": "required.toString()", "attr.aria-disabled": "disabled.toString()", "attr.aria-invalid": "errorState", "attr.aria-activedescendant": "_getAriaActiveDescendant()", "class.mat-mdc-select-disabled": "disabled", "class.mat-mdc-select-invalid": "errorState", "class.mat-mdc-select-required": "required", "class.mat-mdc-select-empty": "empty", "class.mat-mdc-select-multiple": "multiple" }, classAttribute: "mat-mdc-select" }, providers: [
1129
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: MatSelect, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1130
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: MatSelect, selector: "mat-select", inputs: { disabled: "disabled", disableRipple: "disableRipple", tabIndex: "tabIndex", hideSingleSelectionIndicator: "hideSingleSelectionIndicator" }, host: { attributes: { "role": "combobox", "aria-autocomplete": "none", "aria-haspopup": "listbox", "ngSkipHydration": "true" }, listeners: { "keydown": "_handleKeydown($event)", "focus": "_onFocus()", "blur": "_onBlur()" }, properties: { "attr.id": "id", "attr.tabindex": "tabIndex", "attr.aria-controls": "panelOpen ? id + \"-panel\" : null", "attr.aria-expanded": "panelOpen", "attr.aria-label": "ariaLabel || null", "attr.aria-required": "required.toString()", "attr.aria-disabled": "disabled.toString()", "attr.aria-invalid": "errorState", "attr.aria-activedescendant": "_getAriaActiveDescendant()", "class.mat-mdc-select-disabled": "disabled", "class.mat-mdc-select-invalid": "errorState", "class.mat-mdc-select-required": "required", "class.mat-mdc-select-empty": "empty", "class.mat-mdc-select-multiple": "multiple" }, classAttribute: "mat-mdc-select" }, providers: [
1075
1131
  { provide: MatFormFieldControl, useExisting: MatSelect },
1076
1132
  { provide: MAT_OPTION_PARENT_COMPONENT, useExisting: MatSelect },
1077
- ], queries: [{ propertyName: "customTrigger", first: true, predicate: MAT_SELECT_TRIGGER, descendants: true }, { propertyName: "options", predicate: MatOption, descendants: true }, { propertyName: "optionGroups", predicate: MAT_OPTGROUP, descendants: true }], exportAs: ["matSelect"], usesInheritance: true, ngImport: i0, template: "<!--\n Note that the select trigger element specifies `aria-owns` pointing to the listbox overlay.\n While aria-owns is not required for the ARIA 1.2 `role=\"combobox\"` interaction pattern,\n it fixes an issue with VoiceOver when the select appears inside of an `aria-model=\"true\"`\n element (e.g. a dialog). Without this `aria-owns`, the `aria-modal` on a dialog prevents\n VoiceOver from \"seeing\" the select's listbox overlay for aria-activedescendant.\n Using `aria-owns` re-parents the select overlay so that it works again.\n See https://github.com/angular/components/issues/20694\n-->\n<div cdk-overlay-origin\n [attr.aria-owns]=\"panelOpen ? id + '-panel' : null\"\n class=\"mat-mdc-select-trigger\"\n (click)=\"toggle()\"\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger>\n <div class=\"mat-mdc-select-value\" [ngSwitch]=\"empty\" [attr.id]=\"_valueId\">\n <span class=\"mat-mdc-select-placeholder mat-mdc-select-min-line\" *ngSwitchCase=\"true\">{{placeholder}}</span>\n <span class=\"mat-mdc-select-value-text\" *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <span class=\"mat-mdc-select-min-line\" *ngSwitchDefault>{{triggerValue}}</span>\n <ng-content select=\"mat-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n </div>\n\n <div class=\"mat-mdc-select-arrow-wrapper\">\n <div class=\"mat-mdc-select-arrow\">\n <!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\">\n <path d=\"M7 10l5 5 5-5z\"/>\n </svg>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayPanelClass]=\"_overlayPanelClass\"\n [cdkConnectedOverlayScrollStrategy]=\"_scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n (backdropClick)=\"close()\"\n (attach)=\"_onAttached()\"\n (detach)=\"close()\">\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open {{ _getPanelTheme() }}\"\n [attr.id]=\"id + '-panel'\"\n [attr.aria-multiselectable]=\"multiple\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"_getPanelAriaLabelledby()\"\n [ngClass]=\"panelClass\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mdc-menu-surface{display:none;position:absolute;box-sizing:border-box;margin:0;padding:0;transform:scale(1);transform-origin:top left;opacity:0;overflow:auto;will-change:transform,opacity;transform-origin-left:top left;transform-origin-right:top right}.mdc-menu-surface:focus{outline:none}.mdc-menu-surface--animating-open{display:inline-block;transform:scale(0.8);opacity:0}.mdc-menu-surface--open{display:inline-block;transform:scale(1);opacity:1}.mdc-menu-surface--animating-closed{display:inline-block;opacity:0}[dir=rtl] .mdc-menu-surface,.mdc-menu-surface[dir=rtl]{transform-origin-left:top right;transform-origin-right:top left}.mdc-menu-surface--anchor{position:relative;overflow:visible}.mdc-menu-surface--fixed{position:fixed}.mdc-menu-surface--fullwidth{width:100%}.mdc-menu-surface{max-width:calc(100vw - 32px);max-width:var(--mdc-menu-max-width, calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:var(--mdc-menu-max-height, calc(100vh - 32px));z-index:8;border-radius:4px;border-radius:var(--mdc-shape-medium, 4px)}.mat-mdc-select{display:inline-block;width:100%;outline:none}.mat-mdc-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{height:24px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:translateY(-8px)}.mat-form-field-appearance-fill .mdc-text-field--no-label .mat-mdc-select-arrow-wrapper{transform:none}.mat-mdc-select-arrow{width:10px;height:5px;position:relative}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:GrayText}.mdc-menu-surface.mat-mdc-select-panel{width:100%;max-height:275px;position:static;outline:0;margin:0;padding:8px 0;list-style-type:none}.mdc-menu-surface.mat-mdc-select-panel:focus{outline:none}.cdk-high-contrast-active .mdc-menu-surface.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) .mdc-menu-surface.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above .mdc-menu-surface.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100% / 0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:\" \";white-space:pre;width:1px;display:inline-block;visibility:hidden}"], dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i7.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i7.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i8.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i8.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }], animations: [matSelectAnimations.transformPanel], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1133
+ ], queries: [{ propertyName: "customTrigger", first: true, predicate: MAT_SELECT_TRIGGER, descendants: true }, { propertyName: "options", predicate: MatOption, descendants: true }, { propertyName: "optionGroups", predicate: MAT_OPTGROUP, descendants: true }], exportAs: ["matSelect"], usesInheritance: true, ngImport: i0, template: "<div cdk-overlay-origin\n class=\"mat-mdc-select-trigger\"\n (click)=\"toggle()\"\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger>\n <div class=\"mat-mdc-select-value\" [ngSwitch]=\"empty\" [attr.id]=\"_valueId\">\n <span class=\"mat-mdc-select-placeholder mat-mdc-select-min-line\" *ngSwitchCase=\"true\">{{placeholder}}</span>\n <span class=\"mat-mdc-select-value-text\" *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <span class=\"mat-mdc-select-min-line\" *ngSwitchDefault>{{triggerValue}}</span>\n <ng-content select=\"mat-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n </div>\n\n <div class=\"mat-mdc-select-arrow-wrapper\">\n <div class=\"mat-mdc-select-arrow\">\n <!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\">\n <path d=\"M7 10l5 5 5-5z\"/>\n </svg>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayPanelClass]=\"_overlayPanelClass\"\n [cdkConnectedOverlayScrollStrategy]=\"_scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n (backdropClick)=\"close()\"\n (attach)=\"_onAttached()\"\n (detach)=\"close()\">\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open {{ _getPanelTheme() }}\"\n [attr.id]=\"id + '-panel'\"\n [attr.aria-multiselectable]=\"multiple\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"_getPanelAriaLabelledby()\"\n [ngClass]=\"panelClass\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mdc-menu-surface{display:none;position:absolute;box-sizing:border-box;margin:0;padding:0;transform:scale(1);transform-origin:top left;opacity:0;overflow:auto;will-change:transform,opacity;transform-origin-left:top left;transform-origin-right:top right}.mdc-menu-surface:focus{outline:none}.mdc-menu-surface--animating-open{display:inline-block;transform:scale(0.8);opacity:0}.mdc-menu-surface--open{display:inline-block;transform:scale(1);opacity:1}.mdc-menu-surface--animating-closed{display:inline-block;opacity:0}[dir=rtl] .mdc-menu-surface,.mdc-menu-surface[dir=rtl]{transform-origin-left:top right;transform-origin-right:top left}.mdc-menu-surface--anchor{position:relative;overflow:visible}.mdc-menu-surface--fixed{position:fixed}.mdc-menu-surface--fullwidth{width:100%}.mdc-menu-surface{max-width:calc(100vw - 32px);max-width:var(--mdc-menu-max-width, calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:var(--mdc-menu-max-height, calc(100vh - 32px));z-index:8;border-radius:4px;border-radius:var(--mdc-shape-medium, 4px)}.mat-mdc-select{display:inline-block;width:100%;outline:none}.mat-mdc-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{height:24px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:translateY(-8px)}.mat-form-field-appearance-fill .mdc-text-field--no-label .mat-mdc-select-arrow-wrapper{transform:none}.mat-mdc-select-arrow{width:10px;height:5px;position:relative}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:GrayText}.mdc-menu-surface.mat-mdc-select-panel{width:100%;max-height:275px;position:static;outline:0;margin:0;padding:8px 0;list-style-type:none}.mdc-menu-surface.mat-mdc-select-panel:focus{outline:none}.cdk-high-contrast-active .mdc-menu-surface.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) .mdc-menu-surface.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above .mdc-menu-surface.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100% / 0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:\" \";white-space:pre;width:1px;display:inline-block;visibility:hidden}"], dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i7.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i7.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i8.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i8.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }], animations: [matSelectAnimations.transformPanel], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1078
1134
  }
1079
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-rc.2", ngImport: i0, type: MatSelect, decorators: [{
1135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: MatSelect, decorators: [{
1080
1136
  type: Component,
1081
1137
  args: [{ selector: 'mat-select', exportAs: 'matSelect', inputs: ['disabled', 'disableRipple', 'tabIndex'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
1082
1138
  'role': 'combobox',
@@ -1104,7 +1160,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-rc.2", ng
1104
1160
  }, animations: [matSelectAnimations.transformPanel], providers: [
1105
1161
  { provide: MatFormFieldControl, useExisting: MatSelect },
1106
1162
  { provide: MAT_OPTION_PARENT_COMPONENT, useExisting: MatSelect },
1107
- ], template: "<!--\n Note that the select trigger element specifies `aria-owns` pointing to the listbox overlay.\n While aria-owns is not required for the ARIA 1.2 `role=\"combobox\"` interaction pattern,\n it fixes an issue with VoiceOver when the select appears inside of an `aria-model=\"true\"`\n element (e.g. a dialog). Without this `aria-owns`, the `aria-modal` on a dialog prevents\n VoiceOver from \"seeing\" the select's listbox overlay for aria-activedescendant.\n Using `aria-owns` re-parents the select overlay so that it works again.\n See https://github.com/angular/components/issues/20694\n-->\n<div cdk-overlay-origin\n [attr.aria-owns]=\"panelOpen ? id + '-panel' : null\"\n class=\"mat-mdc-select-trigger\"\n (click)=\"toggle()\"\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger>\n <div class=\"mat-mdc-select-value\" [ngSwitch]=\"empty\" [attr.id]=\"_valueId\">\n <span class=\"mat-mdc-select-placeholder mat-mdc-select-min-line\" *ngSwitchCase=\"true\">{{placeholder}}</span>\n <span class=\"mat-mdc-select-value-text\" *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <span class=\"mat-mdc-select-min-line\" *ngSwitchDefault>{{triggerValue}}</span>\n <ng-content select=\"mat-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n </div>\n\n <div class=\"mat-mdc-select-arrow-wrapper\">\n <div class=\"mat-mdc-select-arrow\">\n <!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\">\n <path d=\"M7 10l5 5 5-5z\"/>\n </svg>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayPanelClass]=\"_overlayPanelClass\"\n [cdkConnectedOverlayScrollStrategy]=\"_scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n (backdropClick)=\"close()\"\n (attach)=\"_onAttached()\"\n (detach)=\"close()\">\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open {{ _getPanelTheme() }}\"\n [attr.id]=\"id + '-panel'\"\n [attr.aria-multiselectable]=\"multiple\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"_getPanelAriaLabelledby()\"\n [ngClass]=\"panelClass\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mdc-menu-surface{display:none;position:absolute;box-sizing:border-box;margin:0;padding:0;transform:scale(1);transform-origin:top left;opacity:0;overflow:auto;will-change:transform,opacity;transform-origin-left:top left;transform-origin-right:top right}.mdc-menu-surface:focus{outline:none}.mdc-menu-surface--animating-open{display:inline-block;transform:scale(0.8);opacity:0}.mdc-menu-surface--open{display:inline-block;transform:scale(1);opacity:1}.mdc-menu-surface--animating-closed{display:inline-block;opacity:0}[dir=rtl] .mdc-menu-surface,.mdc-menu-surface[dir=rtl]{transform-origin-left:top right;transform-origin-right:top left}.mdc-menu-surface--anchor{position:relative;overflow:visible}.mdc-menu-surface--fixed{position:fixed}.mdc-menu-surface--fullwidth{width:100%}.mdc-menu-surface{max-width:calc(100vw - 32px);max-width:var(--mdc-menu-max-width, calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:var(--mdc-menu-max-height, calc(100vh - 32px));z-index:8;border-radius:4px;border-radius:var(--mdc-shape-medium, 4px)}.mat-mdc-select{display:inline-block;width:100%;outline:none}.mat-mdc-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{height:24px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:translateY(-8px)}.mat-form-field-appearance-fill .mdc-text-field--no-label .mat-mdc-select-arrow-wrapper{transform:none}.mat-mdc-select-arrow{width:10px;height:5px;position:relative}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:GrayText}.mdc-menu-surface.mat-mdc-select-panel{width:100%;max-height:275px;position:static;outline:0;margin:0;padding:8px 0;list-style-type:none}.mdc-menu-surface.mat-mdc-select-panel:focus{outline:none}.cdk-high-contrast-active .mdc-menu-surface.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) .mdc-menu-surface.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above .mdc-menu-surface.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100% / 0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:\" \";white-space:pre;width:1px;display:inline-block;visibility:hidden}"] }]
1163
+ ], template: "<div cdk-overlay-origin\n class=\"mat-mdc-select-trigger\"\n (click)=\"toggle()\"\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n #trigger>\n <div class=\"mat-mdc-select-value\" [ngSwitch]=\"empty\" [attr.id]=\"_valueId\">\n <span class=\"mat-mdc-select-placeholder mat-mdc-select-min-line\" *ngSwitchCase=\"true\">{{placeholder}}</span>\n <span class=\"mat-mdc-select-value-text\" *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <span class=\"mat-mdc-select-min-line\" *ngSwitchDefault>{{triggerValue}}</span>\n <ng-content select=\"mat-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n </div>\n\n <div class=\"mat-mdc-select-arrow-wrapper\">\n <div class=\"mat-mdc-select-arrow\">\n <!-- Use an inline SVG, because it works better than a CSS triangle in high contrast mode. -->\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\">\n <path d=\"M7 10l5 5 5-5z\"/>\n </svg>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayPanelClass]=\"_overlayPanelClass\"\n [cdkConnectedOverlayScrollStrategy]=\"_scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"_positions\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n (backdropClick)=\"close()\"\n (attach)=\"_onAttached()\"\n (detach)=\"close()\">\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"mat-mdc-select-panel mdc-menu-surface mdc-menu-surface--open {{ _getPanelTheme() }}\"\n [attr.id]=\"id + '-panel'\"\n [attr.aria-multiselectable]=\"multiple\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"_getPanelAriaLabelledby()\"\n [ngClass]=\"panelClass\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".mdc-menu-surface{display:none;position:absolute;box-sizing:border-box;margin:0;padding:0;transform:scale(1);transform-origin:top left;opacity:0;overflow:auto;will-change:transform,opacity;transform-origin-left:top left;transform-origin-right:top right}.mdc-menu-surface:focus{outline:none}.mdc-menu-surface--animating-open{display:inline-block;transform:scale(0.8);opacity:0}.mdc-menu-surface--open{display:inline-block;transform:scale(1);opacity:1}.mdc-menu-surface--animating-closed{display:inline-block;opacity:0}[dir=rtl] .mdc-menu-surface,.mdc-menu-surface[dir=rtl]{transform-origin-left:top right;transform-origin-right:top left}.mdc-menu-surface--anchor{position:relative;overflow:visible}.mdc-menu-surface--fixed{position:fixed}.mdc-menu-surface--fullwidth{width:100%}.mdc-menu-surface{max-width:calc(100vw - 32px);max-width:var(--mdc-menu-max-width, calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:var(--mdc-menu-max-height, calc(100vh - 32px));z-index:8;border-radius:4px;border-radius:var(--mdc-shape-medium, 4px)}.mat-mdc-select{display:inline-block;width:100%;outline:none}.mat-mdc-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{height:24px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:translateY(-8px)}.mat-form-field-appearance-fill .mdc-text-field--no-label .mat-mdc-select-arrow-wrapper{transform:none}.mat-mdc-select-arrow{width:10px;height:5px;position:relative}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}.cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .cdk-high-contrast-active .mat-mdc-select-arrow svg{fill:GrayText}.mdc-menu-surface.mat-mdc-select-panel{width:100%;max-height:275px;position:static;outline:0;margin:0;padding:8px 0;list-style-type:none}.mdc-menu-surface.mat-mdc-select-panel:focus{outline:none}.cdk-high-contrast-active .mdc-menu-surface.mat-mdc-select-panel{outline:solid 1px}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) .mdc-menu-surface.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above .mdc-menu-surface.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100% / 0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:\" \";white-space:pre;width:1px;display:inline-block;visibility:hidden}"] }]
1108
1164
  }], propDecorators: { options: [{
1109
1165
  type: ContentChildren,
1110
1166
  args: [MatOption, { descendants: true }]
@@ -1119,19 +1175,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-rc.2", ng
1119
1175
  }] } });
1120
1176
 
1121
1177
  class MatSelectModule {
1122
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0-rc.2", ngImport: i0, type: MatSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1123
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0-rc.2", ngImport: i0, type: MatSelectModule, declarations: [MatSelect, MatSelectTrigger], imports: [CommonModule, OverlayModule, MatOptionModule, MatCommonModule], exports: [CdkScrollableModule,
1178
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: MatSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1179
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.0", ngImport: i0, type: MatSelectModule, declarations: [MatSelect, MatSelectTrigger], imports: [CommonModule, OverlayModule, MatOptionModule, MatCommonModule], exports: [CdkScrollableModule,
1124
1180
  MatFormFieldModule,
1125
1181
  MatSelect,
1126
1182
  MatSelectTrigger,
1127
1183
  MatOptionModule,
1128
1184
  MatCommonModule] }); }
1129
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0-rc.2", ngImport: i0, type: MatSelectModule, providers: [MAT_SELECT_SCROLL_STRATEGY_PROVIDER], imports: [CommonModule, OverlayModule, MatOptionModule, MatCommonModule, CdkScrollableModule,
1185
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: MatSelectModule, providers: [MAT_SELECT_SCROLL_STRATEGY_PROVIDER], imports: [CommonModule, OverlayModule, MatOptionModule, MatCommonModule, CdkScrollableModule,
1130
1186
  MatFormFieldModule,
1131
1187
  MatOptionModule,
1132
1188
  MatCommonModule] }); }
1133
1189
  }
1134
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0-rc.2", ngImport: i0, type: MatSelectModule, decorators: [{
1190
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: MatSelectModule, decorators: [{
1135
1191
  type: NgModule,
1136
1192
  args: [{
1137
1193
  imports: [CommonModule, OverlayModule, MatOptionModule, MatCommonModule],