@angular/material 21.0.0-next.0 → 21.0.0-next.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (394) hide show
  1. package/_index.scss +1 -1
  2. package/core/focus-indicators/_private.scss +16 -0
  3. package/core/tokens/_classes.scss +150 -167
  4. package/core/tokens/m2/_md-sys-color-internal.scss +11 -0
  5. package/core/tokens/m2/_md-sys-color.scss +28 -19
  6. package/core/tokens/m3/_md-sys-color-internal.scss +11 -0
  7. package/core/tokens/m3/_md-sys-color.scss +5 -31
  8. package/core/tokens/m3/_md-sys-typescale-internal.scss +5 -0
  9. package/core/tokens/m3/_md-sys-typescale.scss +2 -16
  10. package/fesm2022/{animation.mjs → _animation-chunk.mjs} +2 -23
  11. package/fesm2022/_animation-chunk.mjs.map +1 -0
  12. package/fesm2022/{date-formats.mjs → _date-formats-chunk.mjs} +3 -11
  13. package/fesm2022/_date-formats-chunk.mjs.map +1 -0
  14. package/fesm2022/{date-range-input-harness.mjs → _date-range-input-harness-chunk.mjs} +1 -1
  15. package/fesm2022/_date-range-input-harness-chunk.mjs.map +1 -0
  16. package/fesm2022/{error-options.mjs → _error-options-chunk.mjs} +7 -7
  17. package/fesm2022/_error-options-chunk.mjs.map +1 -0
  18. package/fesm2022/{error-state.mjs → _error-state-chunk.mjs} +1 -1
  19. package/fesm2022/_error-state-chunk.mjs.map +1 -0
  20. package/fesm2022/_form-field-chunk.mjs +1114 -0
  21. package/fesm2022/_form-field-chunk.mjs.map +1 -0
  22. package/fesm2022/{icon-button.mjs → _icon-button-chunk.mjs} +10 -10
  23. package/fesm2022/_icon-button-chunk.mjs.map +1 -0
  24. package/fesm2022/{icon-registry.mjs → _icon-registry-chunk.mjs} +6 -33
  25. package/fesm2022/_icon-registry-chunk.mjs.map +1 -0
  26. package/fesm2022/{input-harness.mjs → _input-harness-chunk.mjs} +1 -1
  27. package/fesm2022/_input-harness-chunk.mjs.map +1 -0
  28. package/fesm2022/{input-value-accessor.mjs → _input-value-accessor-chunk.mjs} +1 -1
  29. package/fesm2022/_input-value-accessor-chunk.mjs.map +1 -0
  30. package/fesm2022/{internal-form-field.mjs → _internal-form-field-chunk.mjs} +4 -4
  31. package/fesm2022/_internal-form-field-chunk.mjs.map +1 -0
  32. package/fesm2022/{line.mjs → _line-chunk.mjs} +11 -11
  33. package/fesm2022/_line-chunk.mjs.map +1 -0
  34. package/fesm2022/{option.mjs → _option-chunk.mjs} +11 -11
  35. package/fesm2022/_option-chunk.mjs.map +1 -0
  36. package/fesm2022/{option-harness.mjs → _option-harness-chunk.mjs} +1 -1
  37. package/fesm2022/_option-harness-chunk.mjs.map +1 -0
  38. package/fesm2022/_option-module-chunk.mjs +22 -0
  39. package/fesm2022/_option-module-chunk.mjs.map +1 -0
  40. package/fesm2022/{pseudo-checkbox.mjs → _pseudo-checkbox-chunk.mjs} +5 -5
  41. package/fesm2022/_pseudo-checkbox-chunk.mjs.map +1 -0
  42. package/fesm2022/_pseudo-checkbox-module-chunk.mjs +20 -0
  43. package/fesm2022/_pseudo-checkbox-module-chunk.mjs.map +1 -0
  44. package/fesm2022/{public-api.mjs → _public-api-chunk.mjs} +1 -1
  45. package/fesm2022/_public-api-chunk.mjs.map +1 -0
  46. package/fesm2022/{ripple.mjs → _ripple-chunk.mjs} +10 -10
  47. package/fesm2022/_ripple-chunk.mjs.map +1 -0
  48. package/fesm2022/{ripple-loader.mjs → _ripple-loader-chunk.mjs} +6 -6
  49. package/fesm2022/_ripple-loader-chunk.mjs.map +1 -0
  50. package/fesm2022/_ripple-module-chunk.mjs +20 -0
  51. package/fesm2022/_ripple-module-chunk.mjs.map +1 -0
  52. package/fesm2022/{structural-styles.mjs → _structural-styles-chunk.mjs} +4 -4
  53. package/fesm2022/_structural-styles-chunk.mjs.map +1 -0
  54. package/fesm2022/{tooltip-module.mjs → _tooltip-chunk.mjs} +18 -61
  55. package/fesm2022/_tooltip-chunk.mjs.map +1 -0
  56. package/fesm2022/{autocomplete/testing.mjs → autocomplete-testing.mjs} +3 -3
  57. package/fesm2022/autocomplete-testing.mjs.map +1 -0
  58. package/fesm2022/autocomplete.mjs +32 -64
  59. package/fesm2022/autocomplete.mjs.map +1 -1
  60. package/fesm2022/{badge/testing.mjs → badge-testing.mjs} +1 -1
  61. package/fesm2022/badge-testing.mjs.map +1 -0
  62. package/fesm2022/badge.mjs +14 -15
  63. package/fesm2022/badge.mjs.map +1 -1
  64. package/fesm2022/{bottom-sheet/testing.mjs → bottom-sheet-testing.mjs} +1 -1
  65. package/fesm2022/bottom-sheet-testing.mjs.map +1 -0
  66. package/fesm2022/bottom-sheet.mjs +20 -98
  67. package/fesm2022/bottom-sheet.mjs.map +1 -1
  68. package/fesm2022/{button/testing.mjs → button-testing.mjs} +6 -2
  69. package/fesm2022/button-testing.mjs.map +1 -0
  70. package/fesm2022/{button-toggle/testing.mjs → button-toggle-testing.mjs} +1 -1
  71. package/fesm2022/button-toggle-testing.mjs.map +1 -0
  72. package/fesm2022/button-toggle.mjs +24 -33
  73. package/fesm2022/button-toggle.mjs.map +1 -1
  74. package/fesm2022/button.mjs +32 -54
  75. package/fesm2022/button.mjs.map +1 -1
  76. package/fesm2022/{card/testing.mjs → card-testing.mjs} +1 -1
  77. package/fesm2022/card-testing.mjs.map +1 -0
  78. package/fesm2022/card.mjs +50 -52
  79. package/fesm2022/card.mjs.map +1 -1
  80. package/fesm2022/{checkbox/testing.mjs → checkbox-testing.mjs} +1 -1
  81. package/fesm2022/checkbox-testing.mjs.map +1 -0
  82. package/fesm2022/checkbox.mjs +26 -36
  83. package/fesm2022/checkbox.mjs.map +1 -1
  84. package/fesm2022/{chips/testing.mjs → chips-testing.mjs} +1 -7
  85. package/fesm2022/chips-testing.mjs.map +1 -0
  86. package/fesm2022/chips.mjs +158 -126
  87. package/fesm2022/chips.mjs.map +1 -1
  88. package/fesm2022/{core/testing.mjs → core-testing.mjs} +2 -2
  89. package/fesm2022/core-testing.mjs.map +1 -0
  90. package/fesm2022/core.mjs +28 -35
  91. package/fesm2022/core.mjs.map +1 -1
  92. package/fesm2022/{datepicker/testing.mjs → datepicker-testing.mjs} +3 -3
  93. package/fesm2022/datepicker-testing.mjs.map +1 -0
  94. package/fesm2022/datepicker.mjs +193 -346
  95. package/fesm2022/datepicker.mjs.map +1 -1
  96. package/fesm2022/{dialog/testing.mjs → dialog-testing.mjs} +7 -8
  97. package/fesm2022/dialog-testing.mjs.map +1 -0
  98. package/fesm2022/dialog.mjs +882 -115
  99. package/fesm2022/dialog.mjs.map +1 -1
  100. package/fesm2022/{divider/testing.mjs → divider-testing.mjs} +1 -1
  101. package/fesm2022/divider-testing.mjs.map +1 -0
  102. package/fesm2022/divider.mjs +10 -12
  103. package/fesm2022/divider.mjs.map +1 -1
  104. package/fesm2022/{expansion/testing.mjs → expansion-testing.mjs} +1 -1
  105. package/fesm2022/expansion-testing.mjs.map +1 -0
  106. package/fesm2022/expansion.mjs +33 -137
  107. package/fesm2022/expansion.mjs.map +1 -1
  108. package/fesm2022/{form-field/testing/control.mjs → form-field-testing-control.mjs} +1 -1
  109. package/fesm2022/form-field-testing-control.mjs.map +1 -0
  110. package/fesm2022/{form-field/testing.mjs → form-field-testing.mjs} +5 -5
  111. package/fesm2022/form-field-testing.mjs.map +1 -0
  112. package/fesm2022/form-field.mjs +20 -51
  113. package/fesm2022/form-field.mjs.map +1 -1
  114. package/fesm2022/{grid-list/testing.mjs → grid-list-testing.mjs} +2 -2
  115. package/fesm2022/grid-list-testing.mjs.map +1 -0
  116. package/fesm2022/grid-list.mjs +30 -35
  117. package/fesm2022/grid-list.mjs.map +1 -1
  118. package/fesm2022/{icon/testing.mjs → icon-testing.mjs} +9 -9
  119. package/fesm2022/icon-testing.mjs.map +1 -0
  120. package/fesm2022/icon.mjs +22 -30
  121. package/fesm2022/icon.mjs.map +1 -1
  122. package/fesm2022/{input/testing.mjs → input-testing.mjs} +3 -3
  123. package/fesm2022/input-testing.mjs.map +1 -0
  124. package/fesm2022/input.mjs +17 -18
  125. package/fesm2022/input.mjs.map +1 -1
  126. package/fesm2022/{list/testing.mjs → list-testing.mjs} +2 -2
  127. package/fesm2022/list-testing.mjs.map +1 -0
  128. package/fesm2022/list.mjs +63 -64
  129. package/fesm2022/list.mjs.map +1 -1
  130. package/fesm2022/material.mjs.map +1 -1
  131. package/fesm2022/{menu/testing.mjs → menu-testing.mjs} +1 -1
  132. package/fesm2022/menu-testing.mjs.map +1 -0
  133. package/fesm2022/menu.mjs +45 -193
  134. package/fesm2022/menu.mjs.map +1 -1
  135. package/fesm2022/{paginator/testing.mjs → paginator-testing.mjs} +2 -2
  136. package/fesm2022/paginator-testing.mjs.map +1 -0
  137. package/fesm2022/paginator.mjs +31 -51
  138. package/fesm2022/paginator.mjs.map +1 -1
  139. package/fesm2022/{progress-bar/testing.mjs → progress-bar-testing.mjs} +1 -1
  140. package/fesm2022/progress-bar-testing.mjs.map +1 -0
  141. package/fesm2022/progress-bar.mjs +24 -29
  142. package/fesm2022/progress-bar.mjs.map +1 -1
  143. package/fesm2022/{progress-spinner/testing.mjs → progress-spinner-testing.mjs} +1 -1
  144. package/fesm2022/progress-spinner-testing.mjs.map +1 -0
  145. package/fesm2022/progress-spinner.mjs +12 -22
  146. package/fesm2022/progress-spinner.mjs.map +1 -1
  147. package/fesm2022/{radio/testing.mjs → radio-testing.mjs} +1 -1
  148. package/fesm2022/radio-testing.mjs.map +1 -0
  149. package/fesm2022/radio.mjs +23 -32
  150. package/fesm2022/radio.mjs.map +1 -1
  151. package/fesm2022/{select/testing.mjs → select-testing.mjs} +1 -1
  152. package/fesm2022/select-testing.mjs.map +1 -0
  153. package/fesm2022/select.mjs +1299 -96
  154. package/fesm2022/select.mjs.map +1 -1
  155. package/fesm2022/{sidenav/testing.mjs → sidenav-testing.mjs} +1 -1
  156. package/fesm2022/sidenav-testing.mjs.map +1 -0
  157. package/fesm2022/sidenav.mjs +30 -120
  158. package/fesm2022/sidenav.mjs.map +1 -1
  159. package/fesm2022/{slide-toggle/testing.mjs → slide-toggle-testing.mjs} +1 -1
  160. package/fesm2022/slide-toggle-testing.mjs.map +1 -0
  161. package/fesm2022/slide-toggle.mjs +14 -15
  162. package/fesm2022/slide-toggle.mjs.map +1 -1
  163. package/fesm2022/{slider/testing.mjs → slider-testing.mjs} +1 -1
  164. package/fesm2022/slider-testing.mjs.map +1 -0
  165. package/fesm2022/slider.mjs +24 -38
  166. package/fesm2022/slider.mjs.map +1 -1
  167. package/fesm2022/{snack-bar/testing.mjs → snack-bar-testing.mjs} +1 -1
  168. package/fesm2022/snack-bar-testing.mjs.map +1 -0
  169. package/fesm2022/snack-bar.mjs +34 -128
  170. package/fesm2022/snack-bar.mjs.map +1 -1
  171. package/fesm2022/{sort/testing.mjs → sort-testing.mjs} +1 -1
  172. package/fesm2022/sort-testing.mjs.map +1 -0
  173. package/fesm2022/sort.mjs +26 -351
  174. package/fesm2022/sort.mjs.map +1 -1
  175. package/fesm2022/{stepper/testing.mjs → stepper-testing.mjs} +3 -2
  176. package/fesm2022/stepper-testing.mjs.map +1 -0
  177. package/fesm2022/stepper.mjs +46 -219
  178. package/fesm2022/stepper.mjs.map +1 -1
  179. package/fesm2022/{table/testing.mjs → table-testing.mjs} +36 -4
  180. package/fesm2022/table-testing.mjs.map +1 -0
  181. package/fesm2022/table.mjs +66 -63
  182. package/fesm2022/table.mjs.map +1 -1
  183. package/fesm2022/{tabs/testing.mjs → tabs-testing.mjs} +1 -1
  184. package/fesm2022/tabs-testing.mjs.map +1 -0
  185. package/fesm2022/tabs.mjs +68 -222
  186. package/fesm2022/tabs.mjs.map +1 -1
  187. package/fesm2022/{timepicker/testing.mjs → timepicker-testing.mjs} +2 -2
  188. package/fesm2022/timepicker-testing.mjs.map +1 -0
  189. package/fesm2022/timepicker.mjs +40 -34
  190. package/fesm2022/timepicker.mjs.map +1 -1
  191. package/fesm2022/{toolbar/testing.mjs → toolbar-testing.mjs} +1 -1
  192. package/fesm2022/toolbar-testing.mjs.map +1 -0
  193. package/fesm2022/toolbar.mjs +13 -15
  194. package/fesm2022/toolbar.mjs.map +1 -1
  195. package/fesm2022/{tooltip/testing.mjs → tooltip-testing.mjs} +1 -1
  196. package/fesm2022/tooltip-testing.mjs.map +1 -0
  197. package/fesm2022/tooltip.mjs +22 -54
  198. package/fesm2022/tooltip.mjs.map +1 -1
  199. package/fesm2022/{tree/testing.mjs → tree-testing.mjs} +1 -1
  200. package/fesm2022/tree-testing.mjs.map +1 -0
  201. package/fesm2022/tree.mjs +29 -31
  202. package/fesm2022/tree.mjs.map +1 -1
  203. package/package.json +115 -114
  204. package/prebuilt-themes/deeppurple-amber.css +1 -1
  205. package/prebuilt-themes/indigo-pink.css +1 -1
  206. package/prebuilt-themes/pink-bluegrey.css +1 -1
  207. package/prebuilt-themes/purple-green.css +1 -1
  208. package/schematics/ng-add/index.js +1 -1
  209. package/schematics/ng-update/index_bundled.js +7 -3
  210. package/schematics/ng-update/index_bundled.js.map +1 -1
  211. package/slider/_m2-slider.scss +1 -0
  212. package/slider/_m3-slider.scss +5 -2
  213. package/{badge.d.d.ts → types/_badge-chunk.d.ts} +1 -1
  214. package/{button-toggle.d.d.ts → types/_button-toggle-chunk.d.ts} +1 -7
  215. package/{date-adapter.d.d.ts → types/_date-adapter-chunk.d.ts} +1 -7
  216. package/{form-field.d.d.ts → types/_form-field-chunk.d.ts} +2 -2
  217. package/{form-field-module.d.d.ts → types/_form-field-module-chunk.d.ts} +4 -4
  218. package/{icon-module.d.d.ts → types/_icon-module-chunk.d.ts} +4 -10
  219. package/{icon-registry.d.d.ts → types/_icon-registry-chunk.d.ts} +2 -18
  220. package/{line.d.d.ts → types/_line-chunk.d.ts} +2 -2
  221. package/types/_option-module-chunk.d.ts +13 -0
  222. package/{paginator.d.d.ts → types/_paginator-chunk.d.ts} +4 -20
  223. package/{progress-spinner.d.d.ts → types/_progress-spinner-chunk.d.ts} +4 -10
  224. package/{pseudo-checkbox-module.d.d.ts → types/_pseudo-checkbox-module-chunk.d.ts} +2 -2
  225. package/{ripple.d.d.ts → types/_ripple-chunk.d.ts} +3 -3
  226. package/{ripple-module.d.d.ts → types/_ripple-module-chunk.d.ts} +3 -3
  227. package/{sort.d.d.ts → types/_sort-chunk.d.ts} +1 -1
  228. package/{autocomplete/testing/index.d.ts → types/autocomplete-testing.d.ts} +2 -2
  229. package/{autocomplete/index.d.ts → types/autocomplete.d.ts} +10 -33
  230. package/{badge/testing/index.d.ts → types/badge-testing.d.ts} +2 -2
  231. package/types/badge.d.ts +14 -0
  232. package/{bottom-sheet/index.d.ts → types/bottom-sheet.d.ts} +10 -14
  233. package/{button/testing/index.d.ts → types/button-testing.d.ts} +2 -0
  234. package/{button-toggle/testing/index.d.ts → types/button-toggle-testing.d.ts} +1 -1
  235. package/types/button-toggle.d.ts +16 -0
  236. package/{button/index.d.ts → types/button.d.ts} +7 -14
  237. package/{card/index.d.ts → types/card.d.ts} +2 -3
  238. package/{checkbox/index.d.ts → types/checkbox.d.ts} +4 -11
  239. package/{chips/index.d.ts → types/chips.d.ts} +74 -68
  240. package/{core/testing/index.d.ts → types/core-testing.d.ts} +1 -1
  241. package/{core/index.d.ts → types/core.d.ts} +14 -41
  242. package/{datepicker/testing/index.d.ts → types/datepicker-testing.d.ts} +2 -2
  243. package/{datepicker/index.d.ts → types/datepicker.d.ts} +48 -101
  244. package/{dialog/testing/index.d.ts → types/dialog-testing.d.ts} +1 -1
  245. package/{dialog/index.d.ts → types/dialog.d.ts} +9 -32
  246. package/{divider/index.d.ts → types/divider.d.ts} +2 -3
  247. package/{expansion/index.d.ts → types/expansion.d.ts} +5 -41
  248. package/{form-field/testing/control/index.d.ts → types/form-field-testing-control.d.ts} +1 -1
  249. package/{form-field/testing/index.d.ts → types/form-field-testing.d.ts} +4 -4
  250. package/{form-field/index.d.ts → types/form-field.d.ts} +6 -17
  251. package/{grid-list/index.d.ts → types/grid-list.d.ts} +3 -4
  252. package/{icon/testing/index.d.ts → types/icon-testing.d.ts} +1 -1
  253. package/types/icon.d.ts +8 -0
  254. package/{input/testing/index.d.ts → types/input-testing.d.ts} +2 -2
  255. package/{input/index.d.ts → types/input.d.ts} +10 -11
  256. package/{list/testing/index.d.ts → types/list-testing.d.ts} +2 -2
  257. package/{list/index.d.ts → types/list.d.ts} +10 -11
  258. package/{menu/index.d.ts → types/menu.d.ts} +7 -48
  259. package/{paginator/testing/index.d.ts → types/paginator-testing.d.ts} +1 -1
  260. package/types/paginator.d.ts +35 -0
  261. package/{progress-bar/index.d.ts → types/progress-bar.d.ts} +4 -11
  262. package/{progress-spinner/testing/index.d.ts → types/progress-spinner-testing.d.ts} +2 -2
  263. package/{progress-spinner/index.d.ts → types/progress-spinner.d.ts} +5 -6
  264. package/{radio/index.d.ts → types/radio.d.ts} +6 -13
  265. package/{select-module.d.d.ts → types/select.d.ts} +19 -26
  266. package/{sidenav/index.d.ts → types/sidenav.d.ts} +4 -21
  267. package/{slide-toggle/index.d.ts → types/slide-toggle.d.ts} +3 -4
  268. package/{slider/index.d.ts → types/slider.d.ts} +5 -5
  269. package/{snack-bar/index.d.ts → types/snack-bar.d.ts} +9 -25
  270. package/{sort/testing/index.d.ts → types/sort-testing.d.ts} +1 -1
  271. package/{sort/index.d.ts → types/sort.d.ts} +8 -40
  272. package/{stepper/index.d.ts → types/stepper.d.ts} +11 -39
  273. package/{table/testing/index.d.ts → types/table-testing.d.ts} +27 -1
  274. package/{table/index.d.ts → types/table.d.ts} +11 -11
  275. package/{tabs/index.d.ts → types/tabs.d.ts} +6 -22
  276. package/{timepicker/testing/index.d.ts → types/timepicker-testing.d.ts} +1 -1
  277. package/{timepicker/index.d.ts → types/timepicker.d.ts} +151 -130
  278. package/{toolbar/index.d.ts → types/toolbar.d.ts} +2 -3
  279. package/{tooltip-module.d.d.ts → types/tooltip.d.ts} +7 -29
  280. package/{tree/index.d.ts → types/tree.d.ts} +2 -3
  281. package/badge/index.d.ts +0 -15
  282. package/button-toggle/index.d.ts +0 -17
  283. package/common-module.d.d.ts +0 -44
  284. package/fesm2022/animation.mjs.map +0 -1
  285. package/fesm2022/autocomplete/testing.mjs.map +0 -1
  286. package/fesm2022/badge/testing.mjs.map +0 -1
  287. package/fesm2022/bottom-sheet/testing.mjs.map +0 -1
  288. package/fesm2022/button/testing.mjs.map +0 -1
  289. package/fesm2022/button-toggle/testing.mjs.map +0 -1
  290. package/fesm2022/card/testing.mjs.map +0 -1
  291. package/fesm2022/checkbox/testing.mjs.map +0 -1
  292. package/fesm2022/chips/testing.mjs.map +0 -1
  293. package/fesm2022/common-module.mjs +0 -42
  294. package/fesm2022/common-module.mjs.map +0 -1
  295. package/fesm2022/core/testing.mjs.map +0 -1
  296. package/fesm2022/date-formats.mjs.map +0 -1
  297. package/fesm2022/date-range-input-harness.mjs.map +0 -1
  298. package/fesm2022/datepicker/testing.mjs.map +0 -1
  299. package/fesm2022/dialog/testing.mjs.map +0 -1
  300. package/fesm2022/dialog-module.mjs +0 -891
  301. package/fesm2022/dialog-module.mjs.map +0 -1
  302. package/fesm2022/divider/testing.mjs.map +0 -1
  303. package/fesm2022/error-options.mjs.map +0 -1
  304. package/fesm2022/error-state.mjs.map +0 -1
  305. package/fesm2022/expansion/testing.mjs.map +0 -1
  306. package/fesm2022/form-field/testing/control.mjs.map +0 -1
  307. package/fesm2022/form-field/testing.mjs.map +0 -1
  308. package/fesm2022/form-field-module.mjs +0 -39
  309. package/fesm2022/form-field-module.mjs.map +0 -1
  310. package/fesm2022/form-field2.mjs +0 -1114
  311. package/fesm2022/form-field2.mjs.map +0 -1
  312. package/fesm2022/grid-list/testing.mjs.map +0 -1
  313. package/fesm2022/icon/testing.mjs.map +0 -1
  314. package/fesm2022/icon-button.mjs.map +0 -1
  315. package/fesm2022/icon-registry.mjs.map +0 -1
  316. package/fesm2022/input/testing.mjs.map +0 -1
  317. package/fesm2022/input-harness.mjs.map +0 -1
  318. package/fesm2022/input-value-accessor.mjs.map +0 -1
  319. package/fesm2022/internal-form-field.mjs.map +0 -1
  320. package/fesm2022/line.mjs.map +0 -1
  321. package/fesm2022/list/testing.mjs.map +0 -1
  322. package/fesm2022/menu/testing.mjs.map +0 -1
  323. package/fesm2022/option-harness.mjs.map +0 -1
  324. package/fesm2022/option-module.mjs +0 -22
  325. package/fesm2022/option-module.mjs.map +0 -1
  326. package/fesm2022/option.mjs.map +0 -1
  327. package/fesm2022/paginator/testing.mjs.map +0 -1
  328. package/fesm2022/progress-bar/testing.mjs.map +0 -1
  329. package/fesm2022/progress-spinner/testing.mjs.map +0 -1
  330. package/fesm2022/pseudo-checkbox-module.mjs +0 -20
  331. package/fesm2022/pseudo-checkbox-module.mjs.map +0 -1
  332. package/fesm2022/pseudo-checkbox.mjs.map +0 -1
  333. package/fesm2022/public-api.mjs.map +0 -1
  334. package/fesm2022/radio/testing.mjs.map +0 -1
  335. package/fesm2022/ripple-loader.mjs.map +0 -1
  336. package/fesm2022/ripple-module.mjs +0 -20
  337. package/fesm2022/ripple-module.mjs.map +0 -1
  338. package/fesm2022/ripple.mjs.map +0 -1
  339. package/fesm2022/select/testing.mjs.map +0 -1
  340. package/fesm2022/select-module.mjs +0 -1318
  341. package/fesm2022/select-module.mjs.map +0 -1
  342. package/fesm2022/sidenav/testing.mjs.map +0 -1
  343. package/fesm2022/slide-toggle/testing.mjs.map +0 -1
  344. package/fesm2022/slider/testing.mjs.map +0 -1
  345. package/fesm2022/snack-bar/testing.mjs.map +0 -1
  346. package/fesm2022/sort/testing.mjs.map +0 -1
  347. package/fesm2022/stepper/testing.mjs.map +0 -1
  348. package/fesm2022/structural-styles.mjs.map +0 -1
  349. package/fesm2022/table/testing.mjs.map +0 -1
  350. package/fesm2022/tabs/testing.mjs.map +0 -1
  351. package/fesm2022/timepicker/testing.mjs.map +0 -1
  352. package/fesm2022/toolbar/testing.mjs.map +0 -1
  353. package/fesm2022/tooltip/testing.mjs.map +0 -1
  354. package/fesm2022/tooltip-module.mjs.map +0 -1
  355. package/fesm2022/tree/testing.mjs.map +0 -1
  356. package/icon/index.d.ts +0 -9
  357. package/option-module.d.d.ts +0 -13
  358. package/paginator/index.d.ts +0 -36
  359. package/select/index.d.ts +0 -38
  360. package/tooltip/index.d.ts +0 -21
  361. /package/{date-range-input-harness.d.d.ts → types/_date-range-input-harness-chunk.d.ts} +0 -0
  362. /package/{dialog.d.d.ts → types/_dialog-chunk.d.ts} +0 -0
  363. /package/{error-options.d.d.ts → types/_error-options-chunk.d.ts} +0 -0
  364. /package/{form-field-control.d.d.ts → types/_form-field-control-chunk.d.ts} +0 -0
  365. /package/{form-field-control-harness.d.d.ts → types/_form-field-control-harness-chunk.d.ts} +0 -0
  366. /package/{input-harness.d.d.ts → types/_input-harness-chunk.d.ts} +0 -0
  367. /package/{list-option-types.d.d.ts → types/_list-option-types-chunk.d.ts} +0 -0
  368. /package/{option.d.d.ts → types/_option-chunk.d.ts} +0 -0
  369. /package/{option-harness.d.d.ts → types/_option-harness-chunk.d.ts} +0 -0
  370. /package/{option-parent.d.d.ts → types/_option-parent-chunk.d.ts} +0 -0
  371. /package/{palette.d.d.ts → types/_palette-chunk.d.ts} +0 -0
  372. /package/{ripple-loader.d.d.ts → types/_ripple-loader-chunk.d.ts} +0 -0
  373. /package/{sort-direction.d.d.ts → types/_sort-direction-chunk.d.ts} +0 -0
  374. /package/{bottom-sheet/testing/index.d.ts → types/bottom-sheet-testing.d.ts} +0 -0
  375. /package/{card/testing/index.d.ts → types/card-testing.d.ts} +0 -0
  376. /package/{checkbox/testing/index.d.ts → types/checkbox-testing.d.ts} +0 -0
  377. /package/{chips/testing/index.d.ts → types/chips-testing.d.ts} +0 -0
  378. /package/{divider/testing/index.d.ts → types/divider-testing.d.ts} +0 -0
  379. /package/{expansion/testing/index.d.ts → types/expansion-testing.d.ts} +0 -0
  380. /package/{grid-list/testing/index.d.ts → types/grid-list-testing.d.ts} +0 -0
  381. /package/{index.d.ts → types/material.d.ts} +0 -0
  382. /package/{menu/testing/index.d.ts → types/menu-testing.d.ts} +0 -0
  383. /package/{progress-bar/testing/index.d.ts → types/progress-bar-testing.d.ts} +0 -0
  384. /package/{radio/testing/index.d.ts → types/radio-testing.d.ts} +0 -0
  385. /package/{select/testing/index.d.ts → types/select-testing.d.ts} +0 -0
  386. /package/{sidenav/testing/index.d.ts → types/sidenav-testing.d.ts} +0 -0
  387. /package/{slide-toggle/testing/index.d.ts → types/slide-toggle-testing.d.ts} +0 -0
  388. /package/{slider/testing/index.d.ts → types/slider-testing.d.ts} +0 -0
  389. /package/{snack-bar/testing/index.d.ts → types/snack-bar-testing.d.ts} +0 -0
  390. /package/{stepper/testing/index.d.ts → types/stepper-testing.d.ts} +0 -0
  391. /package/{tabs/testing/index.d.ts → types/tabs-testing.d.ts} +0 -0
  392. /package/{toolbar/testing/index.d.ts → types/toolbar-testing.d.ts} +0 -0
  393. /package/{tooltip/testing/index.d.ts → types/tooltip-testing.d.ts} +0 -0
  394. /package/{tree/testing/index.d.ts → types/tree-testing.d.ts} +0 -0
