@angular/material 15.1.0-rc.0 → 15.1.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 (504) hide show
  1. package/core/mdc-helpers/_mdc-helpers.scss +8 -7
  2. package/core/typography/_all-typography.scss +47 -51
  3. package/esm2020/autocomplete/autocomplete-origin.mjs +7 -7
  4. package/esm2020/autocomplete/autocomplete-trigger.mjs +17 -17
  5. package/esm2020/autocomplete/autocomplete.mjs +36 -36
  6. package/esm2020/autocomplete/module.mjs +5 -5
  7. package/esm2020/badge/badge-module.mjs +5 -5
  8. package/esm2020/badge/badge.mjs +31 -31
  9. package/esm2020/bottom-sheet/bottom-sheet-container.mjs +4 -4
  10. package/esm2020/bottom-sheet/bottom-sheet-module.mjs +5 -5
  11. package/esm2020/bottom-sheet/bottom-sheet-ref.mjs +5 -5
  12. package/esm2020/bottom-sheet/bottom-sheet.mjs +11 -11
  13. package/esm2020/button/button-base.mjs +7 -7
  14. package/esm2020/button/button.mjs +7 -7
  15. package/esm2020/button/fab.mjs +25 -25
  16. package/esm2020/button/icon-button.mjs +7 -7
  17. package/esm2020/button/module.mjs +5 -5
  18. package/esm2020/button-toggle/button-toggle-module.mjs +5 -5
  19. package/esm2020/button-toggle/button-toggle.mjs +50 -50
  20. package/esm2020/card/card.mjs +43 -43
  21. package/esm2020/card/module.mjs +5 -5
  22. package/esm2020/checkbox/checkbox-required-validator.mjs +4 -4
  23. package/esm2020/checkbox/checkbox.mjs +18 -18
  24. package/esm2020/checkbox/module.mjs +9 -9
  25. package/esm2020/chips/chip-action.mjs +21 -21
  26. package/esm2020/chips/chip-edit-input.mjs +4 -4
  27. package/esm2020/chips/chip-grid.mjs +39 -39
  28. package/esm2020/chips/chip-icons.mjs +10 -10
  29. package/esm2020/chips/chip-input.mjs +28 -28
  30. package/esm2020/chips/chip-listbox.mjs +4 -4
  31. package/esm2020/chips/chip-option.mjs +4 -4
  32. package/esm2020/chips/chip-row.mjs +4 -4
  33. package/esm2020/chips/chip-set.mjs +20 -20
  34. package/esm2020/chips/chip.mjs +36 -36
  35. package/esm2020/chips/module.mjs +5 -5
  36. package/esm2020/core/common-behaviors/color.mjs +7 -7
  37. package/esm2020/core/common-behaviors/common-module.mjs +5 -5
  38. package/esm2020/core/common-behaviors/disable-ripple.mjs +5 -5
  39. package/esm2020/core/common-behaviors/disabled.mjs +5 -5
  40. package/esm2020/core/common-behaviors/error-state.mjs +6 -6
  41. package/esm2020/core/common-behaviors/tabindex.mjs +6 -6
  42. package/esm2020/core/datetime/index.mjs +9 -9
  43. package/esm2020/core/datetime/native-date-adapter.mjs +4 -4
  44. package/esm2020/core/error/error-options.mjs +7 -7
  45. package/esm2020/core/line/line.mjs +8 -8
  46. package/esm2020/core/option/index.mjs +5 -5
  47. package/esm2020/core/option/optgroup.mjs +7 -7
  48. package/esm2020/core/option/option.mjs +24 -24
  49. package/esm2020/core/ripple/index.mjs +5 -5
  50. package/esm2020/core/ripple/ripple.mjs +19 -19
  51. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +5 -5
  52. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  53. package/esm2020/core/version.mjs +1 -1
  54. package/esm2020/datepicker/calendar-body.mjs +10 -10
  55. package/esm2020/datepicker/calendar.mjs +58 -58
  56. package/esm2020/datepicker/date-range-input-parts.mjs +10 -10
  57. package/esm2020/datepicker/date-range-input.mjs +40 -40
  58. package/esm2020/datepicker/date-range-picker.mjs +4 -4
  59. package/esm2020/datepicker/date-range-selection-strategy.mjs +4 -4
  60. package/esm2020/datepicker/date-selection-model.mjs +10 -10
  61. package/esm2020/datepicker/datepicker-actions.mjs +10 -10
  62. package/esm2020/datepicker/datepicker-base.mjs +56 -56
  63. package/esm2020/datepicker/datepicker-input-base.mjs +56 -56
  64. package/esm2020/datepicker/datepicker-input.mjs +10 -10
  65. package/esm2020/datepicker/datepicker-intl.mjs +4 -4
  66. package/esm2020/datepicker/datepicker-module.mjs +5 -5
  67. package/esm2020/datepicker/datepicker-toggle.mjs +14 -14
  68. package/esm2020/datepicker/datepicker.mjs +4 -4
  69. package/esm2020/datepicker/month-view.mjs +36 -36
  70. package/esm2020/datepicker/multi-year-view.mjs +20 -20
  71. package/esm2020/datepicker/year-view.mjs +26 -26
  72. package/esm2020/dialog/dialog-container.mjs +7 -7
  73. package/esm2020/dialog/dialog-content-directives.mjs +13 -13
  74. package/esm2020/dialog/dialog.mjs +19 -19
  75. package/esm2020/dialog/module.mjs +5 -5
  76. package/esm2020/divider/divider-module.mjs +5 -5
  77. package/esm2020/divider/divider.mjs +4 -4
  78. package/esm2020/expansion/accordion.mjs +4 -4
  79. package/esm2020/expansion/expansion-module.mjs +5 -5
  80. package/esm2020/expansion/expansion-panel-content.mjs +4 -4
  81. package/esm2020/expansion/expansion-panel-header.mjs +10 -10
  82. package/esm2020/expansion/expansion-panel.mjs +21 -21
  83. package/esm2020/form-field/directives/error.mjs +4 -4
  84. package/esm2020/form-field/directives/floating-label.mjs +4 -4
  85. package/esm2020/form-field/directives/hint.mjs +4 -4
  86. package/esm2020/form-field/directives/label.mjs +4 -4
  87. package/esm2020/form-field/directives/line-ripple.mjs +4 -4
  88. package/esm2020/form-field/directives/notched-outline.mjs +4 -4
  89. package/esm2020/form-field/directives/prefix.mjs +4 -4
  90. package/esm2020/form-field/directives/suffix.mjs +4 -4
  91. package/esm2020/form-field/form-field-control.mjs +4 -4
  92. package/esm2020/form-field/form-field.mjs +44 -44
  93. package/esm2020/form-field/module.mjs +5 -5
  94. package/esm2020/grid-list/grid-list-module.mjs +5 -5
  95. package/esm2020/grid-list/grid-list.mjs +4 -4
  96. package/esm2020/grid-list/grid-tile.mjs +16 -16
  97. package/esm2020/icon/icon-module.mjs +5 -5
  98. package/esm2020/icon/icon-registry.mjs +4 -4
  99. package/esm2020/icon/icon.mjs +27 -27
  100. package/esm2020/icon/testing/fake-icon-registry.mjs +8 -8
  101. package/esm2020/input/input.mjs +74 -74
  102. package/esm2020/input/module.mjs +5 -5
  103. package/esm2020/legacy-autocomplete/autocomplete-module.mjs +5 -5
  104. package/esm2020/legacy-autocomplete/autocomplete-origin.mjs +4 -4
  105. package/esm2020/legacy-autocomplete/autocomplete-trigger.mjs +4 -4
  106. package/esm2020/legacy-autocomplete/autocomplete.mjs +4 -4
  107. package/esm2020/legacy-button/button-module.mjs +5 -5
  108. package/esm2020/legacy-button/button.mjs +7 -7
  109. package/esm2020/legacy-card/card-module.mjs +5 -5
  110. package/esm2020/legacy-card/card.mjs +43 -43
  111. package/esm2020/legacy-checkbox/checkbox-module.mjs +5 -5
  112. package/esm2020/legacy-checkbox/checkbox.mjs +4 -4
  113. package/esm2020/legacy-chips/chip-input.mjs +25 -25
  114. package/esm2020/legacy-chips/chip-list.mjs +53 -53
  115. package/esm2020/legacy-chips/chip.mjs +54 -54
  116. package/esm2020/legacy-chips/chips-module.mjs +5 -5
  117. package/esm2020/legacy-core/option/index.mjs +5 -5
  118. package/esm2020/legacy-core/option/optgroup.mjs +4 -4
  119. package/esm2020/legacy-core/option/option.mjs +4 -4
  120. package/esm2020/legacy-dialog/dialog-container.mjs +10 -10
  121. package/esm2020/legacy-dialog/dialog-content-directives.mjs +13 -13
  122. package/esm2020/legacy-dialog/dialog-module.mjs +5 -5
  123. package/esm2020/legacy-dialog/dialog.mjs +4 -4
  124. package/esm2020/legacy-form-field/error.mjs +4 -4
  125. package/esm2020/legacy-form-field/form-field-module.mjs +5 -5
  126. package/esm2020/legacy-form-field/form-field.mjs +40 -40
  127. package/esm2020/legacy-form-field/hint.mjs +4 -4
  128. package/esm2020/legacy-form-field/label.mjs +4 -4
  129. package/esm2020/legacy-form-field/placeholder.mjs +4 -4
  130. package/esm2020/legacy-form-field/prefix.mjs +4 -4
  131. package/esm2020/legacy-form-field/suffix.mjs +4 -4
  132. package/esm2020/legacy-input/input-module.mjs +5 -5
  133. package/esm2020/legacy-input/input.mjs +4 -4
  134. package/esm2020/legacy-list/list-module.mjs +5 -5
  135. package/esm2020/legacy-list/list.mjs +19 -19
  136. package/esm2020/legacy-list/selection-list.mjs +57 -57
  137. package/esm2020/legacy-menu/menu-content.mjs +4 -4
  138. package/esm2020/legacy-menu/menu-item.mjs +4 -4
  139. package/esm2020/legacy-menu/menu-module.mjs +5 -5
  140. package/esm2020/legacy-menu/menu-trigger.mjs +4 -4
  141. package/esm2020/legacy-menu/menu.mjs +4 -4
  142. package/esm2020/legacy-paginator/paginator-module.mjs +5 -5
  143. package/esm2020/legacy-paginator/paginator.mjs +4 -4
  144. package/esm2020/legacy-progress-bar/progress-bar-module.mjs +5 -5
  145. package/esm2020/legacy-progress-bar/progress-bar.mjs +4 -4
  146. package/esm2020/legacy-progress-spinner/progress-spinner-module.mjs +5 -5
  147. package/esm2020/legacy-progress-spinner/progress-spinner.mjs +30 -30
  148. package/esm2020/legacy-radio/radio-module.mjs +5 -5
  149. package/esm2020/legacy-radio/radio.mjs +7 -7
  150. package/esm2020/legacy-select/select-module.mjs +5 -5
  151. package/esm2020/legacy-select/select.mjs +7 -7
  152. package/esm2020/legacy-slide-toggle/slide-toggle-module.mjs +5 -5
  153. package/esm2020/legacy-slide-toggle/slide-toggle.mjs +4 -4
  154. package/esm2020/legacy-slider/slider-module.mjs +5 -5
  155. package/esm2020/legacy-slider/slider.mjs +143 -143
  156. package/esm2020/legacy-snack-bar/simple-snack-bar.mjs +4 -4
  157. package/esm2020/legacy-snack-bar/snack-bar-container.mjs +4 -4
  158. package/esm2020/legacy-snack-bar/snack-bar-module.mjs +5 -5
  159. package/esm2020/legacy-snack-bar/snack-bar.mjs +4 -4
  160. package/esm2020/legacy-table/cell.mjs +22 -22
  161. package/esm2020/legacy-table/row.mjs +22 -22
  162. package/esm2020/legacy-table/table-module.mjs +5 -5
  163. package/esm2020/legacy-table/table.mjs +7 -7
  164. package/esm2020/legacy-table/text-column.mjs +4 -4
  165. package/esm2020/legacy-tabs/ink-bar.mjs +4 -4
  166. package/esm2020/legacy-tabs/tab-body.mjs +7 -7
  167. package/esm2020/legacy-tabs/tab-content.mjs +4 -4
  168. package/esm2020/legacy-tabs/tab-group.mjs +6 -6
  169. package/esm2020/legacy-tabs/tab-header.mjs +4 -4
  170. package/esm2020/legacy-tabs/tab-label-wrapper.mjs +4 -4
  171. package/esm2020/legacy-tabs/tab-label.mjs +4 -4
  172. package/esm2020/legacy-tabs/tab-nav-bar/tab-nav-bar.mjs +10 -10
  173. package/esm2020/legacy-tabs/tab.mjs +4 -4
  174. package/esm2020/legacy-tabs/tabs-module.mjs +5 -5
  175. package/esm2020/legacy-tooltip/tooltip-module.mjs +5 -5
  176. package/esm2020/legacy-tooltip/tooltip.mjs +7 -7
  177. package/esm2020/list/action-list.mjs +4 -4
  178. package/esm2020/list/list-base.mjs +33 -33
  179. package/esm2020/list/list-item-sections.mjs +19 -19
  180. package/esm2020/list/list-module.mjs +5 -5
  181. package/esm2020/list/list-option.mjs +23 -23
  182. package/esm2020/list/list.mjs +11 -11
  183. package/esm2020/list/nav-list.mjs +4 -4
  184. package/esm2020/list/selection-list.mjs +25 -25
  185. package/esm2020/list/subheader.mjs +4 -4
  186. package/esm2020/menu/menu-content.mjs +7 -7
  187. package/esm2020/menu/menu-item.mjs +4 -4
  188. package/esm2020/menu/menu-trigger.mjs +41 -41
  189. package/esm2020/menu/menu.mjs +40 -40
  190. package/esm2020/menu/module.mjs +5 -5
  191. package/esm2020/paginator/module.mjs +5 -5
  192. package/esm2020/paginator/paginator-intl.mjs +4 -4
  193. package/esm2020/paginator/paginator.mjs +37 -37
  194. package/esm2020/progress-bar/module.mjs +5 -5
  195. package/esm2020/progress-bar/progress-bar.mjs +4 -4
  196. package/esm2020/progress-spinner/module.mjs +5 -5
  197. package/esm2020/progress-spinner/progress-spinner.mjs +4 -4
  198. package/esm2020/radio/module.mjs +5 -5
  199. package/esm2020/radio/radio.mjs +72 -72
  200. package/esm2020/select/module.mjs +5 -5
  201. package/esm2020/select/select.mjs +83 -83
  202. package/esm2020/sidenav/drawer.mjs +117 -117
  203. package/esm2020/sidenav/sidenav-module.mjs +5 -5
  204. package/esm2020/sidenav/sidenav.mjs +10 -10
  205. package/esm2020/slide-toggle/module.mjs +9 -9
  206. package/esm2020/slide-toggle/slide-toggle-required-validator.mjs +4 -4
  207. package/esm2020/slide-toggle/slide-toggle.mjs +30 -30
  208. package/esm2020/slider/module.mjs +5 -5
  209. package/esm2020/slider/slider-input.mjs +63 -63
  210. package/esm2020/slider/slider-thumb.mjs +4 -4
  211. package/esm2020/slider/slider.mjs +48 -48
  212. package/esm2020/snack-bar/module.mjs +5 -5
  213. package/esm2020/snack-bar/simple-snack-bar.mjs +4 -4
  214. package/esm2020/snack-bar/snack-bar-container.mjs +7 -7
  215. package/esm2020/snack-bar/snack-bar-content.mjs +10 -10
  216. package/esm2020/snack-bar/snack-bar.mjs +20 -20
  217. package/esm2020/sort/sort-header-intl.mjs +4 -4
  218. package/esm2020/sort/sort-header.mjs +21 -21
  219. package/esm2020/sort/sort-module.mjs +5 -5
  220. package/esm2020/sort/sort.mjs +20 -20
  221. package/esm2020/stepper/step-content.mjs +4 -4
  222. package/esm2020/stepper/step-header.mjs +4 -4
  223. package/esm2020/stepper/step-label.mjs +4 -4
  224. package/esm2020/stepper/stepper-button.mjs +7 -7
  225. package/esm2020/stepper/stepper-icon.mjs +4 -4
  226. package/esm2020/stepper/stepper-intl.mjs +4 -4
  227. package/esm2020/stepper/stepper-module.mjs +5 -5
  228. package/esm2020/stepper/stepper.mjs +14 -14
  229. package/esm2020/table/cell.mjs +22 -22
  230. package/esm2020/table/module.mjs +5 -5
  231. package/esm2020/table/row.mjs +22 -22
  232. package/esm2020/table/table-data-source.mjs +57 -57
  233. package/esm2020/table/table.mjs +7 -7
  234. package/esm2020/table/text-column.mjs +4 -4
  235. package/esm2020/tabs/module.mjs +5 -5
  236. package/esm2020/tabs/paginated-tab-header.mjs +37 -36
  237. package/esm2020/tabs/tab-body.mjs +15 -15
  238. package/esm2020/tabs/tab-content.mjs +4 -4
  239. package/esm2020/tabs/tab-group.mjs +63 -65
  240. package/esm2020/tabs/tab-header.mjs +11 -11
  241. package/esm2020/tabs/tab-label-wrapper.mjs +7 -7
  242. package/esm2020/tabs/tab-label.mjs +4 -4
  243. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +51 -51
  244. package/esm2020/tabs/tab.mjs +11 -11
  245. package/esm2020/toolbar/toolbar-module.mjs +5 -5
  246. package/esm2020/toolbar/toolbar.mjs +7 -7
  247. package/esm2020/tooltip/module.mjs +5 -5
  248. package/esm2020/tooltip/tooltip.mjs +72 -72
  249. package/esm2020/tree/data-source/flat-data-source.mjs +9 -9
  250. package/esm2020/tree/node.mjs +15 -15
  251. package/esm2020/tree/outlet.mjs +4 -4
  252. package/esm2020/tree/padding.mjs +4 -4
  253. package/esm2020/tree/toggle.mjs +4 -4
  254. package/esm2020/tree/tree-module.mjs +5 -5
  255. package/esm2020/tree/tree.mjs +4 -4
  256. package/fesm2015/autocomplete.mjs +61 -61
  257. package/fesm2015/autocomplete.mjs.map +1 -1
  258. package/fesm2015/badge.mjs +34 -34
  259. package/fesm2015/badge.mjs.map +1 -1
  260. package/fesm2015/bottom-sheet.mjs +21 -21
  261. package/fesm2015/bottom-sheet.mjs.map +1 -1
  262. package/fesm2015/button-toggle.mjs +53 -53
  263. package/fesm2015/button-toggle.mjs.map +1 -1
  264. package/fesm2015/button.mjs +46 -46
  265. package/fesm2015/button.mjs.map +1 -1
  266. package/fesm2015/card.mjs +46 -46
  267. package/fesm2015/card.mjs.map +1 -1
  268. package/fesm2015/checkbox.mjs +28 -28
  269. package/fesm2015/checkbox.mjs.map +1 -1
  270. package/fesm2015/chips.mjs +164 -164
  271. package/fesm2015/chips.mjs.map +1 -1
  272. package/fesm2015/core.mjs +115 -115
  273. package/fesm2015/core.mjs.map +1 -1
  274. package/fesm2015/datepicker.mjs +359 -359
  275. package/fesm2015/datepicker.mjs.map +1 -1
  276. package/fesm2015/dialog.mjs +40 -40
  277. package/fesm2015/dialog.mjs.map +1 -1
  278. package/fesm2015/divider.mjs +7 -7
  279. package/fesm2015/divider.mjs.map +1 -1
  280. package/fesm2015/expansion.mjs +39 -39
  281. package/fesm2015/expansion.mjs.map +1 -1
  282. package/fesm2015/form-field.mjs +74 -74
  283. package/fesm2015/form-field.mjs.map +1 -1
  284. package/fesm2015/grid-list.mjs +22 -22
  285. package/fesm2015/grid-list.mjs.map +1 -1
  286. package/fesm2015/icon/testing.mjs +7 -7
  287. package/fesm2015/icon/testing.mjs.map +1 -1
  288. package/fesm2015/icon.mjs +33 -33
  289. package/fesm2015/icon.mjs.map +1 -1
  290. package/fesm2015/input.mjs +78 -78
  291. package/fesm2015/input.mjs.map +1 -1
  292. package/fesm2015/legacy-autocomplete.mjs +13 -13
  293. package/fesm2015/legacy-autocomplete.mjs.map +1 -1
  294. package/fesm2015/legacy-button.mjs +10 -10
  295. package/fesm2015/legacy-button.mjs.map +1 -1
  296. package/fesm2015/legacy-card.mjs +46 -46
  297. package/fesm2015/legacy-card.mjs.map +1 -1
  298. package/fesm2015/legacy-checkbox.mjs +7 -7
  299. package/fesm2015/legacy-checkbox.mjs.map +1 -1
  300. package/fesm2015/legacy-chips.mjs +133 -133
  301. package/fesm2015/legacy-chips.mjs.map +1 -1
  302. package/fesm2015/legacy-core.mjs +10 -10
  303. package/fesm2015/legacy-core.mjs.map +1 -1
  304. package/fesm2015/legacy-dialog.mjs +28 -28
  305. package/fesm2015/legacy-dialog.mjs.map +1 -1
  306. package/fesm2015/legacy-form-field.mjs +61 -61
  307. package/fesm2015/legacy-form-field.mjs.map +1 -1
  308. package/fesm2015/legacy-input.mjs +7 -7
  309. package/fesm2015/legacy-input.mjs.map +1 -1
  310. package/fesm2015/legacy-list.mjs +78 -78
  311. package/fesm2015/legacy-list.mjs.map +1 -1
  312. package/fesm2015/legacy-menu.mjs +16 -16
  313. package/fesm2015/legacy-menu.mjs.map +1 -1
  314. package/fesm2015/legacy-paginator.mjs +7 -7
  315. package/fesm2015/legacy-paginator.mjs.map +1 -1
  316. package/fesm2015/legacy-progress-bar.mjs +7 -7
  317. package/fesm2015/legacy-progress-bar.mjs.map +1 -1
  318. package/fesm2015/legacy-progress-spinner.mjs +33 -33
  319. package/fesm2015/legacy-progress-spinner.mjs.map +1 -1
  320. package/fesm2015/legacy-radio.mjs +10 -10
  321. package/fesm2015/legacy-radio.mjs.map +1 -1
  322. package/fesm2015/legacy-select.mjs +10 -10
  323. package/fesm2015/legacy-select.mjs.map +1 -1
  324. package/fesm2015/legacy-slide-toggle.mjs +7 -7
  325. package/fesm2015/legacy-slide-toggle.mjs.map +1 -1
  326. package/fesm2015/legacy-slider.mjs +146 -146
  327. package/fesm2015/legacy-slider.mjs.map +1 -1
  328. package/fesm2015/legacy-snack-bar.mjs +13 -13
  329. package/fesm2015/legacy-snack-bar.mjs.map +1 -1
  330. package/fesm2015/legacy-table.mjs +55 -55
  331. package/fesm2015/legacy-table.mjs.map +1 -1
  332. package/fesm2015/legacy-tabs.mjs +42 -42
  333. package/fesm2015/legacy-tabs.mjs.map +1 -1
  334. package/fesm2015/legacy-tooltip.mjs +10 -10
  335. package/fesm2015/legacy-tooltip.mjs.map +1 -1
  336. package/fesm2015/list.mjs +119 -119
  337. package/fesm2015/list.mjs.map +1 -1
  338. package/fesm2015/menu.mjs +93 -93
  339. package/fesm2015/menu.mjs.map +1 -1
  340. package/fesm2015/paginator.mjs +43 -43
  341. package/fesm2015/paginator.mjs.map +1 -1
  342. package/fesm2015/progress-bar.mjs +7 -7
  343. package/fesm2015/progress-bar.mjs.map +1 -1
  344. package/fesm2015/progress-spinner.mjs +7 -7
  345. package/fesm2015/progress-spinner.mjs.map +1 -1
  346. package/fesm2015/radio.mjs +75 -75
  347. package/fesm2015/radio.mjs.map +1 -1
  348. package/fesm2015/select.mjs +87 -87
  349. package/fesm2015/select.mjs.map +1 -1
  350. package/fesm2015/sidenav.mjs +129 -129
  351. package/fesm2015/sidenav.mjs.map +1 -1
  352. package/fesm2015/slide-toggle.mjs +40 -40
  353. package/fesm2015/slide-toggle.mjs.map +1 -1
  354. package/fesm2015/slider.mjs +116 -116
  355. package/fesm2015/slider.mjs.map +1 -1
  356. package/fesm2015/snack-bar.mjs +41 -41
  357. package/fesm2015/snack-bar.mjs.map +1 -1
  358. package/fesm2015/sort.mjs +46 -46
  359. package/fesm2015/sort.mjs.map +1 -1
  360. package/fesm2015/stepper.mjs +38 -38
  361. package/fesm2015/stepper.mjs.map +1 -1
  362. package/fesm2015/table.mjs +111 -111
  363. package/fesm2015/table.mjs.map +1 -1
  364. package/fesm2015/tabs.mjs +199 -200
  365. package/fesm2015/tabs.mjs.map +1 -1
  366. package/fesm2015/toolbar.mjs +10 -10
  367. package/fesm2015/toolbar.mjs.map +1 -1
  368. package/fesm2015/tooltip.mjs +75 -75
  369. package/fesm2015/tooltip.mjs.map +1 -1
  370. package/fesm2015/tree.mjs +38 -38
  371. package/fesm2015/tree.mjs.map +1 -1
  372. package/fesm2020/autocomplete.mjs +61 -61
  373. package/fesm2020/autocomplete.mjs.map +1 -1
  374. package/fesm2020/badge.mjs +34 -34
  375. package/fesm2020/badge.mjs.map +1 -1
  376. package/fesm2020/bottom-sheet.mjs +21 -21
  377. package/fesm2020/bottom-sheet.mjs.map +1 -1
  378. package/fesm2020/button-toggle.mjs +53 -53
  379. package/fesm2020/button-toggle.mjs.map +1 -1
  380. package/fesm2020/button.mjs +46 -46
  381. package/fesm2020/button.mjs.map +1 -1
  382. package/fesm2020/card.mjs +46 -46
  383. package/fesm2020/card.mjs.map +1 -1
  384. package/fesm2020/checkbox.mjs +28 -28
  385. package/fesm2020/checkbox.mjs.map +1 -1
  386. package/fesm2020/chips.mjs +164 -164
  387. package/fesm2020/chips.mjs.map +1 -1
  388. package/fesm2020/core.mjs +115 -115
  389. package/fesm2020/core.mjs.map +1 -1
  390. package/fesm2020/datepicker.mjs +359 -359
  391. package/fesm2020/datepicker.mjs.map +1 -1
  392. package/fesm2020/dialog.mjs +40 -40
  393. package/fesm2020/dialog.mjs.map +1 -1
  394. package/fesm2020/divider.mjs +7 -7
  395. package/fesm2020/divider.mjs.map +1 -1
  396. package/fesm2020/expansion.mjs +39 -39
  397. package/fesm2020/expansion.mjs.map +1 -1
  398. package/fesm2020/form-field.mjs +74 -74
  399. package/fesm2020/form-field.mjs.map +1 -1
  400. package/fesm2020/grid-list.mjs +22 -22
  401. package/fesm2020/grid-list.mjs.map +1 -1
  402. package/fesm2020/icon/testing.mjs +7 -7
  403. package/fesm2020/icon/testing.mjs.map +1 -1
  404. package/fesm2020/icon.mjs +33 -33
  405. package/fesm2020/icon.mjs.map +1 -1
  406. package/fesm2020/input.mjs +77 -77
  407. package/fesm2020/input.mjs.map +1 -1
  408. package/fesm2020/legacy-autocomplete.mjs +13 -13
  409. package/fesm2020/legacy-autocomplete.mjs.map +1 -1
  410. package/fesm2020/legacy-button.mjs +10 -10
  411. package/fesm2020/legacy-button.mjs.map +1 -1
  412. package/fesm2020/legacy-card.mjs +46 -46
  413. package/fesm2020/legacy-card.mjs.map +1 -1
  414. package/fesm2020/legacy-checkbox.mjs +7 -7
  415. package/fesm2020/legacy-checkbox.mjs.map +1 -1
  416. package/fesm2020/legacy-chips.mjs +133 -133
  417. package/fesm2020/legacy-chips.mjs.map +1 -1
  418. package/fesm2020/legacy-core.mjs +10 -10
  419. package/fesm2020/legacy-core.mjs.map +1 -1
  420. package/fesm2020/legacy-dialog.mjs +28 -28
  421. package/fesm2020/legacy-dialog.mjs.map +1 -1
  422. package/fesm2020/legacy-form-field.mjs +61 -61
  423. package/fesm2020/legacy-form-field.mjs.map +1 -1
  424. package/fesm2020/legacy-input.mjs +7 -7
  425. package/fesm2020/legacy-input.mjs.map +1 -1
  426. package/fesm2020/legacy-list.mjs +78 -78
  427. package/fesm2020/legacy-list.mjs.map +1 -1
  428. package/fesm2020/legacy-menu.mjs +16 -16
  429. package/fesm2020/legacy-menu.mjs.map +1 -1
  430. package/fesm2020/legacy-paginator.mjs +7 -7
  431. package/fesm2020/legacy-paginator.mjs.map +1 -1
  432. package/fesm2020/legacy-progress-bar.mjs +7 -7
  433. package/fesm2020/legacy-progress-bar.mjs.map +1 -1
  434. package/fesm2020/legacy-progress-spinner.mjs +33 -33
  435. package/fesm2020/legacy-progress-spinner.mjs.map +1 -1
  436. package/fesm2020/legacy-radio.mjs +10 -10
  437. package/fesm2020/legacy-radio.mjs.map +1 -1
  438. package/fesm2020/legacy-select.mjs +10 -10
  439. package/fesm2020/legacy-select.mjs.map +1 -1
  440. package/fesm2020/legacy-slide-toggle.mjs +7 -7
  441. package/fesm2020/legacy-slide-toggle.mjs.map +1 -1
  442. package/fesm2020/legacy-slider.mjs +146 -146
  443. package/fesm2020/legacy-slider.mjs.map +1 -1
  444. package/fesm2020/legacy-snack-bar.mjs +13 -13
  445. package/fesm2020/legacy-snack-bar.mjs.map +1 -1
  446. package/fesm2020/legacy-table.mjs +55 -55
  447. package/fesm2020/legacy-table.mjs.map +1 -1
  448. package/fesm2020/legacy-tabs.mjs +42 -42
  449. package/fesm2020/legacy-tabs.mjs.map +1 -1
  450. package/fesm2020/legacy-tooltip.mjs +10 -10
  451. package/fesm2020/legacy-tooltip.mjs.map +1 -1
  452. package/fesm2020/list.mjs +119 -119
  453. package/fesm2020/list.mjs.map +1 -1
  454. package/fesm2020/menu.mjs +92 -92
  455. package/fesm2020/menu.mjs.map +1 -1
  456. package/fesm2020/paginator.mjs +43 -43
  457. package/fesm2020/paginator.mjs.map +1 -1
  458. package/fesm2020/progress-bar.mjs +7 -7
  459. package/fesm2020/progress-bar.mjs.map +1 -1
  460. package/fesm2020/progress-spinner.mjs +7 -7
  461. package/fesm2020/progress-spinner.mjs.map +1 -1
  462. package/fesm2020/radio.mjs +75 -75
  463. package/fesm2020/radio.mjs.map +1 -1
  464. package/fesm2020/select.mjs +86 -86
  465. package/fesm2020/select.mjs.map +1 -1
  466. package/fesm2020/sidenav.mjs +129 -129
  467. package/fesm2020/sidenav.mjs.map +1 -1
  468. package/fesm2020/slide-toggle.mjs +40 -40
  469. package/fesm2020/slide-toggle.mjs.map +1 -1
  470. package/fesm2020/slider.mjs +116 -116
  471. package/fesm2020/slider.mjs.map +1 -1
  472. package/fesm2020/snack-bar.mjs +41 -41
  473. package/fesm2020/snack-bar.mjs.map +1 -1
  474. package/fesm2020/sort.mjs +46 -46
  475. package/fesm2020/sort.mjs.map +1 -1
  476. package/fesm2020/stepper.mjs +38 -38
  477. package/fesm2020/stepper.mjs.map +1 -1
  478. package/fesm2020/table.mjs +111 -111
  479. package/fesm2020/table.mjs.map +1 -1
  480. package/fesm2020/tabs.mjs +198 -199
  481. package/fesm2020/tabs.mjs.map +1 -1
  482. package/fesm2020/toolbar.mjs +10 -10
  483. package/fesm2020/toolbar.mjs.map +1 -1
  484. package/fesm2020/tooltip.mjs +75 -75
  485. package/fesm2020/tooltip.mjs.map +1 -1
  486. package/fesm2020/tree.mjs +38 -38
  487. package/fesm2020/tree.mjs.map +1 -1
  488. package/legacy-prebuilt-themes/legacy-deeppurple-amber.css +1 -1
  489. package/legacy-prebuilt-themes/legacy-indigo-pink.css +1 -1
  490. package/legacy-prebuilt-themes/legacy-pink-bluegrey.css +1 -1
  491. package/legacy-prebuilt-themes/legacy-purple-green.css +1 -1
  492. package/legacy-tabs/_tabs-theme.scss +7 -5
  493. package/package.json +7 -7
  494. package/prebuilt-themes/deeppurple-amber.css +1 -1
  495. package/prebuilt-themes/indigo-pink.css +1 -1
  496. package/prebuilt-themes/pink-bluegrey.css +1 -1
  497. package/prebuilt-themes/purple-green.css +1 -1
  498. package/schematics/ng-add/index.js +2 -2
  499. package/schematics/ng-add/index.mjs +2 -2
  500. package/schematics/ng-generate/mdc-migration/index_bundled.js +3735 -3742
  501. package/schematics/ng-generate/mdc-migration/index_bundled.js.map +3 -3
  502. package/schematics/ng-generate/mdc-migration/mdc_migration_bundle_metadata.json +1 -1
  503. package/tabs/_tabs-theme.scss +8 -0
  504. package/tabs/index.d.ts +1 -1