package/fesm2022/tabs.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { FocusKeyManager, _IdGenerator, CdkMonitorFocus, FocusMonitor } from '@angular/cdk/a11y';
2
- import { Directionality } from '@angular/cdk/bidi';
2
+ import { Directionality, BidiModule } from '@angular/cdk/bidi';
3
3
  import { hasModifierKey, SPACE, ENTER } from '@angular/cdk/keycodes';
4
4
  import { SharedResizeObserver } from '@angular/cdk/observers/private';
5
5
  import { Platform } from '@angular/cdk/platform';
@@ -8,13 +8,12 @@ import * as i0 from '@angular/core';
8
8
  import { InjectionToken, inject, TemplateRef, Directive, ViewContainerRef, booleanAttribute, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, ContentChild, ViewChild, ElementRef, ChangeDetectorRef, NgZone, Injector, Renderer2, EventEmitter, afterNextRender, numberAttribute, Output, ContentChildren, QueryList, ViewChildren, signal, forwardRef, computed, HostAttributeToken, NgModule } from '@angular/core';
9
9
  import { Subject, of, merge, EMPTY, Observable, timer, Subscription, BehaviorSubject } from 'rxjs';
10
10
  import { debounceTime, takeUntil, startWith, switchMap, skip, filter } from 'rxjs/operators';