package/fesm2015/tabs.mjs CHANGED
@@ -108,9 +108,9 @@ class MatTabBodyPortal extends CdkPortalOutlet {
108
108
  this._leavingSub.unsubscribe();
109
109
  }
110
110
  }
111
- MatTabBodyPortal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabBodyPortal, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: forwardRef(() => MatTabBody) }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
112
- MatTabBodyPortal.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatTabBodyPortal, selector: "[matTabBodyHost]", usesInheritance: true, ngImport: i0 });
113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabBodyPortal, decorators: [{
111
+ MatTabBodyPortal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabBodyPortal, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: forwardRef(() => MatTabBody) }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
112
+ MatTabBodyPortal.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatTabBodyPortal, selector: "[matTabBodyHost]", usesInheritance: true, ngImport: i0 });
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabBodyPortal, decorators: [{
114
114
  type: Directive,
115
115
  args: [{
116
116
  selector: '[matTabBodyHost]',
@@ -129,6 +129,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3",
129
129
  * @docs-private
130
130
  */
131
131
  class _MatTabBodyBase {
132
+ /** The shifted index position of the tab body, where zero represents the active center tab. */
133
+ set position(position) {
134
+ this._positionIndex = position;
135
+ this._computePositionAnimationState();
136
+ }
132
137
  constructor(_elementRef, _dir, changeDetectorRef) {
133
138
  this._elementRef = _elementRef;
134
139
  this._dir = _dir;
@@ -172,11 +177,6 @@ class _MatTabBodyBase {
172
177
  }
173
178
  });
174
179
  }
175
- /** The shifted index position of the tab body, where zero represents the active center tab. */
176
- set position(position) {
177
- this._positionIndex = position;
178
- this._computePositionAnimationState();
179
- }
180
180
  /**
181
181
  * After initialized, check if the content is centered and has an origin. If so, set the
182
182
  * special position states that transition the tab from the left or right before centering.
@@ -229,9 +229,9 @@ class _MatTabBodyBase {
229
229
  return 'right-origin-center';
230
230
  }
231
231
  }
232
- _MatTabBodyBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabBodyBase, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
233
- _MatTabBodyBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: _MatTabBodyBase, inputs: { _content: ["content", "_content"], origin: "origin", animationDuration: "animationDuration", preserveContent: "preserveContent", position: "position" }, outputs: { _onCentering: "_onCentering", _beforeCentering: "_beforeCentering", _afterLeavingCenter: "_afterLeavingCenter", _onCentered: "_onCentered" }, ngImport: i0 });
234
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabBodyBase, decorators: [{
232
+ _MatTabBodyBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabBodyBase, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
233
+ _MatTabBodyBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: _MatTabBodyBase, inputs: { _content: ["content", "_content"], origin: "origin", animationDuration: "animationDuration", preserveContent: "preserveContent", position: "position" }, outputs: { _onCentering: "_onCentering", _beforeCentering: "_beforeCentering", _afterLeavingCenter: "_afterLeavingCenter", _onCentered: "_onCentered" }, ngImport: i0 });
234
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabBodyBase, decorators: [{
235
235
  type: Directive
236
236
  }], ctorParameters: function () {
237
237
  return [{ type: i0.ElementRef }, { type: i1.Directionality, decorators: [{
@@ -266,9 +266,9 @@ class MatTabBody extends _MatTabBodyBase {
266
266
  super(elementRef, dir, changeDetectorRef);
267
267
  }
268
268
  }
269
- MatTabBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabBody, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
270
- MatTabBody.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatTabBody, selector: "mat-tab-body", host: { classAttribute: "mat-mdc-tab-body" }, viewQueries: [{ propertyName: "_portalHost", first: true, predicate: CdkPortalOutlet, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"mat-mdc-tab-body-content\" #content\n [@translateTab]=\"{\n value: _position,\n params: {animationDuration: animationDuration}\n }\"\n (@translateTab.start)=\"_onTranslateTabStarted($event)\"\n (@translateTab.done)=\"_translateTabComplete.next($event)\"\n cdkScrollable>\n <ng-template matTabBodyHost></ng-template>\n</div>\n", styles: [".mat-mdc-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-mdc-tab-body.mat-mdc-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-mdc-tab-group.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body.mat-mdc-tab-body-active{overflow-y:hidden}.mat-mdc-tab-body-content{height:100%;overflow:auto}.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body-content{overflow:hidden}.mat-mdc-tab-body-content[style*=\"visibility: hidden\"]{display:none}"], dependencies: [{ kind: "directive", type: MatTabBodyPortal, selector: "[matTabBodyHost]" }], animations: [matTabsAnimations.translateTab], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
271
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabBody, decorators: [{
269
+ MatTabBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabBody, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
270
+ MatTabBody.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatTabBody, selector: "mat-tab-body", host: { classAttribute: "mat-mdc-tab-body" }, viewQueries: [{ propertyName: "_portalHost", first: true, predicate: CdkPortalOutlet, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"mat-mdc-tab-body-content\" #content\n [@translateTab]=\"{\n value: _position,\n params: {animationDuration: animationDuration}\n }\"\n (@translateTab.start)=\"_onTranslateTabStarted($event)\"\n (@translateTab.done)=\"_translateTabComplete.next($event)\"\n cdkScrollable>\n <ng-template matTabBodyHost></ng-template>\n</div>\n", styles: [".mat-mdc-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-mdc-tab-body.mat-mdc-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-mdc-tab-group.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body.mat-mdc-tab-body-active{overflow-y:hidden}.mat-mdc-tab-body-content{height:100%;overflow:auto}.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body-content{overflow:hidden}.mat-mdc-tab-body-content[style*=\"visibility: hidden\"]{display:none}"], dependencies: [{ kind: "directive", type: MatTabBodyPortal, selector: "[matTabBodyHost]" }], animations: [matTabsAnimations.translateTab], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
271
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabBody, decorators: [{
272
272
  type: Component,
273
273
  args: [{ selector: 'mat-tab-body', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, animations: [matTabsAnimations.translateTab], host: {
274
274
  'class': 'mat-mdc-tab-body',
@@ -301,9 +301,9 @@ class MatTabContent {
301
301
  this.template = template;
302
302
  }
303
303
  }
304
- MatTabContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabContent, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
305
- MatTabContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatTabContent, selector: "[matTabContent]", providers: [{ provide: MAT_TAB_CONTENT, useExisting: MatTabContent }], ngImport: i0 });
306
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabContent, decorators: [{
304
+ MatTabContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabContent, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
305
+ MatTabContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatTabContent, selector: "[matTabContent]", providers: [{ provide: MAT_TAB_CONTENT, useExisting: MatTabContent }], ngImport: i0 });
306
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabContent, decorators: [{
307
307
  type: Directive,
308
308
  args: [{
309
309
  selector: '[matTabContent]',
@@ -336,9 +336,9 @@ class MatTabLabel extends CdkPortal {
336
336
  this._closestTab = _closestTab;
337
337
  }
338
338
  }
339
- MatTabLabel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabLabel, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: MAT_TAB, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
340
- MatTabLabel.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatTabLabel, selector: "[mat-tab-label], [matTabLabel]", providers: [{ provide: MAT_TAB_LABEL, useExisting: MatTabLabel }], usesInheritance: true, ngImport: i0 });
341
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabLabel, decorators: [{
339
+ MatTabLabel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabLabel, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: MAT_TAB, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
340
+ MatTabLabel.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatTabLabel, selector: "[mat-tab-label], [matTabLabel]", providers: [{ provide: MAT_TAB_LABEL, useExisting: MatTabLabel }], usesInheritance: true, ngImport: i0 });
341
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabLabel, decorators: [{
342
342
  type: Directive,
343
343
  args: [{
344
344
  selector: '[mat-tab-label], [matTabLabel]',
@@ -531,9 +531,9 @@ class _MatTabLabelWrapperBase extends _MatTabLabelWrapperMixinBase {
531
531
  return this.elementRef.nativeElement.offsetWidth;
532
532
  }
533
533
  }
534
- _MatTabLabelWrapperBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabLabelWrapperBase, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
535
- _MatTabLabelWrapperBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: _MatTabLabelWrapperBase, usesInheritance: true, ngImport: i0 });
536
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabLabelWrapperBase, decorators: [{
534
+ _MatTabLabelWrapperBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabLabelWrapperBase, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
535
+ _MatTabLabelWrapperBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: _MatTabLabelWrapperBase, usesInheritance: true, ngImport: i0 });
536
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabLabelWrapperBase, decorators: [{
537
537
  type: Directive
538
538
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
539
539
  const _MatTabLabelWrapperBaseWithInkBarItem = mixinInkBarItem(_MatTabLabelWrapperBase);
@@ -543,9 +543,9 @@ const _MatTabLabelWrapperBaseWithInkBarItem = mixinInkBarItem(_MatTabLabelWrappe
543
543
  */
544
544
  class MatTabLabelWrapper extends _MatTabLabelWrapperBaseWithInkBarItem {
545
545
  }
546
- MatTabLabelWrapper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabLabelWrapper, deps: null, target: i0.ɵɵFactoryTarget.Directive });
547
- MatTabLabelWrapper.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatTabLabelWrapper, selector: "[matTabLabelWrapper]", inputs: { disabled: "disabled", fitInkBarToContent: "fitInkBarToContent" }, host: { properties: { "class.mat-mdc-tab-disabled": "disabled", "attr.aria-disabled": "!!disabled" } }, usesInheritance: true, ngImport: i0 });
548
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabLabelWrapper, decorators: [{
546
+ MatTabLabelWrapper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabLabelWrapper, deps: null, target: i0.ɵɵFactoryTarget.Directive });
547
+ MatTabLabelWrapper.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatTabLabelWrapper, selector: "[matTabLabelWrapper]", inputs: { disabled: "disabled", fitInkBarToContent: "fitInkBarToContent" }, host: { properties: { "class.mat-mdc-tab-disabled": "disabled", "attr.aria-disabled": "!!disabled" } }, usesInheritance: true, ngImport: i0 });
548
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabLabelWrapper, decorators: [{
549
549
  type: Directive,
550
550
  args: [{
551
551
  selector: '[matTabLabelWrapper]',
@@ -575,6 +575,10 @@ const _MatTabMixinBase = mixinDisabled(class {
575
575
  const MAT_TAB_GROUP = new InjectionToken('MAT_TAB_GROUP');
576
576
  /** @docs-private */
577
577
  class _MatTabBase extends _MatTabMixinBase {
578
+ /** @docs-private */
579
+ get content() {
580
+ return this._contentPortal;
581
+ }
578
582
  constructor(_viewContainerRef, _closestTabGroup) {
579
583
  super();
580
584
  this._viewContainerRef = _viewContainerRef;
@@ -600,10 +604,6 @@ class _MatTabBase extends _MatTabMixinBase {
600
604
  */
601
605
  this.isActive = false;
602
606
  }
603
- /** @docs-private */
604
- get content() {
605
- return this._contentPortal;
606
- }
607
607
  ngOnChanges(changes) {
608
608
  if (changes.hasOwnProperty('textLabel') || changes.hasOwnProperty('disabled')) {
609
609
  this._stateChanges.next();
@@ -631,9 +631,9 @@ class _MatTabBase extends _MatTabMixinBase {
631
631
  }
632
632
  }
633
633
  }
634
- _MatTabBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabBase, deps: [{ token: i0.ViewContainerRef }, { token: MAT_TAB_GROUP, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
635
- _MatTabBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: _MatTabBase, inputs: { textLabel: ["label", "textLabel"], ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], labelClass: "labelClass", bodyClass: "bodyClass" }, viewQueries: [{ propertyName: "_implicitContent", first: true, predicate: TemplateRef, descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
636
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabBase, decorators: [{
634
+ _MatTabBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabBase, deps: [{ token: i0.ViewContainerRef }, { token: MAT_TAB_GROUP, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
635
+ _MatTabBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: _MatTabBase, inputs: { textLabel: ["label", "textLabel"], ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], labelClass: "labelClass", bodyClass: "bodyClass" }, viewQueries: [{ propertyName: "_implicitContent", first: true, predicate: TemplateRef, descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
636
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabBase, decorators: [{
637
637
  type: Directive
638
638
  }], ctorParameters: function () {
639
639
  return [{ type: i0.ViewContainerRef }, { type: undefined, decorators: [{
@@ -668,9 +668,9 @@ class MatTab extends _MatTabBase {
668
668
  this._setTemplateLabelInput(value);
669
669
  }
670
670
  }
671
- MatTab.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTab, deps: null, target: i0.ɵɵFactoryTarget.Component });
672
- MatTab.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatTab, selector: "mat-tab", inputs: { disabled: "disabled" }, providers: [{ provide: MAT_TAB, useExisting: MatTab }], queries: [{ propertyName: "_explicitContent", first: true, predicate: MatTabContent, descendants: true, read: TemplateRef, static: true }, { propertyName: "templateLabel", first: true, predicate: MatTabLabel, descendants: true }], exportAs: ["matTab"], usesInheritance: true, ngImport: i0, template: "<!-- Create a template for the content of the <mat-tab> so that we can grab a reference to this\n TemplateRef and use it in a Portal to render the tab content in the appropriate place in the\n tab-group. -->\n<ng-template><ng-content></ng-content></ng-template>\n", changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
673
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTab, decorators: [{
671
+ MatTab.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTab, deps: null, target: i0.ɵɵFactoryTarget.Component });
672
+ MatTab.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatTab, selector: "mat-tab", inputs: { disabled: "disabled" }, providers: [{ provide: MAT_TAB, useExisting: MatTab }], queries: [{ propertyName: "_explicitContent", first: true, predicate: MatTabContent, descendants: true, read: TemplateRef, static: true }, { propertyName: "templateLabel", first: true, predicate: MatTabLabel, descendants: true }], exportAs: ["matTab"], usesInheritance: true, ngImport: i0, template: "<!-- Create a template for the content of the <mat-tab> so that we can grab a reference to this\n TemplateRef and use it in a Portal to render the tab content in the appropriate place in the\n tab-group. -->\n<ng-template><ng-content></ng-content></ng-template>\n", changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
673
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTab, decorators: [{
674
674
  type: Component,
675
675
  args: [{ selector: 'mat-tab', inputs: ['disabled'], changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, exportAs: 'matTab', providers: [{ provide: MAT_TAB, useExisting: MatTab }], template: "<!-- Create a template for the content of the <mat-tab> so that we can grab a reference to this\n TemplateRef and use it in a Portal to render the tab content in the appropriate place in the\n tab-group. -->\n<ng-template><ng-content></ng-content></ng-template>\n" }]
676
676
  }], propDecorators: { _explicitContent: [{
@@ -712,6 +712,30 @@ const HEADER_SCROLL_INTERVAL = 100;
712
712
  * @docs-private
713
713
  */
714
714
  class MatPaginatedTabHeader {
715
+ /**
716
+ * Whether pagination should be disabled. This can be used to avoid unnecessary
717
+ * layout recalculations if it's known that pagination won't be required.
718
+ */
719
+ get disablePagination() {
720
+ return this._disablePagination;
721
+ }
722
+ set disablePagination(value) {
723
+ this._disablePagination = coerceBooleanProperty(value);
724
+ }
725
+ /** The index of the active tab. */
726
+ get selectedIndex() {
727
+ return this._selectedIndex;
728
+ }
729
+ set selectedIndex(value) {
730
+ value = coerceNumberProperty(value);
731
+ if (this._selectedIndex != value) {
732
+ this._selectedIndexChanged = true;
733
+ this._selectedIndex = value;
734
+ if (this._keyManager) {
735
+ this._keyManager.updateActiveItem(value);
736
+ }
737
+ }
738
+ }
715
739
  constructor(_elementRef, _changeDetectorRef, _viewportRuler, _dir, _ngZone, _platform, _animationMode) {
716
740
  this._elementRef = _elementRef;
717
741
  this._changeDetectorRef = _changeDetectorRef;
@@ -749,30 +773,6 @@ class MatPaginatedTabHeader {
749
773
  });
750
774
  });
751
775
  }
752
- /**
753
- * Whether pagination should be disabled. This can be used to avoid unnecessary
754
- * layout recalculations if it's known that pagination won't be required.
755
- */
756
- get disablePagination() {
757
- return this._disablePagination;
758
- }
759
- set disablePagination(value) {
760
- this._disablePagination = coerceBooleanProperty(value);
761
- }
762
- /** The index of the active tab. */
763
- get selectedIndex() {
764
- return this._selectedIndex;
765
- }
766
- set selectedIndex(value) {
767
- value = coerceNumberProperty(value);
768
- if (this._selectedIndex != value) {
769
- this._selectedIndexChanged = true;
770
- this._selectedIndex = value;
771
- if (this._keyManager) {
772
- this._keyManager.updateActiveItem(value);
773
- }
774
- }
775
- }
776
776
  ngAfterViewInit() {
777
777
  // We need to handle these events manually, because we want to bind passive event listeners.
778
778
  fromEvent(this._previousPaginator.nativeElement, 'touchstart', passiveEventListenerOptions)
@@ -796,7 +796,9 @@ class MatPaginatedTabHeader {
796
796
  this._keyManager = new FocusKeyManager(this._items)
797
797
  .withHorizontalOrientation(this._getLayoutDirection())
798
798
  .withHomeAndEnd()
799
- .withWrap();
799
+ .withWrap()
800
+ // Allow focus to land on disabled tabs, as per https://w3c.github.io/aria-practices/#kbd_disabled_controls
801
+ .skipPredicate(() => false);
800
802
  this._keyManager.updateActiveItem(this._selectedIndex);
801
803
  // Defer the first call in order to allow for slower browsers to lay out the elements.
802
804
  // This helps in cases where the user lands directly on a page with paginated tabs.
@@ -888,8 +890,11 @@ class MatPaginatedTabHeader {
888
890
  case ENTER:
889
891
  case SPACE:
890
892
  if (this.focusIndex !== this.selectedIndex) {
891
- this.selectFocusedIndex.emit(this.focusIndex);
892
- this._itemSelected(event);
893
+ const item = this._items.get(this.focusIndex);
894
+ if (item && !item.disabled) {
895
+ this.selectFocusedIndex.emit(this.focusIndex);
896
+ this._itemSelected(event);
897
+ }
893
898
  }
894
899
  break;
895
900
  default:
@@ -943,11 +948,7 @@ class MatPaginatedTabHeader {
943
948
  * providing a valid index and return true.
944
949
  */
945
950
  _isValidIndex(index) {
946
- if (!this._items) {
947
- return true;
948
- }
949
- const tab = this._items ? this._items.toArray()[index] : null;
950
- return !!tab && !tab.disabled;
951
+ return this._items ? !!this._items.toArray()[index] : true;
951
952
  }
952
953
  /**
953
954
  * Sets focus on the HTML element for the label wrapper and scrolls it into the view if
@@ -1174,9 +1175,9 @@ class MatPaginatedTabHeader {
1174
1175
  return { maxScrollDistance, distance: this._scrollDistance };
1175
1176
  }
1176
1177
  }
1177
- MatPaginatedTabHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatPaginatedTabHeader, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1178
- MatPaginatedTabHeader.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatPaginatedTabHeader, inputs: { disablePagination: "disablePagination" }, ngImport: i0 });
1179
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatPaginatedTabHeader, decorators: [{
1178
+ MatPaginatedTabHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatPaginatedTabHeader, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1179
+ MatPaginatedTabHeader.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatPaginatedTabHeader, inputs: { disablePagination: "disablePagination" }, ngImport: i0 });
1180
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatPaginatedTabHeader, decorators: [{
1180
1181
  type: Directive
1181
1182
  }], ctorParameters: function () {
1182
1183
  return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$1.ViewportRuler }, { type: i1.Directionality, decorators: [{
@@ -1203,10 +1204,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3",
1203
1204
  * @docs-private
1204
1205
  */
1205
1206
  class _MatTabHeaderBase extends MatPaginatedTabHeader {
1206
- constructor(elementRef, changeDetectorRef, viewportRuler, dir, ngZone, platform, animationMode) {
1207
- super(elementRef, changeDetectorRef, viewportRuler, dir, ngZone, platform, animationMode);
1208
- this._disableRipple = false;
1209
- }
1210
1207
  /** Whether the ripple effect is disabled or not. */
1211
1208
  get disableRipple() {
1212
1209
  return this._disableRipple;
@@ -1214,13 +1211,17 @@ class _MatTabHeaderBase extends MatPaginatedTabHeader {
1214
1211
  set disableRipple(value) {
1215
1212
  this._disableRipple = coerceBooleanProperty(value);
1216
1213
  }
1214
+ constructor(elementRef, changeDetectorRef, viewportRuler, dir, ngZone, platform, animationMode) {
1215
+ super(elementRef, changeDetectorRef, viewportRuler, dir, ngZone, platform, animationMode);
1216
+ this._disableRipple = false;
1217
+ }
1217
1218
  _itemSelected(event) {
1218
1219
  event.preventDefault();
1219
1220
  }
1220
1221
  }
1221
- _MatTabHeaderBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabHeaderBase, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1222
- _MatTabHeaderBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: _MatTabHeaderBase, inputs: { disableRipple: "disableRipple" }, usesInheritance: true, ngImport: i0 });
1223
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabHeaderBase, decorators: [{
1222
+ _MatTabHeaderBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabHeaderBase, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1223
+ _MatTabHeaderBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: _MatTabHeaderBase, inputs: { disableRipple: "disableRipple" }, usesInheritance: true, ngImport: i0 });
1224
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabHeaderBase, decorators: [{
1224
1225
  type: Directive
1225
1226
  }], ctorParameters: function () {
1226
1227
  return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$1.ViewportRuler }, { type: i1.Directionality, decorators: [{
@@ -1250,9 +1251,9 @@ class MatTabHeader extends _MatTabHeaderBase {
1250
1251
  super.ngAfterContentInit();
1251
1252
  }
1252
1253
  }
1253
- MatTabHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabHeader, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1254
- MatTabHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatTabHeader, selector: "mat-tab-header", inputs: { selectedIndex: "selectedIndex" }, outputs: { selectFocusedIndex: "selectFocusedIndex", indexFocused: "indexFocused" }, host: { properties: { "class.mat-mdc-tab-header-pagination-controls-enabled": "_showPaginationControls", "class.mat-mdc-tab-header-rtl": "_getLayoutDirection() == 'rtl'" }, classAttribute: "mat-mdc-tab-header" }, queries: [{ propertyName: "_items", predicate: MatTabLabelWrapper }], viewQueries: [{ propertyName: "_tabListContainer", first: true, predicate: ["tabListContainer"], descendants: true, static: true }, { propertyName: "_tabList", first: true, predicate: ["tabList"], descendants: true, static: true }, { propertyName: "_tabListInner", first: true, predicate: ["tabListInner"], descendants: true, static: true }, { propertyName: "_nextPaginator", first: true, predicate: ["nextPaginator"], descendants: true }, { propertyName: "_previousPaginator", first: true, predicate: ["previousPaginator"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div\n class=\"mat-mdc-tab-label-container\"\n #tabListContainer\n (keydown)=\"_handleKeydown($event)\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\">\n <div\n #tabList\n class=\"mat-mdc-tab-list\"\n role=\"tablist\"\n (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-labels\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n", styles: [".mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-mdc-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0);touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12}.mat-mdc-tab-header-pagination-controls-enabled .mat-mdc-tab-header-pagination{display:flex}.mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after{padding-left:4px}.mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-pagination-after{padding-right:4px}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-mdc-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-mdc-tab-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron{opacity:.4}.mat-mdc-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-mdc-tab-list{transition:none}._mat-animation-noopable span.mdc-tab-indicator__content,._mat-animation-noopable span.mdc-tab__text-label{transition:none}.mat-mdc-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mat-mdc-tab-labels{display:flex;flex:1 0 auto}[mat-align-tabs=center]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:flex-end}.mat-mdc-tab::before{margin:5px}.cdk-high-contrast-active .mat-mdc-tab[aria-disabled=true]{color:GrayText}"], dependencies: [{ kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i5$1.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
1255
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabHeader, decorators: [{
1254
+ MatTabHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabHeader, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1255
+ MatTabHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatTabHeader, selector: "mat-tab-header", inputs: { selectedIndex: "selectedIndex" }, outputs: { selectFocusedIndex: "selectFocusedIndex", indexFocused: "indexFocused" }, host: { properties: { "class.mat-mdc-tab-header-pagination-controls-enabled": "_showPaginationControls", "class.mat-mdc-tab-header-rtl": "_getLayoutDirection() == 'rtl'" }, classAttribute: "mat-mdc-tab-header" }, queries: [{ propertyName: "_items", predicate: MatTabLabelWrapper }], viewQueries: [{ propertyName: "_tabListContainer", first: true, predicate: ["tabListContainer"], descendants: true, static: true }, { propertyName: "_tabList", first: true, predicate: ["tabList"], descendants: true, static: true }, { propertyName: "_tabListInner", first: true, predicate: ["tabListInner"], descendants: true, static: true }, { propertyName: "_nextPaginator", first: true, predicate: ["nextPaginator"], descendants: true }, { propertyName: "_previousPaginator", first: true, predicate: ["previousPaginator"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div\n class=\"mat-mdc-tab-label-container\"\n #tabListContainer\n (keydown)=\"_handleKeydown($event)\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\">\n <div\n #tabList\n class=\"mat-mdc-tab-list\"\n role=\"tablist\"\n (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-labels\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n", styles: [".mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-mdc-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0);touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12}.mat-mdc-tab-header-pagination-controls-enabled .mat-mdc-tab-header-pagination{display:flex}.mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after{padding-left:4px}.mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-pagination-after{padding-right:4px}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-mdc-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-mdc-tab-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron{opacity:.4}.mat-mdc-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-mdc-tab-list{transition:none}._mat-animation-noopable span.mdc-tab-indicator__content,._mat-animation-noopable span.mdc-tab__text-label{transition:none}.mat-mdc-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mat-mdc-tab-labels{display:flex;flex:1 0 auto}[mat-align-tabs=center]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:flex-end}.mat-mdc-tab::before{margin:5px}.cdk-high-contrast-active .mat-mdc-tab[aria-disabled=true]{color:GrayText}"], dependencies: [{ kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i5$1.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
1256
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabHeader, decorators: [{
1256
1257
  type: Component,
1257
1258
  args: [{ selector: 'mat-tab-header', inputs: ['selectedIndex'], outputs: ['selectFocusedIndex', 'indexFocused'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, host: {
1258
1259
  'class': 'mat-mdc-tab-header',
@@ -1319,49 +1320,6 @@ const _MatTabGroupMixinBase = mixinColor(mixinDisableRipple(class {
1319
1320
  * @docs-private
1320
1321
  */
1321
1322
  class _MatTabGroupBase extends _MatTabGroupMixinBase {
1322
- constructor(elementRef, _changeDetectorRef, defaultConfig, _animationMode) {
1323
- var _a;
1324
- super(elementRef);
1325
- this._changeDetectorRef = _changeDetectorRef;
1326
- this._animationMode = _animationMode;
1327
- /** All of the tabs that belong to the group. */
1328
- this._tabs = new QueryList();
1329
- /** The tab index that should be selected after the content has been checked. */
1330
- this._indexToSelect = 0;
1331
- /** Index of the tab that was focused last. */
1332
- this._lastFocusedTabIndex = null;
1333
- /** Snapshot of the height of the tab body wrapper before another tab is activated. */
1334
- this._tabBodyWrapperHeight = 0;
1335
- /** Subscription to tabs being added/removed. */
1336
- this._tabsSubscription = Subscription.EMPTY;
1337
- /** Subscription to changes in the tab labels. */
1338
- this._tabLabelSubscription = Subscription.EMPTY;
1339
- this._dynamicHeight = false;
1340
- this._selectedIndex = null;
1341
- /** Position of the tab header. */
1342
- this.headerPosition = 'above';
1343
- this._disablePagination = false;
1344
- this._preserveContent = false;
1345
- /** Output to enable support for two-way binding on `[(selectedIndex)]` */
1346
- this.selectedIndexChange = new EventEmitter();
1347
- /** Event emitted when focus has changed within a tab group. */
1348
- this.focusChange = new EventEmitter();
1349
- /** Event emitted when the body animation has completed */
1350
- this.animationDone = new EventEmitter();
1351
- /** Event emitted when the tab selection has changed. */
1352
- this.selectedTabChange = new EventEmitter(true);
1353
- this._groupId = nextId++;
1354
- this.animationDuration =
1355
- defaultConfig && defaultConfig.animationDuration ? defaultConfig.animationDuration : '500ms';
1356
- this.disablePagination =
1357
- defaultConfig && defaultConfig.disablePagination != null
1358
- ? defaultConfig.disablePagination
1359
- : false;
1360
- this.dynamicHeight =
1361
- defaultConfig && defaultConfig.dynamicHeight != null ? defaultConfig.dynamicHeight : false;
1362
- this.contentTabIndex = (_a = defaultConfig === null || defaultConfig === void 0 ? void 0 : defaultConfig.contentTabIndex) !== null && _a !== void 0 ? _a : null;
1363
- this.preserveContent = !!(defaultConfig === null || defaultConfig === void 0 ? void 0 : defaultConfig.preserveContent);
1364
- }
1365
1323
  /** Whether the tab group should grow to the size of the active tab. */
1366
1324
  get dynamicHeight() {
1367
1325
  return this._dynamicHeight;
@@ -1428,6 +1386,49 @@ class _MatTabGroupBase extends _MatTabGroupMixinBase {
1428
1386
  }
1429
1387
  this._backgroundColor = value;
1430
1388
  }
1389
+ constructor(elementRef, _changeDetectorRef, defaultConfig, _animationMode) {
1390
+ var _a;
1391
+ super(elementRef);
1392
+ this._changeDetectorRef = _changeDetectorRef;
1393
+ this._animationMode = _animationMode;
1394
+ /** All of the tabs that belong to the group. */
1395
+ this._tabs = new QueryList();
1396
+ /** The tab index that should be selected after the content has been checked. */
1397
+ this._indexToSelect = 0;
1398
+ /** Index of the tab that was focused last. */
1399
+ this._lastFocusedTabIndex = null;
1400
+ /** Snapshot of the height of the tab body wrapper before another tab is activated. */
1401
+ this._tabBodyWrapperHeight = 0;
1402
+ /** Subscription to tabs being added/removed. */
1403
+ this._tabsSubscription = Subscription.EMPTY;
1404
+ /** Subscription to changes in the tab labels. */
1405
+ this._tabLabelSubscription = Subscription.EMPTY;
1406
+ this._dynamicHeight = false;
1407
+ this._selectedIndex = null;
1408
+ /** Position of the tab header. */
1409
+ this.headerPosition = 'above';
1410
+ this._disablePagination = false;
1411
+ this._preserveContent = false;
1412
+ /** Output to enable support for two-way binding on `[(selectedIndex)]` */
1413
+ this.selectedIndexChange = new EventEmitter();
1414
+ /** Event emitted when focus has changed within a tab group. */
1415
+ this.focusChange = new EventEmitter();
1416
+ /** Event emitted when the body animation has completed */
1417
+ this.animationDone = new EventEmitter();
1418
+ /** Event emitted when the tab selection has changed. */
1419
+ this.selectedTabChange = new EventEmitter(true);
1420
+ this._groupId = nextId++;
1421
+ this.animationDuration =
1422
+ defaultConfig && defaultConfig.animationDuration ? defaultConfig.animationDuration : '500ms';
1423
+ this.disablePagination =
1424
+ defaultConfig && defaultConfig.disablePagination != null
1425
+ ? defaultConfig.disablePagination
1426
+ : false;
1427
+ this.dynamicHeight =
1428
+ defaultConfig && defaultConfig.dynamicHeight != null ? defaultConfig.dynamicHeight : false;
1429
+ this.contentTabIndex = (_a = defaultConfig === null || defaultConfig === void 0 ? void 0 : defaultConfig.contentTabIndex) !== null && _a !== void 0 ? _a : null;
1430
+ this.preserveContent = !!(defaultConfig === null || defaultConfig === void 0 ? void 0 : defaultConfig.preserveContent);
1431
+ }
1431
1432
  /**
1432
1433
  * After the content is checked, this component knows what tabs have been defined
1433
1434
  * and what the selected index should be. This is where we can know exactly what position
@@ -1621,16 +1622,14 @@ class _MatTabGroupBase extends _MatTabGroupMixinBase {
1621
1622
  }
1622
1623
  /** Handle click events, setting new selected index if appropriate. */
1623
1624
  _handleClick(tab, tabHeader, index) {
1625
+ tabHeader.focusIndex = index;
1624
1626
  if (!tab.disabled) {
1625
- this.selectedIndex = tabHeader.focusIndex = index;
1627
+ this.selectedIndex = index;
1626
1628
  }
1627
1629
  }
1628
1630
  /** Retrieves the tabindex for the tab. */
1629
- _getTabIndex(tab, index) {
1631
+ _getTabIndex(index) {
1630
1632
  var _a;
1631
- if (tab.disabled) {
1632
- return null;
1633
- }
1634
1633
  const targetIndex = (_a = this._lastFocusedTabIndex) !== null && _a !== void 0 ? _a : this.selectedIndex;
1635
1634
  return index === targetIndex ? 0 : -1;
1636
1635
  }
@@ -1645,9 +1644,9 @@ class _MatTabGroupBase extends _MatTabGroupMixinBase {
1645
1644
  }
1646
1645
  }
1647
1646
  }
1648
- _MatTabGroupBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabGroupBase, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MAT_TABS_CONFIG, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1649
- _MatTabGroupBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: _MatTabGroupBase, inputs: { dynamicHeight: "dynamicHeight", selectedIndex: "selectedIndex", headerPosition: "headerPosition", animationDuration: "animationDuration", contentTabIndex: "contentTabIndex", disablePagination: "disablePagination", preserveContent: "preserveContent", backgroundColor: "backgroundColor" }, outputs: { selectedIndexChange: "selectedIndexChange", focusChange: "focusChange", animationDone: "animationDone", selectedTabChange: "selectedTabChange" }, usesInheritance: true, ngImport: i0 });
1650
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabGroupBase, decorators: [{
1647
+ _MatTabGroupBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabGroupBase, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MAT_TABS_CONFIG, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1648
+ _MatTabGroupBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: _MatTabGroupBase, inputs: { dynamicHeight: "dynamicHeight", selectedIndex: "selectedIndex", headerPosition: "headerPosition", animationDuration: "animationDuration", contentTabIndex: "contentTabIndex", disablePagination: "disablePagination", preserveContent: "preserveContent", backgroundColor: "backgroundColor" }, outputs: { selectedIndexChange: "selectedIndexChange", focusChange: "focusChange", animationDone: "animationDone", selectedTabChange: "selectedTabChange" }, usesInheritance: true, ngImport: i0 });
1649
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabGroupBase, decorators: [{
1651
1650
  type: Directive
1652
1651
  }], ctorParameters: function () {
1653
1652
  return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
@@ -1692,15 +1691,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3",
1692
1691
  * See: https://material.io/design/components/tabs.html
1693
1692
  */
1694
1693
  class MatTabGroup extends _MatTabGroupBase {
1695
- constructor(elementRef, changeDetectorRef, defaultConfig, animationMode) {
1696
- super(elementRef, changeDetectorRef, defaultConfig, animationMode);
1697
- this._fitInkBarToContent = false;
1698
- this._stretchTabs = true;
1699
- this.fitInkBarToContent =
1700
- defaultConfig && defaultConfig.fitInkBarToContent != null
1701
- ? defaultConfig.fitInkBarToContent
1702
- : false;
1703
- }
1704
1694
  /** Whether the ink bar should fit its width to the size of the tab label content. */
1705
1695
  get fitInkBarToContent() {
1706
1696
  return this._fitInkBarToContent;
@@ -1716,15 +1706,24 @@ class MatTabGroup extends _MatTabGroupBase {
1716
1706
  set stretchTabs(v) {
1717
1707
  this._stretchTabs = coerceBooleanProperty(v);
1718
1708
  }
1709
+ constructor(elementRef, changeDetectorRef, defaultConfig, animationMode) {
1710
+ super(elementRef, changeDetectorRef, defaultConfig, animationMode);
1711
+ this._fitInkBarToContent = false;
1712
+ this._stretchTabs = true;
1713
+ this.fitInkBarToContent =
1714
+ defaultConfig && defaultConfig.fitInkBarToContent != null
1715
+ ? defaultConfig.fitInkBarToContent
1716
+ : false;
1717
+ }
1719
1718
  }
1720
- MatTabGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabGroup, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MAT_TABS_CONFIG, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1721
- MatTabGroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatTabGroup, selector: "mat-tab-group", inputs: { color: "color", disableRipple: "disableRipple", fitInkBarToContent: "fitInkBarToContent", stretchTabs: ["mat-stretch-tabs", "stretchTabs"] }, host: { properties: { "class.mat-mdc-tab-group-dynamic-height": "dynamicHeight", "class.mat-mdc-tab-group-inverted-header": "headerPosition === \"below\"", "class.mat-mdc-tab-group-stretch-tabs": "stretchTabs" }, classAttribute: "mat-mdc-tab-group" }, providers: [
1719
+ MatTabGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabGroup, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MAT_TABS_CONFIG, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
1720
+ MatTabGroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatTabGroup, selector: "mat-tab-group", inputs: { color: "color", disableRipple: "disableRipple", fitInkBarToContent: "fitInkBarToContent", stretchTabs: ["mat-stretch-tabs", "stretchTabs"] }, host: { properties: { "class.mat-mdc-tab-group-dynamic-height": "dynamicHeight", "class.mat-mdc-tab-group-inverted-header": "headerPosition === \"below\"", "class.mat-mdc-tab-group-stretch-tabs": "stretchTabs" }, classAttribute: "mat-mdc-tab-group" }, providers: [
1722
1721
  {
1723
1722
  provide: MAT_TAB_GROUP,
1724
1723
  useExisting: MatTabGroup,
1725
1724
  },
1726
- ], queries: [{ propertyName: "_allTabs", predicate: MatTab, descendants: true }], viewQueries: [{ propertyName: "_tabBodyWrapper", first: true, predicate: ["tabBodyWrapper"], descendants: true }, { propertyName: "_tabHeader", first: true, predicate: ["tabHeader"], descendants: true }], exportAs: ["matTabGroup"], usesInheritance: true, ngImport: i0, template: "<mat-tab-header #tabHeader\n [selectedIndex]=\"selectedIndex || 0\"\n [disableRipple]=\"disableRipple\"\n (indexFocused)=\"_focusChanged($event)\"\n (selectFocusedIndex)=\"selectedIndex = $event\">\n\n <div class=\"mdc-tab mat-mdc-tab mat-mdc-focus-indicator\"\n #tabNode\n role=\"tab\"\n matTabLabelWrapper\n cdkMonitorElementFocus\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabLabelId(i)\"\n [attr.tabIndex]=\"_getTabIndex(tab, i)\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-setsize]=\"_tabs.length\"\n [attr.aria-controls]=\"_getTabContentId(i)\"\n [attr.aria-selected]=\"selectedIndex === i\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\n [class.mdc-tab--active]=\"selectedIndex === i\"\n [ngClass]=\"tab.labelClass\"\n [disabled]=\"tab.disabled\"\n [fitInkBarToContent]=\"fitInkBarToContent\"\n (click)=\"_handleClick(tab, tabHeader, i)\"\n (cdkFocusChange)=\"_tabFocusChanged($event, i)\">\n <span class=\"mdc-tab__ripple\"></span>\n\n <!-- Needs to be a separate element, because we can't put\n `overflow: hidden` on tab due to the ink bar. -->\n <div\n class=\"mat-mdc-tab-ripple\"\n mat-ripple\n [matRippleTrigger]=\"tabNode\"\n [matRippleDisabled]=\"tab.disabled || disableRipple\"></div>\n\n <span class=\"mdc-tab__content\">\n <span class=\"mdc-tab__text-label\">\n <!-- If there is a label template, use it. -->\n <ng-template [ngIf]=\"tab.templateLabel\" [ngIfElse]=\"tabTextLabel\">\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\n </ng-template>\n\n <!-- If there is not a label template, fall back to the text label. -->\n <ng-template #tabTextLabel>{{tab.textLabel}}</ng-template>\n </span>\n </span>\n </div>\n</mat-tab-header>\n\n<div\n class=\"mat-mdc-tab-body-wrapper\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\"\n #tabBodyWrapper>\n <mat-tab-body role=\"tabpanel\"\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabContentId(i)\"\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === i) ? contentTabIndex : null\"\n [attr.aria-labelledby]=\"_getTabLabelId(i)\"\n [class.mat-mdc-tab-body-active]=\"selectedIndex === i\"\n [ngClass]=\"tab.bodyClass\"\n [content]=\"tab.content!\"\n [position]=\"tab.position!\"\n [origin]=\"tab.origin\"\n [animationDuration]=\"animationDuration\"\n [preserveContent]=\"preserveContent\"\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\">\n </mat-tab-body>\n</div>\n", styles: [".mdc-tab{min-width:90px;padding-right:24px;padding-left:24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;margin:0;padding-top:0;padding-bottom:0;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;z-index:1}.mdc-tab::-moz-focus-inner{padding:0;border:0}.mdc-tab[hidden]{display:none}.mdc-tab--min-width{flex:0 1 auto}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab__icon{transition:150ms color linear;z-index:2}.mdc-tab--stacked .mdc-tab__content{flex-direction:column;align-items:center;justify-content:center}.mdc-tab--stacked .mdc-tab__text-label{padding-top:6px;padding-bottom:4px}.mdc-tab--active .mdc-tab__text-label,.mdc-tab--active .mdc-tab__icon{transition-delay:100ms}.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label{padding-left:8px;padding-right:0}[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label,.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label[dir=rtl]{padding-left:0;padding-right:8px}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:2px}.mdc-tab-indicator .mdc-tab-indicator__content--icon{height:34px;font-size:34px}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator__content--icon{align-self:center;margin:0 auto}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}.mdc-tab-indicator .mdc-tab-indicator__content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition:150ms opacity linear}.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition-delay:100ms}.mat-mdc-tab-ripple{position:absolute;top:0;left:0;bottom:0;right:0;pointer-events:none}.mat-mdc-tab{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-tab.mdc-tab{height:48px;flex-grow:0}.mat-mdc-tab .mdc-tab__ripple::before{content:\"\";display:block;position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;pointer-events:none}.mat-mdc-tab .mdc-tab__text-label{display:inline-flex;align-items:center}.mat-mdc-tab .mdc-tab__content{position:relative}.mat-mdc-tab:hover .mdc-tab__ripple::before{opacity:.04}.mat-mdc-tab.cdk-program-focused .mdc-tab__ripple::before,.mat-mdc-tab.cdk-keyboard-focused .mdc-tab__ripple::before{opacity:.12}.mat-mdc-tab .mat-ripple-element{opacity:.12}.mat-mdc-tab-group.mat-mdc-tab-group-stretch-tabs>.mat-mdc-tab-header .mat-mdc-tab{flex-grow:1}.mat-mdc-tab-disabled{opacity:.4;pointer-events:none}.mat-mdc-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination{background-color:var(--mat-mdc-tab-header-with-background-background-color, transparent)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab .mdc-tab__text-label,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-link .mdc-tab__text-label{color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mdc-tab-indicator__content--underline,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-focus-indicator::before{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mdc-tab__ripple::before,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mdc-tab__ripple::before{background-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header{flex-direction:column-reverse}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header .mdc-tab-indicator__content--underline{align-self:flex-start}.mat-mdc-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-mdc-tab-body-wrapper._mat-animation-noopable{transition:none !important;animation:none !important}"], dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i4.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }, { kind: "component", type: MatTabBody, selector: "mat-tab-body" }, { kind: "directive", type: MatTabLabelWrapper, selector: "[matTabLabelWrapper]", inputs: ["disabled", "fitInkBarToContent"] }, { kind: "component", type: MatTabHeader, selector: "mat-tab-header", inputs: ["selectedIndex"], outputs: ["selectFocusedIndex", "indexFocused"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
1727
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabGroup, decorators: [{
1725
+ ], queries: [{ propertyName: "_allTabs", predicate: MatTab, descendants: true }], viewQueries: [{ propertyName: "_tabBodyWrapper", first: true, predicate: ["tabBodyWrapper"], descendants: true }, { propertyName: "_tabHeader", first: true, predicate: ["tabHeader"], descendants: true }], exportAs: ["matTabGroup"], usesInheritance: true, ngImport: i0, template: "<mat-tab-header #tabHeader\n [selectedIndex]=\"selectedIndex || 0\"\n [disableRipple]=\"disableRipple\"\n (indexFocused)=\"_focusChanged($event)\"\n (selectFocusedIndex)=\"selectedIndex = $event\">\n\n <div class=\"mdc-tab mat-mdc-tab mat-mdc-focus-indicator\"\n #tabNode\n role=\"tab\"\n matTabLabelWrapper\n cdkMonitorElementFocus\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabLabelId(i)\"\n [attr.tabIndex]=\"_getTabIndex(i)\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-setsize]=\"_tabs.length\"\n [attr.aria-controls]=\"_getTabContentId(i)\"\n [attr.aria-selected]=\"selectedIndex === i\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\n [class.mdc-tab--active]=\"selectedIndex === i\"\n [ngClass]=\"tab.labelClass\"\n [disabled]=\"tab.disabled\"\n [fitInkBarToContent]=\"fitInkBarToContent\"\n (click)=\"_handleClick(tab, tabHeader, i)\"\n (cdkFocusChange)=\"_tabFocusChanged($event, i)\">\n <span class=\"mdc-tab__ripple\"></span>\n\n <!-- Needs to be a separate element, because we can't put\n `overflow: hidden` on tab due to the ink bar. -->\n <div\n class=\"mat-mdc-tab-ripple\"\n mat-ripple\n [matRippleTrigger]=\"tabNode\"\n [matRippleDisabled]=\"tab.disabled || disableRipple\"></div>\n\n <span class=\"mdc-tab__content\">\n <span class=\"mdc-tab__text-label\">\n <!-- If there is a label template, use it. -->\n <ng-template [ngIf]=\"tab.templateLabel\" [ngIfElse]=\"tabTextLabel\">\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\n </ng-template>\n\n <!-- If there is not a label template, fall back to the text label. -->\n <ng-template #tabTextLabel>{{tab.textLabel}}</ng-template>\n </span>\n </span>\n </div>\n</mat-tab-header>\n\n<div\n class=\"mat-mdc-tab-body-wrapper\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\"\n #tabBodyWrapper>\n <mat-tab-body role=\"tabpanel\"\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabContentId(i)\"\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === i) ? contentTabIndex : null\"\n [attr.aria-labelledby]=\"_getTabLabelId(i)\"\n [class.mat-mdc-tab-body-active]=\"selectedIndex === i\"\n [ngClass]=\"tab.bodyClass\"\n [content]=\"tab.content!\"\n [position]=\"tab.position!\"\n [origin]=\"tab.origin\"\n [animationDuration]=\"animationDuration\"\n [preserveContent]=\"preserveContent\"\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\">\n </mat-tab-body>\n</div>\n", styles: [".mdc-tab{min-width:90px;padding-right:24px;padding-left:24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;margin:0;padding-top:0;padding-bottom:0;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;z-index:1}.mdc-tab::-moz-focus-inner{padding:0;border:0}.mdc-tab[hidden]{display:none}.mdc-tab--min-width{flex:0 1 auto}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab__icon{transition:150ms color linear;z-index:2}.mdc-tab--stacked .mdc-tab__content{flex-direction:column;align-items:center;justify-content:center}.mdc-tab--stacked .mdc-tab__text-label{padding-top:6px;padding-bottom:4px}.mdc-tab--active .mdc-tab__text-label,.mdc-tab--active .mdc-tab__icon{transition-delay:100ms}.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label{padding-left:8px;padding-right:0}[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label,.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label[dir=rtl]{padding-left:0;padding-right:8px}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:2px}.mdc-tab-indicator .mdc-tab-indicator__content--icon{height:34px;font-size:34px}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator__content--icon{align-self:center;margin:0 auto}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}.mdc-tab-indicator .mdc-tab-indicator__content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition:150ms opacity linear}.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition-delay:100ms}.mat-mdc-tab-ripple{position:absolute;top:0;left:0;bottom:0;right:0;pointer-events:none}.mat-mdc-tab{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-tab.mdc-tab{height:48px;flex-grow:0}.mat-mdc-tab .mdc-tab__ripple::before{content:\"\";display:block;position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;pointer-events:none}.mat-mdc-tab .mdc-tab__text-label{display:inline-flex;align-items:center}.mat-mdc-tab .mdc-tab__content{position:relative}.mat-mdc-tab:hover .mdc-tab__ripple::before{opacity:.04}.mat-mdc-tab.cdk-program-focused .mdc-tab__ripple::before,.mat-mdc-tab.cdk-keyboard-focused .mdc-tab__ripple::before{opacity:.12}.mat-mdc-tab .mat-ripple-element{opacity:.12}.mat-mdc-tab-group.mat-mdc-tab-group-stretch-tabs>.mat-mdc-tab-header .mat-mdc-tab{flex-grow:1}.mat-mdc-tab-disabled{opacity:.4}.mat-mdc-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination{background-color:var(--mat-mdc-tab-header-with-background-background-color, transparent)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab .mdc-tab__text-label,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-link .mdc-tab__text-label{color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mdc-tab-indicator__content--underline,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-focus-indicator::before{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mdc-tab__ripple::before,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mdc-tab__ripple::before{background-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header{flex-direction:column-reverse}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header .mdc-tab-indicator__content--underline{align-self:flex-start}.mat-mdc-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-mdc-tab-body-wrapper._mat-animation-noopable{transition:none !important;animation:none !important}"], dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i4.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }, { kind: "component", type: MatTabBody, selector: "mat-tab-body" }, { kind: "directive", type: MatTabLabelWrapper, selector: "[matTabLabelWrapper]", inputs: ["disabled", "fitInkBarToContent"] }, { kind: "component", type: MatTabHeader, selector: "mat-tab-header", inputs: ["selectedIndex"], outputs: ["selectFocusedIndex", "indexFocused"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
1726
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabGroup, decorators: [{
1728
1727
  type: Component,
1729
1728
  args: [{ selector: 'mat-tab-group', exportAs: 'matTabGroup', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, inputs: ['color', 'disableRipple'], providers: [
1730
1729
  {
@@ -1736,7 +1735,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3",
1736
1735
  '[class.mat-mdc-tab-group-dynamic-height]': 'dynamicHeight',
1737
1736
  '[class.mat-mdc-tab-group-inverted-header]': 'headerPosition === "below"',
1738
1737
  '[class.mat-mdc-tab-group-stretch-tabs]': 'stretchTabs',
1739
- }, template: "<mat-tab-header #tabHeader\n [selectedIndex]=\"selectedIndex || 0\"\n [disableRipple]=\"disableRipple\"\n (indexFocused)=\"_focusChanged($event)\"\n (selectFocusedIndex)=\"selectedIndex = $event\">\n\n <div class=\"mdc-tab mat-mdc-tab mat-mdc-focus-indicator\"\n #tabNode\n role=\"tab\"\n matTabLabelWrapper\n cdkMonitorElementFocus\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabLabelId(i)\"\n [attr.tabIndex]=\"_getTabIndex(tab, i)\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-setsize]=\"_tabs.length\"\n [attr.aria-controls]=\"_getTabContentId(i)\"\n [attr.aria-selected]=\"selectedIndex === i\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\n [class.mdc-tab--active]=\"selectedIndex === i\"\n [ngClass]=\"tab.labelClass\"\n [disabled]=\"tab.disabled\"\n [fitInkBarToContent]=\"fitInkBarToContent\"\n (click)=\"_handleClick(tab, tabHeader, i)\"\n (cdkFocusChange)=\"_tabFocusChanged($event, i)\">\n <span class=\"mdc-tab__ripple\"></span>\n\n <!-- Needs to be a separate element, because we can't put\n `overflow: hidden` on tab due to the ink bar. -->\n <div\n class=\"mat-mdc-tab-ripple\"\n mat-ripple\n [matRippleTrigger]=\"tabNode\"\n [matRippleDisabled]=\"tab.disabled || disableRipple\"></div>\n\n <span class=\"mdc-tab__content\">\n <span class=\"mdc-tab__text-label\">\n <!-- If there is a label template, use it. -->\n <ng-template [ngIf]=\"tab.templateLabel\" [ngIfElse]=\"tabTextLabel\">\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\n </ng-template>\n\n <!-- If there is not a label template, fall back to the text label. -->\n <ng-template #tabTextLabel>{{tab.textLabel}}</ng-template>\n </span>\n </span>\n </div>\n</mat-tab-header>\n\n<div\n class=\"mat-mdc-tab-body-wrapper\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\"\n #tabBodyWrapper>\n <mat-tab-body role=\"tabpanel\"\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabContentId(i)\"\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === i) ? contentTabIndex : null\"\n [attr.aria-labelledby]=\"_getTabLabelId(i)\"\n [class.mat-mdc-tab-body-active]=\"selectedIndex === i\"\n [ngClass]=\"tab.bodyClass\"\n [content]=\"tab.content!\"\n [position]=\"tab.position!\"\n [origin]=\"tab.origin\"\n [animationDuration]=\"animationDuration\"\n [preserveContent]=\"preserveContent\"\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\">\n </mat-tab-body>\n</div>\n", styles: [".mdc-tab{min-width:90px;padding-right:24px;padding-left:24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;margin:0;padding-top:0;padding-bottom:0;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;z-index:1}.mdc-tab::-moz-focus-inner{padding:0;border:0}.mdc-tab[hidden]{display:none}.mdc-tab--min-width{flex:0 1 auto}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab__icon{transition:150ms color linear;z-index:2}.mdc-tab--stacked .mdc-tab__content{flex-direction:column;align-items:center;justify-content:center}.mdc-tab--stacked .mdc-tab__text-label{padding-top:6px;padding-bottom:4px}.mdc-tab--active .mdc-tab__text-label,.mdc-tab--active .mdc-tab__icon{transition-delay:100ms}.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label{padding-left:8px;padding-right:0}[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label,.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label[dir=rtl]{padding-left:0;padding-right:8px}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:2px}.mdc-tab-indicator .mdc-tab-indicator__content--icon{height:34px;font-size:34px}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator__content--icon{align-self:center;margin:0 auto}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}.mdc-tab-indicator .mdc-tab-indicator__content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition:150ms opacity linear}.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition-delay:100ms}.mat-mdc-tab-ripple{position:absolute;top:0;left:0;bottom:0;right:0;pointer-events:none}.mat-mdc-tab{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-tab.mdc-tab{height:48px;flex-grow:0}.mat-mdc-tab .mdc-tab__ripple::before{content:\"\";display:block;position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;pointer-events:none}.mat-mdc-tab .mdc-tab__text-label{display:inline-flex;align-items:center}.mat-mdc-tab .mdc-tab__content{position:relative}.mat-mdc-tab:hover .mdc-tab__ripple::before{opacity:.04}.mat-mdc-tab.cdk-program-focused .mdc-tab__ripple::before,.mat-mdc-tab.cdk-keyboard-focused .mdc-tab__ripple::before{opacity:.12}.mat-mdc-tab .mat-ripple-element{opacity:.12}.mat-mdc-tab-group.mat-mdc-tab-group-stretch-tabs>.mat-mdc-tab-header .mat-mdc-tab{flex-grow:1}.mat-mdc-tab-disabled{opacity:.4;pointer-events:none}.mat-mdc-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination{background-color:var(--mat-mdc-tab-header-with-background-background-color, transparent)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab .mdc-tab__text-label,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-link .mdc-tab__text-label{color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mdc-tab-indicator__content--underline,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-focus-indicator::before{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mdc-tab__ripple::before,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mdc-tab__ripple::before{background-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header{flex-direction:column-reverse}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header .mdc-tab-indicator__content--underline{align-self:flex-start}.mat-mdc-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-mdc-tab-body-wrapper._mat-animation-noopable{transition:none !important;animation:none !important}"] }]
1738
+ }, template: "<mat-tab-header #tabHeader\n [selectedIndex]=\"selectedIndex || 0\"\n [disableRipple]=\"disableRipple\"\n (indexFocused)=\"_focusChanged($event)\"\n (selectFocusedIndex)=\"selectedIndex = $event\">\n\n <div class=\"mdc-tab mat-mdc-tab mat-mdc-focus-indicator\"\n #tabNode\n role=\"tab\"\n matTabLabelWrapper\n cdkMonitorElementFocus\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabLabelId(i)\"\n [attr.tabIndex]=\"_getTabIndex(i)\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-setsize]=\"_tabs.length\"\n [attr.aria-controls]=\"_getTabContentId(i)\"\n [attr.aria-selected]=\"selectedIndex === i\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\n [class.mdc-tab--active]=\"selectedIndex === i\"\n [ngClass]=\"tab.labelClass\"\n [disabled]=\"tab.disabled\"\n [fitInkBarToContent]=\"fitInkBarToContent\"\n (click)=\"_handleClick(tab, tabHeader, i)\"\n (cdkFocusChange)=\"_tabFocusChanged($event, i)\">\n <span class=\"mdc-tab__ripple\"></span>\n\n <!-- Needs to be a separate element, because we can't put\n `overflow: hidden` on tab due to the ink bar. -->\n <div\n class=\"mat-mdc-tab-ripple\"\n mat-ripple\n [matRippleTrigger]=\"tabNode\"\n [matRippleDisabled]=\"tab.disabled || disableRipple\"></div>\n\n <span class=\"mdc-tab__content\">\n <span class=\"mdc-tab__text-label\">\n <!-- If there is a label template, use it. -->\n <ng-template [ngIf]=\"tab.templateLabel\" [ngIfElse]=\"tabTextLabel\">\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\n </ng-template>\n\n <!-- If there is not a label template, fall back to the text label. -->\n <ng-template #tabTextLabel>{{tab.textLabel}}</ng-template>\n </span>\n </span>\n </div>\n</mat-tab-header>\n\n<div\n class=\"mat-mdc-tab-body-wrapper\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\"\n #tabBodyWrapper>\n <mat-tab-body role=\"tabpanel\"\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabContentId(i)\"\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === i) ? contentTabIndex : null\"\n [attr.aria-labelledby]=\"_getTabLabelId(i)\"\n [class.mat-mdc-tab-body-active]=\"selectedIndex === i\"\n [ngClass]=\"tab.bodyClass\"\n [content]=\"tab.content!\"\n [position]=\"tab.position!\"\n [origin]=\"tab.origin\"\n [animationDuration]=\"animationDuration\"\n [preserveContent]=\"preserveContent\"\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\">\n </mat-tab-body>\n</div>\n", styles: [".mdc-tab{min-width:90px;padding-right:24px;padding-left:24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;margin:0;padding-top:0;padding-bottom:0;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;z-index:1}.mdc-tab::-moz-focus-inner{padding:0;border:0}.mdc-tab[hidden]{display:none}.mdc-tab--min-width{flex:0 1 auto}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab__icon{transition:150ms color linear;z-index:2}.mdc-tab--stacked .mdc-tab__content{flex-direction:column;align-items:center;justify-content:center}.mdc-tab--stacked .mdc-tab__text-label{padding-top:6px;padding-bottom:4px}.mdc-tab--active .mdc-tab__text-label,.mdc-tab--active .mdc-tab__icon{transition-delay:100ms}.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label{padding-left:8px;padding-right:0}[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label,.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label[dir=rtl]{padding-left:0;padding-right:8px}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:2px}.mdc-tab-indicator .mdc-tab-indicator__content--icon{height:34px;font-size:34px}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator__content--icon{align-self:center;margin:0 auto}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}.mdc-tab-indicator .mdc-tab-indicator__content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition:150ms opacity linear}.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition-delay:100ms}.mat-mdc-tab-ripple{position:absolute;top:0;left:0;bottom:0;right:0;pointer-events:none}.mat-mdc-tab{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-tab.mdc-tab{height:48px;flex-grow:0}.mat-mdc-tab .mdc-tab__ripple::before{content:\"\";display:block;position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;pointer-events:none}.mat-mdc-tab .mdc-tab__text-label{display:inline-flex;align-items:center}.mat-mdc-tab .mdc-tab__content{position:relative}.mat-mdc-tab:hover .mdc-tab__ripple::before{opacity:.04}.mat-mdc-tab.cdk-program-focused .mdc-tab__ripple::before,.mat-mdc-tab.cdk-keyboard-focused .mdc-tab__ripple::before{opacity:.12}.mat-mdc-tab .mat-ripple-element{opacity:.12}.mat-mdc-tab-group.mat-mdc-tab-group-stretch-tabs>.mat-mdc-tab-header .mat-mdc-tab{flex-grow:1}.mat-mdc-tab-disabled{opacity:.4}.mat-mdc-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination{background-color:var(--mat-mdc-tab-header-with-background-background-color, transparent)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab .mdc-tab__text-label,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-link .mdc-tab__text-label{color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mdc-tab-indicator__content--underline,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-focus-indicator::before{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mdc-tab__ripple::before,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mdc-tab__ripple::before{background-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header{flex-direction:column-reverse}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header .mdc-tab-indicator__content--underline{align-self:flex-start}.mat-mdc-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-mdc-tab-body-wrapper._mat-animation-noopable{transition:none !important;animation:none !important}"] }]
1740
1739
  }], ctorParameters: function () {
1741
1740
  return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
1742
1741
  type: Inject,
@@ -1782,12 +1781,6 @@ let nextUniqueId = 0;
1782
1781
  * @docs-private
1783
1782
  */
1784
1783
  class _MatTabNavBase extends MatPaginatedTabHeader {
1785
- constructor(elementRef, dir, ngZone, changeDetectorRef, viewportRuler, platform, animationMode) {
1786
- super(elementRef, changeDetectorRef, viewportRuler, dir, ngZone, platform, animationMode);
1787
- this._disableRipple = false;
1788
- /** Theme color of the nav bar. */
1789
- this.color = 'primary';
1790
- }
1791
1784
  /** Background color of the tab nav. */
1792
1785
  get backgroundColor() {
1793
1786
  return this._backgroundColor;
@@ -1807,6 +1800,12 @@ class _MatTabNavBase extends MatPaginatedTabHeader {
1807
1800
  set disableRipple(value) {
1808
1801
  this._disableRipple = coerceBooleanProperty(value);
1809
1802
  }
1803
+ constructor(elementRef, dir, ngZone, changeDetectorRef, viewportRuler, platform, animationMode) {
1804
+ super(elementRef, changeDetectorRef, viewportRuler, dir, ngZone, platform, animationMode);
1805
+ this._disableRipple = false;
1806
+ /** Theme color of the nav bar. */
1807
+ this.color = 'primary';
1808
+ }
1810
1809
  _itemSelected() {
1811
1810
  // noop
1812
1811
  }
@@ -1842,9 +1841,9 @@ class _MatTabNavBase extends MatPaginatedTabHeader {
1842
1841
  return this.tabPanel ? 'tablist' : this._elementRef.nativeElement.getAttribute('role');
1843
1842
  }
1844
1843
  }
1845
- _MatTabNavBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabNavBase, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1846
- _MatTabNavBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: _MatTabNavBase, inputs: { backgroundColor: "backgroundColor", disableRipple: "disableRipple", color: "color", tabPanel: "tabPanel" }, usesInheritance: true, ngImport: i0 });
1847
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabNavBase, decorators: [{
1844
+ _MatTabNavBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabNavBase, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1845
+ _MatTabNavBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: _MatTabNavBase, inputs: { backgroundColor: "backgroundColor", disableRipple: "disableRipple", color: "color", tabPanel: "tabPanel" }, usesInheritance: true, ngImport: i0 });
1846
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabNavBase, decorators: [{
1848
1847
  type: Directive
1849
1848
  }], ctorParameters: function () {
1850
1849
  return [{ type: i0.ElementRef }, { type: i1.Directionality, decorators: [{
@@ -1869,22 +1868,6 @@ const _MatTabLinkMixinBase = mixinTabIndex(mixinDisableRipple(mixinDisabled(clas
1869
1868
  })));
1870
1869
  /** Base class with all of the `MatTabLink` functionality. */
1871
1870
  class _MatTabLinkBase extends _MatTabLinkMixinBase {
1872
- constructor(_tabNavBar,
1873
- /** @docs-private */ elementRef, globalRippleOptions, tabIndex, _focusMonitor, animationMode) {
1874
- super();
1875
- this._tabNavBar = _tabNavBar;
1876
- this.elementRef = elementRef;
1877
- this._focusMonitor = _focusMonitor;
1878
- /** Whether the tab link is active or not. */
1879
- this._isActive = false;
1880
- /** Unique id for the tab. */
1881
- this.id = `mat-tab-link-${nextUniqueId++}`;
1882
- this.rippleConfig = globalRippleOptions || {};
1883
- this.tabIndex = parseInt(tabIndex) || 0;
1884
- if (animationMode === 'NoopAnimations') {
1885
- this.rippleConfig.animation = { enterDuration: 0, exitDuration: 0 };
1886
- }
1887
- }
1888
1871
  /** Whether the link is active. */
1889
1872
  get active() {
1890
1873
  return this._isActive;
@@ -1906,6 +1889,22 @@ class _MatTabLinkBase extends _MatTabLinkMixinBase {
1906
1889
  this._tabNavBar.disableRipple ||
1907
1890
  !!this.rippleConfig.disabled);
1908
1891
  }
1892
+ constructor(_tabNavBar,
1893
+ /** @docs-private */ elementRef, globalRippleOptions, tabIndex, _focusMonitor, animationMode) {
1894
+ super();
1895
+ this._tabNavBar = _tabNavBar;
1896
+ this.elementRef = elementRef;
1897
+ this._focusMonitor = _focusMonitor;
1898
+ /** Whether the tab link is active or not. */
1899
+ this._isActive = false;
1900
+ /** Unique id for the tab. */
1901
+ this.id = `mat-tab-link-${nextUniqueId++}`;
1902
+ this.rippleConfig = globalRippleOptions || {};
1903
+ this.tabIndex = parseInt(tabIndex) || 0;
1904
+ if (animationMode === 'NoopAnimations') {
1905
+ this.rippleConfig.animation = { enterDuration: 0, exitDuration: 0 };
1906
+ }
1907
+ }
1909
1908
  /** Focuses the tab link. */
1910
1909
  focus() {
1911
1910
  this.elementRef.nativeElement.focus();
@@ -1955,9 +1954,9 @@ class _MatTabLinkBase extends _MatTabLinkMixinBase {
1955
1954
  }
1956
1955
  }
1957
1956
  }
1958
- _MatTabLinkBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabLinkBase, deps: [{ token: _MatTabNavBase }, { token: i0.ElementRef }, { token: MAT_RIPPLE_GLOBAL_OPTIONS, optional: true }, { token: 'tabindex', attribute: true }, { token: i4.FocusMonitor }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1959
- _MatTabLinkBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-next.3", type: _MatTabLinkBase, inputs: { active: "active", id: "id" }, usesInheritance: true, ngImport: i0 });
1960
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: _MatTabLinkBase, decorators: [{
1957
+ _MatTabLinkBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabLinkBase, deps: [{ token: _MatTabNavBase }, { token: i0.ElementRef }, { token: MAT_RIPPLE_GLOBAL_OPTIONS, optional: true }, { token: 'tabindex', attribute: true }, { token: i4.FocusMonitor }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1958
+ _MatTabLinkBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: _MatTabLinkBase, inputs: { active: "active", id: "id" }, usesInheritance: true, ngImport: i0 });
1959
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: _MatTabLinkBase, decorators: [{
1961
1960
  type: Directive
1962
1961
  }], ctorParameters: function () {
1963
1962
  return [{ type: _MatTabNavBase }, { type: i0.ElementRef }, { type: undefined, decorators: [{
@@ -1985,19 +1984,6 @@ const _MatTabLinkBaseWithInkBarItem = mixinInkBarItem(_MatTabLinkBase);
1985
1984
  * Provides anchored navigation with animated ink bar.
1986
1985
  */
1987
1986
  class MatTabNav extends _MatTabNavBase {
1988
- constructor(elementRef, dir, ngZone, changeDetectorRef, viewportRuler, platform, animationMode, defaultConfig) {
1989
- super(elementRef, dir, ngZone, changeDetectorRef, viewportRuler, platform, animationMode);
1990
- this._fitInkBarToContent = new BehaviorSubject(false);
1991
- this._stretchTabs = true;
1992
- this.disablePagination =
1993
- defaultConfig && defaultConfig.disablePagination != null
1994
- ? defaultConfig.disablePagination
1995
- : false;
1996
- this.fitInkBarToContent =
1997
- defaultConfig && defaultConfig.fitInkBarToContent != null
1998
- ? defaultConfig.fitInkBarToContent
1999
- : false;
2000
- }
2001
1987
  /** Whether the ink bar should fit its width to the size of the tab label content. */
2002
1988
  get fitInkBarToContent() {
2003
1989
  return this._fitInkBarToContent.value;
@@ -2013,6 +1999,19 @@ class MatTabNav extends _MatTabNavBase {
2013
1999
  set stretchTabs(v) {
2014
2000
  this._stretchTabs = coerceBooleanProperty(v);
2015
2001
  }
2002
+ constructor(elementRef, dir, ngZone, changeDetectorRef, viewportRuler, platform, animationMode, defaultConfig) {
2003
+ super(elementRef, dir, ngZone, changeDetectorRef, viewportRuler, platform, animationMode);
2004
+ this._fitInkBarToContent = new BehaviorSubject(false);
2005
+ this._stretchTabs = true;
2006
+ this.disablePagination =
2007
+ defaultConfig && defaultConfig.disablePagination != null
2008
+ ? defaultConfig.disablePagination
2009
+ : false;
2010
+ this.fitInkBarToContent =
2011
+ defaultConfig && defaultConfig.fitInkBarToContent != null
2012
+ ? defaultConfig.fitInkBarToContent
2013
+ : false;
2014
+ }
2016
2015
  ngAfterContentInit() {
2017
2016
  this._inkBar = new MatInkBar(this._items);
2018
2017
  super.ngAfterContentInit();
@@ -2024,9 +2023,9 @@ class MatTabNav extends _MatTabNavBase {
2024
2023
  super.ngAfterViewInit();
2025
2024
  }
2026
2025
  }
2027
- MatTabNav.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabNav, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }, { token: MAT_TABS_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
2028
- MatTabNav.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatTabNav, selector: "[mat-tab-nav-bar]", inputs: { color: "color", fitInkBarToContent: "fitInkBarToContent", stretchTabs: ["mat-stretch-tabs", "stretchTabs"] }, host: { properties: { "attr.role": "_getRole()", "class.mat-mdc-tab-header-pagination-controls-enabled": "_showPaginationControls", "class.mat-mdc-tab-header-rtl": "_getLayoutDirection() == 'rtl'", "class.mat-mdc-tab-nav-bar-stretch-tabs": "stretchTabs", "class.mat-primary": "color !== \"warn\" && color !== \"accent\"", "class.mat-accent": "color === \"accent\"", "class.mat-warn": "color === \"warn\"", "class._mat-animation-noopable": "_animationMode === \"NoopAnimations\"" }, classAttribute: "mat-mdc-tab-nav-bar mat-mdc-tab-header" }, queries: [{ propertyName: "_items", predicate: i0.forwardRef(function () { return MatTabLink; }), descendants: true }], viewQueries: [{ propertyName: "_tabListContainer", first: true, predicate: ["tabListContainer"], descendants: true, static: true }, { propertyName: "_tabList", first: true, predicate: ["tabList"], descendants: true, static: true }, { propertyName: "_tabListInner", first: true, predicate: ["tabListInner"], descendants: true, static: true }, { propertyName: "_nextPaginator", first: true, predicate: ["nextPaginator"], descendants: true }, { propertyName: "_previousPaginator", first: true, predicate: ["previousPaginator"], descendants: true }], exportAs: ["matTabNavBar", "matTabNav"], usesInheritance: true, ngImport: i0, template: "<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div class=\"mat-mdc-tab-link-container\" #tabListContainer (keydown)=\"_handleKeydown($event)\">\n <div class=\"mat-mdc-tab-list\" #tabList (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-links\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n", styles: [".mdc-tab{min-width:90px;padding-right:24px;padding-left:24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;margin:0;padding-top:0;padding-bottom:0;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;z-index:1}.mdc-tab::-moz-focus-inner{padding:0;border:0}.mdc-tab[hidden]{display:none}.mdc-tab--min-width{flex:0 1 auto}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab__icon{transition:150ms color linear;z-index:2}.mdc-tab--stacked .mdc-tab__content{flex-direction:column;align-items:center;justify-content:center}.mdc-tab--stacked .mdc-tab__text-label{padding-top:6px;padding-bottom:4px}.mdc-tab--active .mdc-tab__text-label,.mdc-tab--active .mdc-tab__icon{transition-delay:100ms}.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label{padding-left:8px;padding-right:0}[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label,.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label[dir=rtl]{padding-left:0;padding-right:8px}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:2px}.mdc-tab-indicator .mdc-tab-indicator__content--icon{height:34px;font-size:34px}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator__content--icon{align-self:center;margin:0 auto}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}.mdc-tab-indicator .mdc-tab-indicator__content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition:150ms opacity linear}.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition-delay:100ms}.mat-mdc-tab-ripple{position:absolute;top:0;left:0;bottom:0;right:0;pointer-events:none}.mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-mdc-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0);touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12}.mat-mdc-tab-header-pagination-controls-enabled .mat-mdc-tab-header-pagination{display:flex}.mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after{padding-left:4px}.mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-pagination-after{padding-right:4px}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-mdc-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-mdc-tab-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron{opacity:.4}.mat-mdc-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-mdc-tab-list{transition:none}._mat-animation-noopable span.mdc-tab-indicator__content,._mat-animation-noopable span.mdc-tab__text-label{transition:none}.mat-mdc-tab-links{display:flex;flex:1 0 auto}[mat-align-tabs=center]>.mat-mdc-tab-link-container .mat-mdc-tab-links{justify-content:center}[mat-align-tabs=end]>.mat-mdc-tab-link-container .mat-mdc-tab-links{justify-content:flex-end}.mat-mdc-tab-link-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination{background-color:var(--mat-mdc-tab-header-with-background-background-color, transparent)}.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-mdc-tab .mdc-tab__text-label,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-mdc-tab-link .mdc-tab__text-label{color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mdc-tab-indicator__content--underline,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-mdc-focus-indicator::before{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-ripple-element,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mdc-tab__ripple::before,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-ripple-element,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mdc-tab__ripple::before{background-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}"], dependencies: [{ kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i5$1.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
2029
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabNav, decorators: [{
2026
+ MatTabNav.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabNav, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }, { token: MAT_TABS_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
2027
+ MatTabNav.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatTabNav, selector: "[mat-tab-nav-bar]", inputs: { color: "color", fitInkBarToContent: "fitInkBarToContent", stretchTabs: ["mat-stretch-tabs", "stretchTabs"] }, host: { properties: { "attr.role": "_getRole()", "class.mat-mdc-tab-header-pagination-controls-enabled": "_showPaginationControls", "class.mat-mdc-tab-header-rtl": "_getLayoutDirection() == 'rtl'", "class.mat-mdc-tab-nav-bar-stretch-tabs": "stretchTabs", "class.mat-primary": "color !== \"warn\" && color !== \"accent\"", "class.mat-accent": "color === \"accent\"", "class.mat-warn": "color === \"warn\"", "class._mat-animation-noopable": "_animationMode === \"NoopAnimations\"" }, classAttribute: "mat-mdc-tab-nav-bar mat-mdc-tab-header" }, queries: [{ propertyName: "_items", predicate: i0.forwardRef(function () { return MatTabLink; }), descendants: true }], viewQueries: [{ propertyName: "_tabListContainer", first: true, predicate: ["tabListContainer"], descendants: true, static: true }, { propertyName: "_tabList", first: true, predicate: ["tabList"], descendants: true, static: true }, { propertyName: "_tabListInner", first: true, predicate: ["tabListInner"], descendants: true, static: true }, { propertyName: "_nextPaginator", first: true, predicate: ["nextPaginator"], descendants: true }, { propertyName: "_previousPaginator", first: true, predicate: ["previousPaginator"], descendants: true }], exportAs: ["matTabNavBar", "matTabNav"], usesInheritance: true, ngImport: i0, template: "<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div class=\"mat-mdc-tab-link-container\" #tabListContainer (keydown)=\"_handleKeydown($event)\">\n <div class=\"mat-mdc-tab-list\" #tabList (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-links\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n", styles: [".mdc-tab{min-width:90px;padding-right:24px;padding-left:24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;margin:0;padding-top:0;padding-bottom:0;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;z-index:1}.mdc-tab::-moz-focus-inner{padding:0;border:0}.mdc-tab[hidden]{display:none}.mdc-tab--min-width{flex:0 1 auto}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab__icon{transition:150ms color linear;z-index:2}.mdc-tab--stacked .mdc-tab__content{flex-direction:column;align-items:center;justify-content:center}.mdc-tab--stacked .mdc-tab__text-label{padding-top:6px;padding-bottom:4px}.mdc-tab--active .mdc-tab__text-label,.mdc-tab--active .mdc-tab__icon{transition-delay:100ms}.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label{padding-left:8px;padding-right:0}[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label,.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label[dir=rtl]{padding-left:0;padding-right:8px}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:2px}.mdc-tab-indicator .mdc-tab-indicator__content--icon{height:34px;font-size:34px}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator__content--icon{align-self:center;margin:0 auto}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}.mdc-tab-indicator .mdc-tab-indicator__content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition:150ms opacity linear}.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition-delay:100ms}.mat-mdc-tab-ripple{position:absolute;top:0;left:0;bottom:0;right:0;pointer-events:none}.mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-mdc-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0);touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12}.mat-mdc-tab-header-pagination-controls-enabled .mat-mdc-tab-header-pagination{display:flex}.mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after{padding-left:4px}.mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-pagination-after{padding-right:4px}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-mdc-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-mdc-tab-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron{opacity:.4}.mat-mdc-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-mdc-tab-list{transition:none}._mat-animation-noopable span.mdc-tab-indicator__content,._mat-animation-noopable span.mdc-tab__text-label{transition:none}.mat-mdc-tab-links{display:flex;flex:1 0 auto}[mat-align-tabs=center]>.mat-mdc-tab-link-container .mat-mdc-tab-links{justify-content:center}[mat-align-tabs=end]>.mat-mdc-tab-link-container .mat-mdc-tab-links{justify-content:flex-end}.mat-mdc-tab-link-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination{background-color:var(--mat-mdc-tab-header-with-background-background-color, transparent)}.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-mdc-tab .mdc-tab__text-label,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-mdc-tab-link .mdc-tab__text-label{color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mdc-tab-indicator__content--underline,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-mdc-focus-indicator::before{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-ripple-element,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mdc-tab__ripple::before,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-ripple-element,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mdc-tab__ripple::before{background-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-link-container .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron{border-color:var(--mat-mdc-tab-header-with-background-foreground-color, inherit)}"], dependencies: [{ kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i5$1.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
2028
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabNav, decorators: [{
2030
2029
  type: Component,
2031
2030
  args: [{ selector: '[mat-tab-nav-bar]', exportAs: 'matTabNavBar, matTabNav', inputs: ['color'], host: {
2032
2031
  '[attr.role]': '_getRole()',
@@ -2094,9 +2093,9 @@ class MatTabLink extends _MatTabLinkBaseWithInkBarItem {
2094
2093
  super.ngOnDestroy();
2095
2094
  }
2096
2095
  }
2097
- MatTabLink.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabLink, deps: [{ token: MatTabNav }, { token: i0.ElementRef }, { token: MAT_RIPPLE_GLOBAL_OPTIONS, optional: true }, { token: 'tabindex', attribute: true }, { token: i4.FocusMonitor }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
2098
- MatTabLink.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatTabLink, selector: "[mat-tab-link], [matTabLink]", inputs: { disabled: "disabled", disableRipple: "disableRipple", tabIndex: "tabIndex", active: "active", id: "id" }, host: { listeners: { "focus": "_handleFocus()", "keydown": "_handleKeydown($event)" }, properties: { "attr.aria-controls": "_getAriaControls()", "attr.aria-current": "_getAriaCurrent()", "attr.aria-disabled": "disabled", "attr.aria-selected": "_getAriaSelected()", "attr.id": "id", "attr.tabIndex": "_getTabIndex()", "attr.role": "_getRole()", "class.mat-mdc-tab-disabled": "disabled", "class.mdc-tab--active": "active" }, classAttribute: "mdc-tab mat-mdc-tab-link mat-mdc-focus-indicator" }, exportAs: ["matTabLink"], usesInheritance: true, ngImport: i0, template: "<span class=\"mdc-tab__ripple\"></span>\n\n<div\n class=\"mat-mdc-tab-ripple\"\n mat-ripple\n [matRippleTrigger]=\"elementRef.nativeElement\"\n [matRippleDisabled]=\"rippleDisabled\"></div>\n\n<span class=\"mdc-tab__content\">\n <span class=\"mdc-tab__text-label\">\n <ng-content></ng-content>\n </span>\n</span>\n\n", styles: [".mat-mdc-tab-link{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-tab-link.mdc-tab{height:48px;flex-grow:0}.mat-mdc-tab-link .mdc-tab__ripple::before{content:\"\";display:block;position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;pointer-events:none}.mat-mdc-tab-link .mdc-tab__text-label{display:inline-flex;align-items:center}.mat-mdc-tab-link .mdc-tab__content{position:relative}.mat-mdc-tab-link:hover .mdc-tab__ripple::before{opacity:.04}.mat-mdc-tab-link.cdk-program-focused .mdc-tab__ripple::before,.mat-mdc-tab-link.cdk-keyboard-focused .mdc-tab__ripple::before{opacity:.12}.mat-mdc-tab-link .mat-ripple-element{opacity:.12}.mat-mdc-tab-link.mat-mdc-tab-disabled{pointer-events:none;opacity:.4}.mat-mdc-tab-header.mat-mdc-tab-nav-bar-stretch-tabs .mat-mdc-tab-link{flex-grow:1}.mat-mdc-tab-link::before{margin:5px}@media(max-width: 599px){.mat-mdc-tab-link{min-width:72px}}"], dependencies: [{ kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2099
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabLink, decorators: [{
2096
+ MatTabLink.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabLink, deps: [{ token: MatTabNav }, { token: i0.ElementRef }, { token: MAT_RIPPLE_GLOBAL_OPTIONS, optional: true }, { token: 'tabindex', attribute: true }, { token: i4.FocusMonitor }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
2097
+ MatTabLink.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatTabLink, selector: "[mat-tab-link], [matTabLink]", inputs: { disabled: "disabled", disableRipple: "disableRipple", tabIndex: "tabIndex", active: "active", id: "id" }, host: { listeners: { "focus": "_handleFocus()", "keydown": "_handleKeydown($event)" }, properties: { "attr.aria-controls": "_getAriaControls()", "attr.aria-current": "_getAriaCurrent()", "attr.aria-disabled": "disabled", "attr.aria-selected": "_getAriaSelected()", "attr.id": "id", "attr.tabIndex": "_getTabIndex()", "attr.role": "_getRole()", "class.mat-mdc-tab-disabled": "disabled", "class.mdc-tab--active": "active" }, classAttribute: "mdc-tab mat-mdc-tab-link mat-mdc-focus-indicator" }, exportAs: ["matTabLink"], usesInheritance: true, ngImport: i0, template: "<span class=\"mdc-tab__ripple\"></span>\n\n<div\n class=\"mat-mdc-tab-ripple\"\n mat-ripple\n [matRippleTrigger]=\"elementRef.nativeElement\"\n [matRippleDisabled]=\"rippleDisabled\"></div>\n\n<span class=\"mdc-tab__content\">\n <span class=\"mdc-tab__text-label\">\n <ng-content></ng-content>\n </span>\n</span>\n\n", styles: [".mat-mdc-tab-link{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-tab-link.mdc-tab{height:48px;flex-grow:0}.mat-mdc-tab-link .mdc-tab__ripple::before{content:\"\";display:block;position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;pointer-events:none}.mat-mdc-tab-link .mdc-tab__text-label{display:inline-flex;align-items:center}.mat-mdc-tab-link .mdc-tab__content{position:relative}.mat-mdc-tab-link:hover .mdc-tab__ripple::before{opacity:.04}.mat-mdc-tab-link.cdk-program-focused .mdc-tab__ripple::before,.mat-mdc-tab-link.cdk-keyboard-focused .mdc-tab__ripple::before{opacity:.12}.mat-mdc-tab-link .mat-ripple-element{opacity:.12}.mat-mdc-tab-link.mat-mdc-tab-disabled{pointer-events:none;opacity:.4}.mat-mdc-tab-header.mat-mdc-tab-nav-bar-stretch-tabs .mat-mdc-tab-link{flex-grow:1}.mat-mdc-tab-link::before{margin:5px}@media(max-width: 599px){.mat-mdc-tab-link{min-width:72px}}"], dependencies: [{ kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2098
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabLink, decorators: [{
2100
2099
  type: Component,
2101
2100
  args: [{ selector: '[mat-tab-link], [matTabLink]', exportAs: 'matTabLink', inputs: ['disabled', 'disableRipple', 'tabIndex', 'active', 'id'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
2102
2101
  'class': 'mdc-tab mat-mdc-tab-link mat-mdc-focus-indicator',
@@ -2137,9 +2136,9 @@ class MatTabNavPanel {
2137
2136
  this.id = `mat-tab-nav-panel-${nextUniqueId++}`;
2138
2137
  }
2139
2138
  }
2140
- MatTabNavPanel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabNavPanel, deps: [], target: i0.ɵɵFactoryTarget.Component });
2141
- MatTabNavPanel.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-next.3", type: MatTabNavPanel, selector: "mat-tab-nav-panel", inputs: { id: "id" }, host: { attributes: { "role": "tabpanel" }, properties: { "attr.aria-labelledby": "_activeTabId", "attr.id": "id" }, classAttribute: "mat-mdc-tab-nav-panel" }, exportAs: ["matTabNavPanel"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabNavPanel, decorators: [{
2139
+ MatTabNavPanel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabNavPanel, deps: [], target: i0.ɵɵFactoryTarget.Component });
2140
+ MatTabNavPanel.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0-rc.0", type: MatTabNavPanel, selector: "mat-tab-nav-panel", inputs: { id: "id" }, host: { attributes: { "role": "tabpanel" }, properties: { "attr.aria-labelledby": "_activeTabId", "attr.id": "id" }, classAttribute: "mat-mdc-tab-nav-panel" }, exportAs: ["matTabNavPanel"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2141
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabNavPanel, decorators: [{
2143
2142
  type: Component,
2144
2143
  args: [{
2145
2144
  selector: 'mat-tab-nav-panel',
@@ -2167,8 +2166,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3",
2167
2166
  */
2168
2167
  class MatTabsModule {
2169
2168
  }
2170
- MatTabsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2171
- MatTabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabsModule, declarations: [MatTabContent,
2169
+ MatTabsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2170
+ MatTabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabsModule, declarations: [MatTabContent,
2172
2171
  MatTabLabel,
2173
2172
  MatTab,
2174
2173
  MatTabGroup,
@@ -2192,13 +2191,13 @@ MatTabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
2192
2191
  MatTabNav,
2193
2192
  MatTabNavPanel,
2194
2193
  MatTabLink] });
2195
- MatTabsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabsModule, imports: [CommonModule,
2194
+ MatTabsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabsModule, imports: [CommonModule,
2196
2195
  MatCommonModule,
2197
2196
  PortalModule,
2198
2197
  MatRippleModule,
2199
2198
  ObserversModule,
2200
2199
  A11yModule, MatCommonModule] });
2201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-next.3", ngImport: i0, type: MatTabsModule, decorators: [{
2200
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0-rc.0", ngImport: i0, type: MatTabsModule, decorators: [{
2202
2201
  type: NgModule,
2203
2202
  args: [{
2204
2203
  imports: [