11
- import { _animationsDisabled } from './animation.mjs';
11
+ import { _animationsDisabled } from './_animation-chunk.mjs';
12
12
  import { CdkPortal, TemplatePortal, CdkPortalOutlet } from '@angular/cdk/portal';
13
13
  import { _CdkPrivateStyleLoader } from '@angular/cdk/private';
14
- import { _StructuralStylesLoader } from './structural-styles.mjs';
14
+ import { _StructuralStylesLoader } from './_structural-styles-chunk.mjs';
15
15
  import { CdkObserveContent } from '@angular/cdk/observers';
16
- import { MatRipple, MAT_RIPPLE_GLOBAL_OPTIONS } from './ripple.mjs';
17
- import { MatCommonModule } from './common-module.mjs';
16
+ import { MatRipple, MAT_RIPPLE_GLOBAL_OPTIONS } from './_ripple-chunk.mjs';
18
17
  import '@angular/cdk/layout';
19
18
  import '@angular/cdk/coercion';
20
19
 
@@ -28,10 +27,10 @@ const MAT_TAB_CONTENT = new InjectionToken('MatTabContent');
28
27
  class MatTabContent {
29
28
  template = inject(TemplateRef);
30
29
  constructor() { }
31
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
32
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.2.0-rc.1", type: MatTabContent, isStandalone: true, selector: "[matTabContent]", providers: [{ provide: MAT_TAB_CONTENT, useExisting: MatTabContent }], ngImport: i0 });
30
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
31
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.2.0-next.2", type: MatTabContent, isStandalone: true, selector: "[matTabContent]", providers: [{ provide: MAT_TAB_CONTENT, useExisting: MatTabContent }], ngImport: i0 });
33
32
  }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabContent, decorators: [{
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabContent, decorators: [{
35
34
  type: Directive,
36
35
  args: [{
37
36
  selector: '[matTabContent]',
@@ -53,10 +52,10 @@ const MAT_TAB = new InjectionToken('MAT_TAB');
53
52
  /** Used to flag tab labels for use with the portal directive */
54
53
  class MatTabLabel extends CdkPortal {
55
54
  _closestTab = inject(MAT_TAB, { optional: true });
56
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabLabel, deps: null, target: i0.ɵɵFactoryTarget.Directive });
57
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.2.0-rc.1", type: MatTabLabel, isStandalone: true, selector: "[mat-tab-label], [matTabLabel]", providers: [{ provide: MAT_TAB_LABEL, useExisting: MatTabLabel }], usesInheritance: true, ngImport: i0 });
55
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabLabel, deps: null, target: i0.ɵɵFactoryTarget.Directive });
56
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.2.0-next.2", type: MatTabLabel, isStandalone: true, selector: "[mat-tab-label], [matTabLabel]", providers: [{ provide: MAT_TAB_LABEL, useExisting: MatTabLabel }], usesInheritance: true, ngImport: i0 });
58
57
  }
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabLabel, decorators: [{
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabLabel, decorators: [{
60
59
  type: Directive,
61
60
  args: [{
62
61
  selector: '[mat-tab-label], [matTabLabel]',
@@ -158,10 +157,10 @@ class MatTab {
158
157
  this._templateLabel = value;
159
158
  }
160
159
  }
161
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTab, deps: [], target: i0.ɵɵFactoryTarget.Component });
162
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.2.0-rc.1", type: MatTab, isStandalone: true, selector: "mat-tab", inputs: { disabled: ["disabled", "disabled", booleanAttribute], textLabel: ["label", "textLabel"], ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], labelClass: "labelClass", bodyClass: "bodyClass", id: "id" }, host: { attributes: { "hidden": "" }, properties: { "attr.id": "null" } }, providers: [{ provide: MAT_TAB, useExisting: MatTab }], queries: [{ propertyName: "templateLabel", first: true, predicate: MatTabLabel, descendants: true }, { propertyName: "_explicitContent", first: true, predicate: MatTabContent, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "_implicitContent", first: true, predicate: TemplateRef, descendants: true, static: true }], exportAs: ["matTab"], usesOnChanges: 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 });
160
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTab, deps: [], target: i0.ɵɵFactoryTarget.Component });
161
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.2.0-next.2", type: MatTab, isStandalone: true, selector: "mat-tab", inputs: { disabled: ["disabled", "disabled", booleanAttribute], textLabel: ["label", "textLabel"], ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], labelClass: "labelClass", bodyClass: "bodyClass", id: "id" }, host: { attributes: { "hidden": "" }, properties: { "attr.id": "null" } }, providers: [{ provide: MAT_TAB, useExisting: MatTab }], queries: [{ propertyName: "templateLabel", first: true, predicate: MatTabLabel, descendants: true }, { propertyName: "_explicitContent", first: true, predicate: MatTabContent, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "_implicitContent", first: true, predicate: TemplateRef, descendants: true, static: true }], exportAs: ["matTab"], usesOnChanges: 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 });
163
162
  }
164
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTab, decorators: [{
163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTab, decorators: [{
165
164
  type: Component,
166
165
  args: [{ selector: 'mat-tab', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, exportAs: 'matTab', providers: [{ provide: MAT_TAB, useExisting: MatTab }], host: {
167
166
  // This element will be rendered on the server in order to support hydration.
@@ -317,32 +316,25 @@ class InkBarItem {
317
316
  }
318
317
  parentElement.appendChild(this._inkBarElement);
319
318
  }
320
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: InkBarItem, deps: [], target: i0.ɵɵFactoryTarget.Directive });
321
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "20.2.0-rc.1", type: InkBarItem, isStandalone: true, inputs: { fitInkBarToContent: ["fitInkBarToContent", "fitInkBarToContent", booleanAttribute] }, ngImport: i0 });
319
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: InkBarItem, deps: [], target: i0.ɵɵFactoryTarget.Directive });
320
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "20.2.0-next.2", type: InkBarItem, isStandalone: true, inputs: { fitInkBarToContent: ["fitInkBarToContent", "fitInkBarToContent", booleanAttribute] }, ngImport: i0 });
322
321
  }
323
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: InkBarItem, decorators: [{
322
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: InkBarItem, decorators: [{
324
323
  type: Directive
325
324
  }], propDecorators: { fitInkBarToContent: [{
326
325
  type: Input,
327
326
  args: [{ transform: booleanAttribute }]
328
327
  }] } });
329
- /**
330
- * The default positioner function for the MatInkBar.
331
- * @docs-private
332
- * @deprecated No longer used, will be removed.
333
- * @breaking-change 21.0.0
334
- */
335
- function _MAT_INK_BAR_POSITIONER_FACTORY() {
336
- const method = (element) => ({
337
- left: element ? (element.offsetLeft || 0) + 'px' : '0',
338
- width: element ? (element.offsetWidth || 0) + 'px' : '0',
339
- });
340
- return method;
341
- }
342
328
  /** Injection token for the MatInkBar's Positioner. */
343
329
  const _MAT_INK_BAR_POSITIONER = new InjectionToken('MatInkBarPositioner', {
344
330
  providedIn: 'root',
345
- factory: _MAT_INK_BAR_POSITIONER_FACTORY,
331
+ factory: () => {
332
+ const method = (element) => ({
333
+ left: element ? (element.offsetLeft || 0) + 'px' : '0',
334
+ width: element ? (element.offsetWidth || 0) + 'px' : '0',
335
+ });
336
+ return method;
337
+ },
346
338
  });
347
339
 
348
340
  /**
@@ -363,10 +355,10 @@ class MatTabLabelWrapper extends InkBarItem {
363
355
  getOffsetWidth() {
364
356
  return this.elementRef.nativeElement.offsetWidth;
365
357
  }
366
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabLabelWrapper, deps: null, target: i0.ɵɵFactoryTarget.Directive });
367
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "20.2.0-rc.1", type: MatTabLabelWrapper, isStandalone: true, selector: "[matTabLabelWrapper]", inputs: { disabled: ["disabled", "disabled", booleanAttribute] }, host: { properties: { "class.mat-mdc-tab-disabled": "disabled", "attr.aria-disabled": "!!disabled" } }, usesInheritance: true, ngImport: i0 });
358
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabLabelWrapper, deps: null, target: i0.ɵɵFactoryTarget.Directive });
359
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "20.2.0-next.2", type: MatTabLabelWrapper, isStandalone: true, selector: "[matTabLabelWrapper]", inputs: { disabled: ["disabled", "disabled", booleanAttribute] }, host: { properties: { "class.mat-mdc-tab-disabled": "disabled", "attr.aria-disabled": "!!disabled" } }, usesInheritance: true, ngImport: i0 });
368
360
  }
369
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabLabelWrapper, decorators: [{
361
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabLabelWrapper, decorators: [{
370
362
  type: Directive,
371
363
  args: [{
372
364
  selector: '[matTabLabelWrapper]',
@@ -878,10 +870,10 @@ class MatPaginatedTabHeader {
878
870
  this._checkScrollingControls();
879
871
  return { maxScrollDistance, distance: this._scrollDistance };
880
872
  }
881
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatPaginatedTabHeader, deps: [], target: i0.ɵɵFactoryTarget.Directive });
882
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "20.2.0-rc.1", type: MatPaginatedTabHeader, isStandalone: true, inputs: { disablePagination: ["disablePagination", "disablePagination", booleanAttribute], selectedIndex: ["selectedIndex", "selectedIndex", numberAttribute] }, outputs: { selectFocusedIndex: "selectFocusedIndex", indexFocused: "indexFocused" }, ngImport: i0 });
873
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatPaginatedTabHeader, deps: [], target: i0.ɵɵFactoryTarget.Directive });
874
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "20.2.0-next.2", type: MatPaginatedTabHeader, isStandalone: true, inputs: { disablePagination: ["disablePagination", "disablePagination", booleanAttribute], selectedIndex: ["selectedIndex", "selectedIndex", numberAttribute] }, outputs: { selectFocusedIndex: "selectFocusedIndex", indexFocused: "indexFocused" }, ngImport: i0 });
883
875
  }
884
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatPaginatedTabHeader, decorators: [{
876
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatPaginatedTabHeader, decorators: [{
885
877
  type: Directive
886
878
  }], ctorParameters: () => [], propDecorators: { disablePagination: [{
887
879
  type: Input,
@@ -923,10 +915,10 @@ class MatTabHeader extends MatPaginatedTabHeader {
923
915
  _itemSelected(event) {
924
916
  event.preventDefault();
925
917
  }
926
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabHeader, deps: null, target: i0.ɵɵFactoryTarget.Component });
927
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.2.0-rc.1", type: MatTabHeader, isStandalone: true, selector: "mat-tab-header", inputs: { ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], disableRipple: ["disableRipple", "disableRipple", booleanAttribute] }, 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: "<!--\n Note that this intentionally uses a `div` instead of a `button`, because it's not part of\n the regular tabs flow and is only here to support mouse users. It should also not be focusable.\n-->\n<div class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n mat-ripple\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</div>\n\n<div\n class=\"mat-mdc-tab-label-container\"\n #tabListContainer\n (keydown)=\"_handleKeydown($event)\"\n [class._mat-animation-noopable]=\"_animationsDisabled\">\n <div\n #tabList\n class=\"mat-mdc-tab-list\"\n role=\"tablist\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby || null\"\n (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-labels\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<div class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</div>\n", styles: [".mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mdc-tab-indicator .mdc-tab-indicator__content{transition-duration:var(--mat-tab-animation-duration, 250ms)}.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;outline:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.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;border-color:var(--mat-tab-pagination-icon-color, var(--mat-sys-on-surface))}.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-mdc-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1;border-bottom-style:solid;border-bottom-width:var(--mat-tab-divider-height, 1px);border-bottom-color:var(--mat-tab-divider-color, var(--mat-sys-surface-variant))}.mat-mdc-tab-group-inverted-header .mat-mdc-tab-label-container{border-bottom:none;border-top-style:solid;border-top-width:var(--mat-tab-divider-height, 1px);border-top-color:var(--mat-tab-divider-color, var(--mat-sys-surface-variant))}.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}.cdk-drop-list .mat-mdc-tab-labels,.mat-mdc-tab-labels.cdk-drop-list{min-height:var(--mat-tab-container-height, 48px)}.mat-mdc-tab::before{margin:5px}@media(forced-colors: active){.mat-mdc-tab[aria-disabled=true]{color:GrayText}}\n"], dependencies: [{ kind: "directive", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
918
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabHeader, deps: null, target: i0.ɵɵFactoryTarget.Component });
919
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.2.0-next.2", type: MatTabHeader, isStandalone: true, selector: "mat-tab-header", inputs: { ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], disableRipple: ["disableRipple", "disableRipple", booleanAttribute] }, 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: "<!--\n Note that this intentionally uses a `div` instead of a `button`, because it's not part of\n the regular tabs flow and is only here to support mouse users. It should also not be focusable.\n-->\n<div class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n mat-ripple\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</div>\n\n<div\n class=\"mat-mdc-tab-label-container\"\n #tabListContainer\n (keydown)=\"_handleKeydown($event)\"\n [class._mat-animation-noopable]=\"_animationsDisabled\">\n <div\n #tabList\n class=\"mat-mdc-tab-list\"\n role=\"tablist\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby || null\"\n (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-labels\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<div class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</div>\n", styles: [".mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mdc-tab-indicator .mdc-tab-indicator__content{transition-duration:var(--mat-tab-animation-duration, 250ms)}.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;outline:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.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;border-color:var(--mat-tab-pagination-icon-color, var(--mat-sys-on-surface))}.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-mdc-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1;border-bottom-style:solid;border-bottom-width:var(--mat-tab-divider-height, 1px);border-bottom-color:var(--mat-tab-divider-color, var(--mat-sys-surface-variant))}.mat-mdc-tab-group-inverted-header .mat-mdc-tab-label-container{border-bottom:none;border-top-style:solid;border-top-width:var(--mat-tab-divider-height, 1px);border-top-color:var(--mat-tab-divider-color, var(--mat-sys-surface-variant))}.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}.cdk-drop-list .mat-mdc-tab-labels,.mat-mdc-tab-labels.cdk-drop-list{min-height:var(--mat-tab-container-height, 48px)}.mat-mdc-tab::before{margin:5px}@media(forced-colors: active){.mat-mdc-tab[aria-disabled=true]{color:GrayText}}\n"], dependencies: [{ kind: "directive", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
928
920
  }
929
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabHeader, decorators: [{
921
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabHeader, decorators: [{
930
922
  type: Component,
931
923
  args: [{ selector: 'mat-tab-header', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, host: {
932
924
  'class': 'mat-mdc-tab-header',
@@ -971,6 +963,7 @@ const MAT_TABS_CONFIG = new InjectionToken('MAT_TABS_CONFIG');
971
963
  */
972
964
  class MatTabBodyPortal extends CdkPortalOutlet {
973
965
  _host = inject(MatTabBody);
966
+ _ngZone = inject(NgZone);
974
967
  /** Subscription to events for when the tab body begins centering. */
975
968
  _centeringSub = Subscription.EMPTY;
976
969
  /** Subscription to events for when the tab body finishes leaving from center position. */
@@ -985,12 +978,19 @@ class MatTabBodyPortal extends CdkPortalOutlet {
985
978
  .pipe(startWith(this._host._isCenterPosition()))
986
979
  .subscribe((isCentering) => {
987
980
  if (this._host._content && isCentering && !this.hasAttached()) {
988
- this.attach(this._host._content);
981
+ // Attach in the zone since the events from the tab body may be happening outside.
982
+ // See: https://github.com/angular/components/issues/31867
983
+ this._ngZone.run(() => {
984
+ // `Promise.resolve` is necessary to destabilize the zone.
985
+ // Otherwise some apps throw a `ApplicationRef.tick is called recursively` error.
986
+ Promise.resolve().then();
987
+ this.attach(this._host._content);
988
+ });
989
989
  }
990
990
  });
991
991
  this._leavingSub = this._host._afterLeavingCenter.subscribe(() => {
992
992
  if (!this._host.preserveContent) {
993
- this.detach();
993
+ this._ngZone.run(() => this.detach());
994
994
  }
995
995
  });
996
996
  }
@@ -1000,10 +1000,10 @@ class MatTabBodyPortal extends CdkPortalOutlet {
1000
1000
  this._centeringSub.unsubscribe();
1001
1001
  this._leavingSub.unsubscribe();
1002
1002
  }
1003
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabBodyPortal, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1004
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.2.0-rc.1", type: MatTabBodyPortal, isStandalone: true, selector: "[matTabBodyHost]", usesInheritance: true, ngImport: i0 });
1003
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabBodyPortal, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1004
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.2.0-next.2", type: MatTabBodyPortal, isStandalone: true, selector: "[matTabBodyHost]", usesInheritance: true, ngImport: i0 });
1005
1005
  }
1006
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabBodyPortal, decorators: [{
1006
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabBodyPortal, decorators: [{
1007
1007
  type: Directive,
1008
1008
  args: [{ selector: '[matTabBodyHost]' }]
1009
1009
  }], ctorParameters: () => [] });
@@ -1170,14 +1170,14 @@ class MatTabBody {
1170
1170
  this.animationDuration === '0ms' ||
1171
1171
  this.animationDuration === '0s');
1172
1172
  }
1173
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabBody, deps: [], target: i0.ɵɵFactoryTarget.Component });
1174
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.0-rc.1", type: MatTabBody, isStandalone: true, selector: "mat-tab-body", inputs: { _content: ["content", "_content"], animationDuration: "animationDuration", preserveContent: "preserveContent", position: "position" }, outputs: { _onCentering: "_onCentering", _beforeCentering: "_beforeCentering", _onCentered: "_onCentered" }, host: { properties: { "attr.inert": "_position === \"center\" ? null : \"\"" }, classAttribute: "mat-mdc-tab-body" }, viewQueries: [{ propertyName: "_portalHost", first: true, predicate: MatTabBodyPortal, descendants: true }, { propertyName: "_contentElement", first: true, predicate: ["content"], descendants: true }], ngImport: i0, template: "<div\n class=\"mat-mdc-tab-body-content\"\n #content\n cdkScrollable\n [class.mat-tab-body-content-left]=\"_position === 'left'\"\n [class.mat-tab-body-content-right]=\"_position === 'right'\"\n [class.mat-tab-body-content-can-animate]=\"_position === 'center' || _previousPosition === 'center'\">\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;transform:none;visibility:hidden}.mat-tab-body-animating>.mat-mdc-tab-body-content,.mat-mdc-tab-body-active>.mat-mdc-tab-body-content{visibility:visible}.mat-tab-body-animating>.mat-mdc-tab-body-content{min-height:1px}.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body-content{overflow:hidden}.mat-tab-body-content-can-animate{transition:transform var(--mat-tab-animation-duration) 1ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-mdc-tab-body-wrapper._mat-animation-noopable .mat-tab-body-content-can-animate{transition:none}.mat-tab-body-content-left{transform:translate3d(-100%, 0, 0)}.mat-tab-body-content-right{transform:translate3d(100%, 0, 0)}\n"], dependencies: [{ kind: "directive", type: MatTabBodyPortal, selector: "[matTabBodyHost]" }, { kind: "directive", type: CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
1173
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabBody, deps: [], target: i0.ɵɵFactoryTarget.Component });
1174
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.0-next.2", type: MatTabBody, isStandalone: true, selector: "mat-tab-body", inputs: { _content: ["content", "_content"], animationDuration: "animationDuration", preserveContent: "preserveContent", position: "position" }, outputs: { _onCentering: "_onCentering", _beforeCentering: "_beforeCentering", _onCentered: "_onCentered" }, host: { properties: { "attr.inert": "_position === \"center\" ? null : \"\"" }, classAttribute: "mat-mdc-tab-body" }, viewQueries: [{ propertyName: "_portalHost", first: true, predicate: MatTabBodyPortal, descendants: true }, { propertyName: "_contentElement", first: true, predicate: ["content"], descendants: true }], ngImport: i0, template: "<div\n class=\"mat-mdc-tab-body-content\"\n #content\n cdkScrollable\n [class.mat-tab-body-content-left]=\"_position === 'left'\"\n [class.mat-tab-body-content-right]=\"_position === 'right'\"\n [class.mat-tab-body-content-can-animate]=\"_position === 'center' || _previousPosition === 'center'\">\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;transform:none;visibility:hidden}.mat-tab-body-animating>.mat-mdc-tab-body-content,.mat-mdc-tab-body-active>.mat-mdc-tab-body-content{visibility:visible}.mat-tab-body-animating>.mat-mdc-tab-body-content{min-height:1px}.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body-content{overflow:hidden}.mat-tab-body-content-can-animate{transition:transform var(--mat-tab-animation-duration) 1ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-mdc-tab-body-wrapper._mat-animation-noopable .mat-tab-body-content-can-animate{transition:none}.mat-tab-body-content-left{transform:translate3d(-100%, 0, 0)}.mat-tab-body-content-right{transform:translate3d(100%, 0, 0)}\n"], dependencies: [{ kind: "directive", type: MatTabBodyPortal, selector: "[matTabBodyHost]" }, { kind: "directive", type: CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
1175
1175
  }
1176
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabBody, decorators: [{
1176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabBody, decorators: [{
1177
1177
  type: Component,
1178
1178
  args: [{ selector: 'mat-tab-body', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, host: {
1179
1179
  'class': 'mat-mdc-tab-body',
1180
- // In most cases the `visibility: hidden` that we set on the off-screen content is enough
1180
+ // In most cases the `hidden` that we set on the off-screen content is enough
1181
1181
  // to stop interactions with it, but if a child element sets its own `visibility`, it'll
1182
1182
  // override the one from the parent. This ensures that even those elements will be removed
1183
1183
  // from the accessibility tree.
@@ -1603,15 +1603,15 @@ class MatTabGroup {
1603
1603
  this.animationDuration === '0' ||
1604
1604
  this.animationDuration === '0ms');
1605
1605
  }
1606
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
1607
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.0-rc.1", type: MatTabGroup, isStandalone: true, selector: "mat-tab-group", inputs: { color: "color", fitInkBarToContent: ["fitInkBarToContent", "fitInkBarToContent", booleanAttribute], stretchTabs: ["mat-stretch-tabs", "stretchTabs", booleanAttribute], alignTabs: ["mat-align-tabs", "alignTabs"], dynamicHeight: ["dynamicHeight", "dynamicHeight", booleanAttribute], selectedIndex: ["selectedIndex", "selectedIndex", numberAttribute], headerPosition: "headerPosition", animationDuration: "animationDuration", contentTabIndex: ["contentTabIndex", "contentTabIndex", numberAttribute], disablePagination: ["disablePagination", "disablePagination", booleanAttribute], disableRipple: ["disableRipple", "disableRipple", booleanAttribute], preserveContent: ["preserveContent", "preserveContent", booleanAttribute], backgroundColor: "backgroundColor", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"] }, outputs: { selectedIndexChange: "selectedIndexChange", focusChange: "focusChange", animationDone: "animationDone", selectedTabChange: "selectedTabChange" }, host: { properties: { "class": "\"mat-\" + (color || \"primary\")", "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", "attr.mat-align-tabs": "alignTabs", "style.--mat-tab-animation-duration": "animationDuration" }, classAttribute: "mat-mdc-tab-group" }, providers: [
1606
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
1607
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.0-next.2", type: MatTabGroup, isStandalone: true, selector: "mat-tab-group", inputs: { color: "color", fitInkBarToContent: ["fitInkBarToContent", "fitInkBarToContent", booleanAttribute], stretchTabs: ["mat-stretch-tabs", "stretchTabs", booleanAttribute], alignTabs: ["mat-align-tabs", "alignTabs"], dynamicHeight: ["dynamicHeight", "dynamicHeight", booleanAttribute], selectedIndex: ["selectedIndex", "selectedIndex", numberAttribute], headerPosition: "headerPosition", animationDuration: "animationDuration", contentTabIndex: ["contentTabIndex", "contentTabIndex", numberAttribute], disablePagination: ["disablePagination", "disablePagination", booleanAttribute], disableRipple: ["disableRipple", "disableRipple", booleanAttribute], preserveContent: ["preserveContent", "preserveContent", booleanAttribute], backgroundColor: "backgroundColor", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"] }, outputs: { selectedIndexChange: "selectedIndexChange", focusChange: "focusChange", animationDone: "animationDone", selectedTabChange: "selectedTabChange" }, host: { properties: { "class": "\"mat-\" + (color || \"primary\")", "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", "attr.mat-align-tabs": "alignTabs", "style.--mat-tab-animation-duration": "animationDuration" }, classAttribute: "mat-mdc-tab-group" }, providers: [
1608
1608
  {
1609
1609
  provide: MAT_TAB_GROUP,
1610
1610
  useExisting: MatTabGroup,
1611
1611
  },
1612
1612
  ], queries: [{ propertyName: "_allTabs", predicate: MatTab, descendants: true }], viewQueries: [{ propertyName: "_tabBodyWrapper", first: true, predicate: ["tabBodyWrapper"], descendants: true }, { propertyName: "_tabHeader", first: true, predicate: ["tabHeader"], descendants: true }, { propertyName: "_tabBodies", predicate: MatTabBody, descendants: true }], exportAs: ["matTabGroup"], ngImport: i0, template: "<mat-tab-header #tabHeader\n [selectedIndex]=\"selectedIndex || 0\"\n [disableRipple]=\"disableRipple\"\n [disablePagination]=\"disablePagination\"\n [aria-label]=\"ariaLabel\"\n [aria-labelledby]=\"ariaLabelledby\"\n (indexFocused)=\"_focusChanged($event)\"\n (selectFocusedIndex)=\"selectedIndex = $event\">\n\n @for (tab of _tabs; track tab) {\n <div class=\"mdc-tab mat-mdc-tab mat-focus-indicator\"\n #tabNode\n role=\"tab\"\n matTabLabelWrapper\n cdkMonitorElementFocus\n [id]=\"_getTabLabelId(tab, $index)\"\n [attr.tabIndex]=\"_getTabIndex($index)\"\n [attr.aria-posinset]=\"$index + 1\"\n [attr.aria-setsize]=\"_tabs.length\"\n [attr.aria-controls]=\"_getTabContentId($index)\"\n [attr.aria-selected]=\"selectedIndex === $index\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\n [class.mdc-tab--active]=\"selectedIndex === $index\"\n [class]=\"tab.labelClass\"\n [disabled]=\"tab.disabled\"\n [fitInkBarToContent]=\"fitInkBarToContent\"\n (click)=\"_handleClick(tab, tabHeader, $index)\"\n (cdkFocusChange)=\"_tabFocusChanged($event, $index)\">\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 <!--\n If there is a label template, use it, otherwise fall back to the text label.\n Note that we don't have indentation around the text label, because it adds\n whitespace around the text which breaks some internal tests.\n -->\n @if (tab.templateLabel) {\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\n } @else {{{tab.textLabel}}}\n </span>\n </span>\n </div>\n }\n</mat-tab-header>\n\n<!--\n We need to project the content somewhere to avoid hydration errors. Some observations:\n 1. This is only necessary on the server.\n 2. We get a hydration error if there aren't any nodes after the `ng-content`.\n 3. We get a hydration error if `ng-content` is wrapped in another element.\n-->\n@if (_isServer) {\n <ng-content/>\n}\n\n<div\n class=\"mat-mdc-tab-body-wrapper\"\n [class._mat-animation-noopable]=\"_animationsDisabled()\"\n #tabBodyWrapper>\n @for (tab of _tabs; track tab;) {\n <mat-tab-body role=\"tabpanel\"\n [id]=\"_getTabContentId($index)\"\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === $index) ? contentTabIndex : null\"\n [attr.aria-labelledby]=\"_getTabLabelId(tab, $index)\"\n [attr.aria-hidden]=\"selectedIndex !== $index\"\n [class]=\"tab.bodyClass\"\n [content]=\"tab.content!\"\n [position]=\"tab.position!\"\n [animationDuration]=\"animationDuration\"\n [preserveContent]=\"preserveContent\"\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\"\n (_beforeCentering)=\"_bodyCentered($event)\"/>\n }\n</div>\n", styles: [".mdc-tab{min-width:90px;padding:0 24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;z-index:1;touch-action:manipulation}.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--active .mdc-tab__text-label{transition-delay:100ms}._mat-animation-noopable .mdc-tab__text-label{transition:none}.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{transition:var(--mat-tab-animation-duration, 250ms) transform cubic-bezier(0.4, 0, 0.2, 1);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--active .mdc-tab-indicator__content{opacity:1}._mat-animation-noopable .mdc-tab-indicator__content,.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mat-mdc-tab-ripple.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);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;background:none;height:var(--mat-tab-container-height, 48px);font-family:var(--mat-tab-label-text-font, var(--mat-sys-title-small-font));font-size:var(--mat-tab-label-text-size, var(--mat-sys-title-small-size));letter-spacing:var(--mat-tab-label-text-tracking, var(--mat-sys-title-small-tracking));line-height:var(--mat-tab-label-text-line-height, var(--mat-sys-title-small-line-height));font-weight:var(--mat-tab-label-text-weight, var(--mat-sys-title-small-weight))}.mat-mdc-tab.mdc-tab{flex-grow:0}.mat-mdc-tab .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-indicator-color, var(--mat-sys-primary));border-top-width:var(--mat-tab-active-indicator-height, 2px);border-radius:var(--mat-tab-active-indicator-shape, 0)}.mat-mdc-tab:hover .mdc-tab__text-label{color:var(--mat-tab-inactive-hover-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab:focus .mdc-tab__text-label{color:var(--mat-tab-inactive-focus-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active .mdc-tab__text-label{color:var(--mat-tab-active-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active .mdc-tab__ripple::before,.mat-mdc-tab.mdc-tab--active .mat-ripple-element{background-color:var(--mat-tab-active-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active:hover .mdc-tab__text-label{color:var(--mat-tab-active-hover-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active:hover .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-hover-indicator-color, var(--mat-sys-primary))}.mat-mdc-tab.mdc-tab--active:focus .mdc-tab__text-label{color:var(--mat-tab-active-focus-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active:focus .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-focus-indicator-color, var(--mat-sys-primary))}.mat-mdc-tab.mat-mdc-tab-disabled{opacity:.4;pointer-events:none}.mat-mdc-tab.mat-mdc-tab-disabled .mdc-tab__content{pointer-events:none}.mat-mdc-tab.mat-mdc-tab-disabled .mdc-tab__ripple::before,.mat-mdc-tab.mat-mdc-tab-disabled .mat-ripple-element{background-color:var(--mat-tab-disabled-ripple-color, var(--mat-sys-on-surface-variant))}.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;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab .mdc-tab__text-label{color:var(--mat-tab-inactive-label-text-color, var(--mat-sys-on-surface));display:inline-flex;align-items:center}.mat-mdc-tab .mdc-tab__content{position:relative;pointer-events:auto}.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;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab-group.mat-mdc-tab-group-stretch-tabs>.mat-mdc-tab-header .mat-mdc-tab{flex-grow:1}.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-tab-background-color)}.mat-mdc-tab-group.mat-tabs-with-background.mat-primary>.mat-mdc-tab-header .mat-mdc-tab .mdc-tab__text-label{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background.mat-primary>.mat-mdc-tab-header .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background:not(.mat-primary)>.mat-mdc-tab-header .mat-mdc-tab:not(.mdc-tab--active) .mdc-tab__text-label{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background:not(.mat-primary)>.mat-mdc-tab-header .mat-mdc-tab:not(.mdc-tab--active) .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-foreground-color)}.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-focus-indicator::before,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-focus-indicator::before{border-color:var(--mat-tab-foreground-color)}.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-tab-foreground-color)}.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{color:var(--mat-tab-foreground-color)}.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}\n"], dependencies: [{ kind: "component", type: MatTabHeader, selector: "mat-tab-header", inputs: ["aria-label", "aria-labelledby", "disableRipple"] }, { kind: "directive", type: MatTabLabelWrapper, selector: "[matTabLabelWrapper]", inputs: ["disabled"] }, { kind: "directive", type: CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"], exportAs: ["cdkMonitorFocus"] }, { kind: "directive", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: MatTabBody, selector: "mat-tab-body", inputs: ["content", "animationDuration", "preserveContent", "position"], outputs: ["_onCentering", "_beforeCentering", "_onCentered"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
1613
1613
  }
1614
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabGroup, decorators: [{
1614
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabGroup, decorators: [{
1615
1615
  type: Component,
1616
1616
  args: [{ selector: 'mat-tab-group', exportAs: 'matTabGroup', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, providers: [
1617
1617
  {
@@ -1839,10 +1839,10 @@ class MatTabNav extends MatPaginatedTabHeader {
1839
1839
  _hasFocus(link) {
1840
1840
  return this._keyManager?.activeItem === link;
1841
1841
  }
1842
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabNav, deps: [], target: i0.ɵɵFactoryTarget.Component });
1843
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.2.0-rc.1", type: MatTabNav, isStandalone: true, selector: "[mat-tab-nav-bar]", inputs: { fitInkBarToContent: ["fitInkBarToContent", "fitInkBarToContent", booleanAttribute], stretchTabs: ["mat-stretch-tabs", "stretchTabs", booleanAttribute], animationDuration: "animationDuration", backgroundColor: "backgroundColor", disableRipple: ["disableRipple", "disableRipple", booleanAttribute], color: "color", tabPanel: "tabPanel" }, 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": "_animationsDisabled", "style.--mat-tab-animation-duration": "animationDuration" }, classAttribute: "mat-mdc-tab-nav-bar mat-mdc-tab-header" }, queries: [{ propertyName: "_items", predicate: i0.forwardRef(() => 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: "<!--\n Note that this intentionally uses a `div` instead of a `button`, because it's not part of\n the regular tabs flow and is only here to support mouse users. It should also not be focusable.\n-->\n<div class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n mat-ripple\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</div>\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<div class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</div>\n", styles: [".mdc-tab{min-width:90px;padding:0 24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;z-index:1;touch-action:manipulation}.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--active .mdc-tab__text-label{transition-delay:100ms}._mat-animation-noopable .mdc-tab__text-label{transition:none}.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{transition:var(--mat-tab-animation-duration, 250ms) transform cubic-bezier(0.4, 0, 0.2, 1);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--active .mdc-tab-indicator__content{opacity:1}._mat-animation-noopable .mdc-tab-indicator__content,.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mat-mdc-tab-ripple.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}.mdc-tab-indicator .mdc-tab-indicator__content{transition-duration:var(--mat-tab-animation-duration, 250ms)}.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;outline:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.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;border-color:var(--mat-tab-pagination-icon-color, var(--mat-sys-on-surface))}.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-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}.cdk-drop-list .mat-mdc-tab-links,.mat-mdc-tab-links.cdk-drop-list{min-height:var(--mat-tab-container-height, 48px)}.mat-mdc-tab-link-container{display:flex;flex-grow:1;overflow:hidden;z-index:1;border-bottom-style:solid;border-bottom-width:var(--mat-tab-divider-height, 1px);border-bottom-color:var(--mat-tab-divider-color, var(--mat-sys-surface-variant))}.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-tab-background-color)}.mat-mdc-tab-nav-bar.mat-tabs-with-background.mat-primary>.mat-mdc-tab-link-container .mat-mdc-tab-link .mdc-tab__text-label{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-nav-bar.mat-tabs-with-background.mat-primary>.mat-mdc-tab-link-container .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-foreground-color)}.mat-mdc-tab-nav-bar.mat-tabs-with-background:not(.mat-primary)>.mat-mdc-tab-link-container .mat-mdc-tab-link:not(.mdc-tab--active) .mdc-tab__text-label{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-nav-bar.mat-tabs-with-background:not(.mat-primary)>.mat-mdc-tab-link-container .mat-mdc-tab-link:not(.mdc-tab--active) .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-foreground-color)}.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-focus-indicator::before,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-focus-indicator::before{border-color:var(--mat-tab-foreground-color)}.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-tab-foreground-color)}.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{color:var(--mat-tab-foreground-color)}\n"], dependencies: [{ kind: "directive", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
1842
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabNav, deps: [], target: i0.ɵɵFactoryTarget.Component });
1843
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.2.0-next.2", type: MatTabNav, isStandalone: true, selector: "[mat-tab-nav-bar]", inputs: { fitInkBarToContent: ["fitInkBarToContent", "fitInkBarToContent", booleanAttribute], stretchTabs: ["mat-stretch-tabs", "stretchTabs", booleanAttribute], animationDuration: "animationDuration", backgroundColor: "backgroundColor", disableRipple: ["disableRipple", "disableRipple", booleanAttribute], color: "color", tabPanel: "tabPanel" }, 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": "_animationsDisabled", "style.--mat-tab-animation-duration": "animationDuration" }, classAttribute: "mat-mdc-tab-nav-bar mat-mdc-tab-header" }, queries: [{ propertyName: "_items", predicate: i0.forwardRef(() => 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: "<!--\n Note that this intentionally uses a `div` instead of a `button`, because it's not part of\n the regular tabs flow and is only here to support mouse users. It should also not be focusable.\n-->\n<div class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n mat-ripple\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</div>\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<div class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</div>\n", styles: [".mdc-tab{min-width:90px;padding:0 24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;z-index:1;touch-action:manipulation}.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--active .mdc-tab__text-label{transition-delay:100ms}._mat-animation-noopable .mdc-tab__text-label{transition:none}.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{transition:var(--mat-tab-animation-duration, 250ms) transform cubic-bezier(0.4, 0, 0.2, 1);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--active .mdc-tab-indicator__content{opacity:1}._mat-animation-noopable .mdc-tab-indicator__content,.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mat-mdc-tab-ripple.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}.mdc-tab-indicator .mdc-tab-indicator__content{transition-duration:var(--mat-tab-animation-duration, 250ms)}.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;outline:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.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;border-color:var(--mat-tab-pagination-icon-color, var(--mat-sys-on-surface))}.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-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}.cdk-drop-list .mat-mdc-tab-links,.mat-mdc-tab-links.cdk-drop-list{min-height:var(--mat-tab-container-height, 48px)}.mat-mdc-tab-link-container{display:flex;flex-grow:1;overflow:hidden;z-index:1;border-bottom-style:solid;border-bottom-width:var(--mat-tab-divider-height, 1px);border-bottom-color:var(--mat-tab-divider-color, var(--mat-sys-surface-variant))}.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-tab-background-color)}.mat-mdc-tab-nav-bar.mat-tabs-with-background.mat-primary>.mat-mdc-tab-link-container .mat-mdc-tab-link .mdc-tab__text-label{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-nav-bar.mat-tabs-with-background.mat-primary>.mat-mdc-tab-link-container .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-foreground-color)}.mat-mdc-tab-nav-bar.mat-tabs-with-background:not(.mat-primary)>.mat-mdc-tab-link-container .mat-mdc-tab-link:not(.mdc-tab--active) .mdc-tab__text-label{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-nav-bar.mat-tabs-with-background:not(.mat-primary)>.mat-mdc-tab-link-container .mat-mdc-tab-link:not(.mdc-tab--active) .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-foreground-color)}.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-focus-indicator::before,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-nav-bar.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-focus-indicator::before{border-color:var(--mat-tab-foreground-color)}.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-tab-foreground-color)}.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{color:var(--mat-tab-foreground-color)}\n"], dependencies: [{ kind: "directive", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
1844
1844
  }
1845
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabNav, decorators: [{
1845
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabNav, decorators: [{
1846
1846
  type: Component,
1847
1847
  args: [{ selector: '[mat-tab-nav-bar]', exportAs: 'matTabNavBar, matTabNav', host: {
1848
1848
  '[attr.role]': '_getRole()',
@@ -2013,10 +2013,10 @@ class MatTabLink extends InkBarItem {
2013
2013
  _getRole() {
2014
2014
  return this._tabNavBar.tabPanel ? 'tab' : this.elementRef.nativeElement.getAttribute('role');
2015
2015
  }
2016
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabLink, deps: [], target: i0.ɵɵFactoryTarget.Component });
2017
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.2.0-rc.1", type: MatTabLink, isStandalone: true, selector: "[mat-tab-link], [matTabLink]", inputs: { active: ["active", "active", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], disableRipple: ["disableRipple", "disableRipple", booleanAttribute], tabIndex: ["tabIndex", "tabIndex", (value) => (value == null ? 0 : numberAttribute(value))], 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": "_tabIndex()", "attr.role": "_getRole()", "class.mat-mdc-tab-disabled": "disabled", "class.mdc-tab--active": "active" }, classAttribute: "mdc-tab mat-mdc-tab-link mat-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);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;background:none;height:var(--mat-tab-container-height, 48px);font-family:var(--mat-tab-label-text-font, var(--mat-sys-title-small-font));font-size:var(--mat-tab-label-text-size, var(--mat-sys-title-small-size));letter-spacing:var(--mat-tab-label-text-tracking, var(--mat-sys-title-small-tracking));line-height:var(--mat-tab-label-text-line-height, var(--mat-sys-title-small-line-height));font-weight:var(--mat-tab-label-text-weight, var(--mat-sys-title-small-weight))}.mat-mdc-tab-link.mdc-tab{flex-grow:0}.mat-mdc-tab-link .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-indicator-color, var(--mat-sys-primary));border-top-width:var(--mat-tab-active-indicator-height, 2px);border-radius:var(--mat-tab-active-indicator-shape, 0)}.mat-mdc-tab-link:hover .mdc-tab__text-label{color:var(--mat-tab-inactive-hover-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link:focus .mdc-tab__text-label{color:var(--mat-tab-inactive-focus-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link.mdc-tab--active .mdc-tab__text-label{color:var(--mat-tab-active-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link.mdc-tab--active .mdc-tab__ripple::before,.mat-mdc-tab-link.mdc-tab--active .mat-ripple-element{background-color:var(--mat-tab-active-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link.mdc-tab--active:hover .mdc-tab__text-label{color:var(--mat-tab-active-hover-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link.mdc-tab--active:hover .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-hover-indicator-color, var(--mat-sys-primary))}.mat-mdc-tab-link.mdc-tab--active:focus .mdc-tab__text-label{color:var(--mat-tab-active-focus-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link.mdc-tab--active:focus .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-focus-indicator-color, var(--mat-sys-primary))}.mat-mdc-tab-link.mat-mdc-tab-disabled{opacity:.4;pointer-events:none}.mat-mdc-tab-link.mat-mdc-tab-disabled .mdc-tab__content{pointer-events:none}.mat-mdc-tab-link.mat-mdc-tab-disabled .mdc-tab__ripple::before,.mat-mdc-tab-link.mat-mdc-tab-disabled .mat-ripple-element{background-color:var(--mat-tab-disabled-ripple-color, var(--mat-sys-on-surface-variant))}.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;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link .mdc-tab__text-label{color:var(--mat-tab-inactive-label-text-color, var(--mat-sys-on-surface));display:inline-flex;align-items:center}.mat-mdc-tab-link .mdc-tab__content{position:relative;pointer-events:auto}.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;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.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}}\n"], dependencies: [{ kind: "directive", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2016
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabLink, deps: [], target: i0.ɵɵFactoryTarget.Component });
2017
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.2.0-next.2", type: MatTabLink, isStandalone: true, selector: "[mat-tab-link], [matTabLink]", inputs: { active: ["active", "active", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], disableRipple: ["disableRipple", "disableRipple", booleanAttribute], tabIndex: ["tabIndex", "tabIndex", (value) => (value == null ? 0 : numberAttribute(value))], 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": "_tabIndex()", "attr.role": "_getRole()", "class.mat-mdc-tab-disabled": "disabled", "class.mdc-tab--active": "active" }, classAttribute: "mdc-tab mat-mdc-tab-link mat-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);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;background:none;height:var(--mat-tab-container-height, 48px);font-family:var(--mat-tab-label-text-font, var(--mat-sys-title-small-font));font-size:var(--mat-tab-label-text-size, var(--mat-sys-title-small-size));letter-spacing:var(--mat-tab-label-text-tracking, var(--mat-sys-title-small-tracking));line-height:var(--mat-tab-label-text-line-height, var(--mat-sys-title-small-line-height));font-weight:var(--mat-tab-label-text-weight, var(--mat-sys-title-small-weight))}.mat-mdc-tab-link.mdc-tab{flex-grow:0}.mat-mdc-tab-link .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-indicator-color, var(--mat-sys-primary));border-top-width:var(--mat-tab-active-indicator-height, 2px);border-radius:var(--mat-tab-active-indicator-shape, 0)}.mat-mdc-tab-link:hover .mdc-tab__text-label{color:var(--mat-tab-inactive-hover-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link:focus .mdc-tab__text-label{color:var(--mat-tab-inactive-focus-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link.mdc-tab--active .mdc-tab__text-label{color:var(--mat-tab-active-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link.mdc-tab--active .mdc-tab__ripple::before,.mat-mdc-tab-link.mdc-tab--active .mat-ripple-element{background-color:var(--mat-tab-active-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link.mdc-tab--active:hover .mdc-tab__text-label{color:var(--mat-tab-active-hover-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link.mdc-tab--active:hover .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-hover-indicator-color, var(--mat-sys-primary))}.mat-mdc-tab-link.mdc-tab--active:focus .mdc-tab__text-label{color:var(--mat-tab-active-focus-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link.mdc-tab--active:focus .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-focus-indicator-color, var(--mat-sys-primary))}.mat-mdc-tab-link.mat-mdc-tab-disabled{opacity:.4;pointer-events:none}.mat-mdc-tab-link.mat-mdc-tab-disabled .mdc-tab__content{pointer-events:none}.mat-mdc-tab-link.mat-mdc-tab-disabled .mdc-tab__ripple::before,.mat-mdc-tab-link.mat-mdc-tab-disabled .mat-ripple-element{background-color:var(--mat-tab-disabled-ripple-color, var(--mat-sys-on-surface-variant))}.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;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab-link .mdc-tab__text-label{color:var(--mat-tab-inactive-label-text-color, var(--mat-sys-on-surface));display:inline-flex;align-items:center}.mat-mdc-tab-link .mdc-tab__content{position:relative;pointer-events:auto}.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;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.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}}\n"], dependencies: [{ kind: "directive", type: MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2018
2018
  }
2019
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabLink, decorators: [{
2019
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabLink, decorators: [{
2020
2020
  type: Component,
2021
2021
  args: [{ selector: '[mat-tab-link], [matTabLink]', exportAs: 'matTabLink', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
2022
2022
  'class': 'mdc-tab mat-mdc-tab-link mat-focus-indicator',
@@ -2057,10 +2057,10 @@ class MatTabNavPanel {
2057
2057
  id = inject(_IdGenerator).getId('mat-tab-nav-panel-');
2058
2058
  /** Id of the active tab in the nav bar. */
2059
2059
  _activeTabId;
2060
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabNavPanel, deps: [], target: i0.ɵɵFactoryTarget.Component });
2061
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.0-rc.1", type: MatTabNavPanel, isStandalone: true, 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 });
2060
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabNavPanel, deps: [], target: i0.ɵɵFactoryTarget.Component });
2061
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.0-next.2", type: MatTabNavPanel, isStandalone: true, 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 });
2062
2062
  }
2063
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabNavPanel, decorators: [{
2063
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabNavPanel, decorators: [{
2064
2064
  type: Component,
2065
2065
  args: [{
2066
2066
  selector: 'mat-tab-nav-panel',
@@ -2080,15 +2080,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ng
2080
2080
  }] } });
2081
2081
 
2082
2082
  class MatTabsModule {
2083
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2084
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabsModule, imports: [MatCommonModule,
2085
- MatTabContent,
2086
- MatTabLabel,
2087
- MatTab,
2088
- MatTabGroup,
2089
- MatTabNav,
2090
- MatTabNavPanel,
2091
- MatTabLink], exports: [MatCommonModule,
2083
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2084
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabsModule, imports: [MatTabContent, MatTabLabel, MatTab, MatTabGroup, MatTabNav, MatTabNavPanel, MatTabLink], exports: [BidiModule,
2092
2085
  MatTabContent,
2093
2086
  MatTabLabel,
2094
2087
  MatTab,
@@ -2096,23 +2089,14 @@ class MatTabsModule {
2096
2089
  MatTabNav,
2097
2090
  MatTabNavPanel,
2098
2091
  MatTabLink] });
2099
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabsModule, imports: [MatCommonModule, MatCommonModule] });
2092
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabsModule, imports: [BidiModule] });
2100
2093
  }
2101
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ngImport: i0, type: MatTabsModule, decorators: [{
2094
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatTabsModule, decorators: [{
2102
2095
  type: NgModule,
2103
2096
  args: [{
2104
- imports: [
2105
- MatCommonModule,
2106
- MatTabContent,
2107
- MatTabLabel,
2108
- MatTab,
2109
- MatTabGroup,
2110
- MatTabNav,
2111
- MatTabNavPanel,
2112
- MatTabLink,
2113
- ],
2097
+ imports: [MatTabContent, MatTabLabel, MatTab, MatTabGroup, MatTabNav, MatTabNavPanel, MatTabLink],
2114
2098
  exports: [
2115
- MatCommonModule,
2099
+ BidiModule,
2116
2100
  MatTabContent,
2117
2101
  MatTabLabel,
2118
2102
  MatTab,
@@ -2124,143 +2108,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-rc.1", ng
2124
2108
  }]
2125
2109
  }] });
2126
2110
 
2127
- /**
2128
- * Animations used by the Material tabs.
2129
- * @docs-private
2130
- * @deprecated No longer used, will be removed.
2131
- * @breaking-change 21.0.0.
2132
- */
2133
- const matTabsAnimations = {
2134
- // Represents:
2135
- // trigger('translateTab', [
2136
- // // Transitions to `none` instead of 0, because some browsers might blur the content.
2137
- // state(
2138
- // 'center, void, left-origin-center, right-origin-center',
2139
- // style({transform: 'none', visibility: 'visible'}),
2140
- // ),
2141
- // // If the tab is either on the left or right, we additionally add a `min-height` of 1px
2142
- // // in order to ensure that the element has a height before its state changes. This is
2143
- // // necessary because Chrome does seem to skip the transition in RTL mode if the element does
2144
- // // not have a static height and is not rendered. See related issue: #9465
2145
- // state(
2146
- // 'left',
2147
- // style({
2148
- // transform: 'translate3d(-100%, 0, 0)',
2149
- // minHeight: '1px',
2150
- // // Normally this is redundant since we detach the content from the DOM, but if the user
2151
- // // opted into keeping the content in the DOM, we have to hide it so it isn't focusable.
2152
- // visibility: 'hidden',
2153
- // }),
2154
- // ),
2155
- // state(
2156
- // 'right',
2157
- // style({
2158
- // transform: 'translate3d(100%, 0, 0)',
2159
- // minHeight: '1px',
2160
- // visibility: 'hidden',
2161
- // }),
2162
- // ),
2163
- // transition(
2164
- // '* => left, * => right, left => center, right => center',
2165
- // animate('{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)'),
2166
- // ),
2167
- // transition('void => left-origin-center', [
2168
- // style({transform: 'translate3d(-100%, 0, 0)', visibility: 'hidden'}),
2169
- // animate('{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)'),
2170
- // ]),
2171
- // transition('void => right-origin-center', [
2172
- // style({transform: 'translate3d(100%, 0, 0)', visibility: 'hidden'}),
2173
- // animate('{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)'),
2174
- // ]),
2175
- // ])
2176
- /** Animation translates a tab along the X axis. */
2177
- translateTab: {
2178
- type: 7,
2179
- name: 'translateTab',
2180
- definitions: [
2181
- {
2182
- type: 0,
2183
- name: 'center, void, left-origin-center, right-origin-center',
2184
- styles: {
2185
- type: 6,
2186
- styles: { transform: 'none', visibility: 'visible' },
2187
- offset: null,
2188
- },
2189
- },
2190
- {
2191
- type: 0,
2192
- name: 'left',
2193
- styles: {
2194
- type: 6,
2195
- styles: {
2196
- transform: 'translate3d(-100%, 0, 0)',
2197
- minHeight: '1px',
2198
- visibility: 'hidden',
2199
- },
2200
- offset: null,
2201
- },
2202
- },
2203
- {
2204
- type: 0,
2205
- name: 'right',
2206
- styles: {
2207
- type: 6,
2208
- styles: {
2209
- transform: 'translate3d(100%, 0, 0)',
2210
- minHeight: '1px',
2211
- visibility: 'hidden',
2212
- },
2213
- offset: null,
2214
- },
2215
- },
2216
- {
2217
- type: 1,
2218
- expr: '* => left, * => right, left => center, right => center',
2219
- animation: {
2220
- type: 4,
2221
- styles: null,
2222
- timings: '{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)',
2223
- },
2224
- options: null,
2225
- },
2226
- {
2227
- type: 1,
2228
- expr: 'void => left-origin-center',
2229
- animation: [
2230
- {
2231
- type: 6,
2232
- styles: { transform: 'translate3d(-100%, 0, 0)', visibility: 'hidden' },
2233
- offset: null,
2234
- },
2235
- {
2236
- type: 4,
2237
- styles: null,
2238
- timings: '{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)',
2239
- },
2240
- ],
2241
- options: null,
2242
- },
2243
- {
2244
- type: 1,
2245
- expr: 'void => right-origin-center',
2246
- animation: [
2247
- {
2248
- type: 6,
2249
- styles: { transform: 'translate3d(100%, 0, 0)', visibility: 'hidden' },
2250
- offset: null,
2251
- },
2252
- {
2253
- type: 4,
2254
- styles: null,
2255
- timings: '{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)',
2256
- },
2257
- ],
2258
- options: null,
2259
- },
2260
- ],
2261
- options: {},
2262
- },
2263
- };
2264
-
2265
- export { MAT_TAB, MAT_TABS_CONFIG, MAT_TAB_CONTENT, MAT_TAB_GROUP, MAT_TAB_LABEL, MatInkBar, MatPaginatedTabHeader, MatTab, MatTabBody, MatTabBodyPortal, MatTabChangeEvent, MatTabContent, MatTabGroup, MatTabHeader, MatTabLabel, MatTabLabelWrapper, MatTabLink, MatTabNav, MatTabNavPanel, MatTabsModule, _MAT_INK_BAR_POSITIONER, _MAT_INK_BAR_POSITIONER_FACTORY, matTabsAnimations };
2111
+ export { MAT_TAB, MAT_TABS_CONFIG, MAT_TAB_CONTENT, MAT_TAB_GROUP, MAT_TAB_LABEL, MatInkBar, MatPaginatedTabHeader, MatTab, MatTabBody, MatTabBodyPortal, MatTabChangeEvent, MatTabContent, MatTabGroup, MatTabHeader, MatTabLabel, MatTabLabelWrapper, MatTabLink, MatTabNav, MatTabNavPanel, MatTabsModule, _MAT_INK_BAR_POSITIONER };
2266
2112
  //# sourceMappingURL=tabs.mjs.map