@angular/material-experimental 14.0.0-next.4 → 14.0.0-next.5

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 (241) hide show
  1. package/esm2020/column-resize/column-resize-directives/column-resize-flex.mjs +4 -4
  2. package/esm2020/column-resize/column-resize-directives/column-resize.mjs +4 -4
  3. package/esm2020/column-resize/column-resize-directives/default-enabled-column-resize-flex.mjs +4 -4
  4. package/esm2020/column-resize/column-resize-directives/default-enabled-column-resize.mjs +4 -4
  5. package/esm2020/column-resize/column-resize-module.mjs +13 -13
  6. package/esm2020/column-resize/overlay-handle.mjs +4 -4
  7. package/esm2020/column-resize/resizable-directives/default-enabled-resizable.mjs +4 -4
  8. package/esm2020/column-resize/resizable-directives/resizable.mjs +4 -4
  9. package/esm2020/column-resize/resize-strategy.mjs +4 -4
  10. package/esm2020/mdc-autocomplete/autocomplete-origin.mjs +4 -4
  11. package/esm2020/mdc-autocomplete/autocomplete-trigger.mjs +5 -4
  12. package/esm2020/mdc-autocomplete/autocomplete.mjs +4 -4
  13. package/esm2020/mdc-autocomplete/module.mjs +5 -5
  14. package/esm2020/mdc-button/button-base.mjs +7 -7
  15. package/esm2020/mdc-button/button.mjs +7 -7
  16. package/esm2020/mdc-button/fab.mjs +13 -13
  17. package/esm2020/mdc-button/icon-button.mjs +7 -7
  18. package/esm2020/mdc-button/module.mjs +5 -5
  19. package/esm2020/mdc-card/card.mjs +43 -43
  20. package/esm2020/mdc-card/module.mjs +5 -5
  21. package/esm2020/mdc-checkbox/checkbox.mjs +4 -4
  22. package/esm2020/mdc-checkbox/module.mjs +5 -5
  23. package/esm2020/mdc-chips/chip-action.mjs +4 -4
  24. package/esm2020/mdc-chips/chip-edit-input.mjs +4 -4
  25. package/esm2020/mdc-chips/chip-grid.mjs +5 -8
  26. package/esm2020/mdc-chips/chip-icons.mjs +10 -10
  27. package/esm2020/mdc-chips/chip-input.mjs +4 -4
  28. package/esm2020/mdc-chips/chip-listbox.mjs +6 -9
  29. package/esm2020/mdc-chips/chip-option.mjs +4 -4
  30. package/esm2020/mdc-chips/chip-row.mjs +4 -4
  31. package/esm2020/mdc-chips/chip-set.mjs +11 -11
  32. package/esm2020/mdc-chips/chip.mjs +4 -4
  33. package/esm2020/mdc-chips/module.mjs +5 -5
  34. package/esm2020/mdc-chips/testing/public-api.mjs +2 -1
  35. package/esm2020/mdc-core/option/index.mjs +5 -5
  36. package/esm2020/mdc-core/option/optgroup.mjs +4 -4
  37. package/esm2020/mdc-core/option/option.mjs +4 -4
  38. package/esm2020/mdc-dialog/dialog-container.mjs +4 -4
  39. package/esm2020/mdc-dialog/dialog-content-directives.mjs +13 -13
  40. package/esm2020/mdc-dialog/dialog.mjs +4 -4
  41. package/esm2020/mdc-dialog/module.mjs +5 -5
  42. package/esm2020/mdc-form-field/directives/error.mjs +4 -4
  43. package/esm2020/mdc-form-field/directives/floating-label.mjs +4 -4
  44. package/esm2020/mdc-form-field/directives/hint.mjs +4 -4
  45. package/esm2020/mdc-form-field/directives/label.mjs +4 -4
  46. package/esm2020/mdc-form-field/directives/line-ripple.mjs +4 -4
  47. package/esm2020/mdc-form-field/directives/notched-outline.mjs +4 -4
  48. package/esm2020/mdc-form-field/directives/prefix.mjs +4 -4
  49. package/esm2020/mdc-form-field/directives/suffix.mjs +4 -4
  50. package/esm2020/mdc-form-field/form-field.mjs +4 -4
  51. package/esm2020/mdc-form-field/module.mjs +5 -5
  52. package/esm2020/mdc-input/input.mjs +4 -4
  53. package/esm2020/mdc-input/module.mjs +5 -5
  54. package/esm2020/mdc-list/action-list.mjs +4 -4
  55. package/esm2020/mdc-list/interactive-list-base.mjs +4 -4
  56. package/esm2020/mdc-list/list-base.mjs +7 -7
  57. package/esm2020/mdc-list/list-item-sections.mjs +19 -19
  58. package/esm2020/mdc-list/list-option.mjs +4 -4
  59. package/esm2020/mdc-list/list.mjs +7 -7
  60. package/esm2020/mdc-list/module.mjs +5 -5
  61. package/esm2020/mdc-list/nav-list.mjs +4 -4
  62. package/esm2020/mdc-list/selection-list.mjs +4 -4
  63. package/esm2020/mdc-list/subheader.mjs +4 -4
  64. package/esm2020/mdc-menu/directives.mjs +7 -7
  65. package/esm2020/mdc-menu/menu-item.mjs +4 -4
  66. package/esm2020/mdc-menu/menu.mjs +5 -5
  67. package/esm2020/mdc-menu/module.mjs +5 -5
  68. package/esm2020/mdc-paginator/module.mjs +5 -5
  69. package/esm2020/mdc-paginator/paginator.mjs +5 -5
  70. package/esm2020/mdc-paginator/public-api.mjs +1 -1
  71. package/esm2020/mdc-progress-bar/module.mjs +5 -5
  72. package/esm2020/mdc-progress-bar/progress-bar.mjs +4 -4
  73. package/esm2020/mdc-progress-spinner/module.mjs +5 -5
  74. package/esm2020/mdc-progress-spinner/progress-spinner.mjs +4 -4
  75. package/esm2020/mdc-radio/module.mjs +5 -5
  76. package/esm2020/mdc-radio/radio.mjs +7 -7
  77. package/esm2020/mdc-select/module.mjs +5 -5
  78. package/esm2020/mdc-select/select.mjs +7 -7
  79. package/esm2020/mdc-slide-toggle/module.mjs +5 -5
  80. package/esm2020/mdc-slide-toggle/slide-toggle.mjs +4 -4
  81. package/esm2020/mdc-slider/global-change-and-input-listener.mjs +4 -4
  82. package/esm2020/mdc-slider/module.mjs +5 -5
  83. package/esm2020/mdc-slider/slider.mjs +10 -10
  84. package/esm2020/mdc-snack-bar/module.mjs +5 -5
  85. package/esm2020/mdc-snack-bar/simple-snack-bar.mjs +4 -4
  86. package/esm2020/mdc-snack-bar/snack-bar-container.mjs +4 -4
  87. package/esm2020/mdc-snack-bar/snack-bar-content.mjs +10 -10
  88. package/esm2020/mdc-snack-bar/snack-bar.mjs +4 -4
  89. package/esm2020/mdc-table/cell.mjs +22 -22
  90. package/esm2020/mdc-table/module.mjs +5 -5
  91. package/esm2020/mdc-table/row.mjs +22 -22
  92. package/esm2020/mdc-table/table.mjs +7 -7
  93. package/esm2020/mdc-table/text-column.mjs +4 -4
  94. package/esm2020/mdc-tabs/module.mjs +5 -5
  95. package/esm2020/mdc-tabs/tab-body.mjs +7 -7
  96. package/esm2020/mdc-tabs/tab-content.mjs +4 -4
  97. package/esm2020/mdc-tabs/tab-group.mjs +4 -4
  98. package/esm2020/mdc-tabs/tab-header.mjs +4 -4
  99. package/esm2020/mdc-tabs/tab-label-wrapper.mjs +4 -4
  100. package/esm2020/mdc-tabs/tab-label.mjs +4 -4
  101. package/esm2020/mdc-tabs/tab-nav-bar/tab-nav-bar.mjs +10 -10
  102. package/esm2020/mdc-tabs/tab.mjs +4 -4
  103. package/esm2020/mdc-tooltip/module.mjs +5 -5
  104. package/esm2020/mdc-tooltip/tooltip.mjs +9 -8
  105. package/esm2020/menubar/menubar-item.mjs +4 -4
  106. package/esm2020/menubar/menubar-module.mjs +5 -5
  107. package/esm2020/menubar/menubar.mjs +4 -4
  108. package/esm2020/popover-edit/lens-directives.mjs +10 -10
  109. package/esm2020/popover-edit/popover-edit-module.mjs +5 -5
  110. package/esm2020/popover-edit/table-directives.mjs +13 -13
  111. package/esm2020/selection/row-selection.mjs +4 -4
  112. package/esm2020/selection/select-all.mjs +4 -4
  113. package/esm2020/selection/selection-column.mjs +4 -4
  114. package/esm2020/selection/selection-module.mjs +5 -5
  115. package/esm2020/selection/selection-toggle.mjs +4 -4
  116. package/esm2020/selection/selection.mjs +4 -4
  117. package/esm2020/version.mjs +1 -1
  118. package/fesm2015/column-resize.mjs +36 -36
  119. package/fesm2015/column-resize.mjs.map +1 -1
  120. package/fesm2015/material-experimental.mjs +1 -1
  121. package/fesm2015/material-experimental.mjs.map +1 -1
  122. package/fesm2015/mdc-autocomplete.mjs +14 -13
  123. package/fesm2015/mdc-autocomplete.mjs.map +1 -1
  124. package/fesm2015/mdc-button.mjs +34 -34
  125. package/fesm2015/mdc-button.mjs.map +1 -1
  126. package/fesm2015/mdc-card.mjs +46 -46
  127. package/fesm2015/mdc-card.mjs.map +1 -1
  128. package/fesm2015/mdc-checkbox.mjs +7 -7
  129. package/fesm2015/mdc-checkbox.mjs.map +1 -1
  130. package/fesm2015/mdc-chips/testing.mjs +2 -2
  131. package/fesm2015/mdc-chips/testing.mjs.map +1 -1
  132. package/fesm2015/mdc-chips.mjs +50 -56
  133. package/fesm2015/mdc-chips.mjs.map +1 -1
  134. package/fesm2015/mdc-core.mjs +10 -10
  135. package/fesm2015/mdc-core.mjs.map +1 -1
  136. package/fesm2015/mdc-dialog.mjs +22 -22
  137. package/fesm2015/mdc-dialog.mjs.map +1 -1
  138. package/fesm2015/mdc-form-field.mjs +31 -31
  139. package/fesm2015/mdc-form-field.mjs.map +1 -1
  140. package/fesm2015/mdc-input.mjs +7 -7
  141. package/fesm2015/mdc-input.mjs.map +1 -1
  142. package/fesm2015/mdc-list.mjs +52 -52
  143. package/fesm2015/mdc-list.mjs.map +1 -1
  144. package/fesm2015/mdc-menu.mjs +17 -17
  145. package/fesm2015/mdc-menu.mjs.map +1 -1
  146. package/fesm2015/mdc-paginator.mjs +8 -8
  147. package/fesm2015/mdc-paginator.mjs.map +1 -1
  148. package/fesm2015/mdc-progress-bar.mjs +7 -7
  149. package/fesm2015/mdc-progress-bar.mjs.map +1 -1
  150. package/fesm2015/mdc-progress-spinner.mjs +7 -7
  151. package/fesm2015/mdc-progress-spinner.mjs.map +1 -1
  152. package/fesm2015/mdc-radio.mjs +10 -10
  153. package/fesm2015/mdc-radio.mjs.map +1 -1
  154. package/fesm2015/mdc-select.mjs +10 -10
  155. package/fesm2015/mdc-select.mjs.map +1 -1
  156. package/fesm2015/mdc-slide-toggle.mjs +7 -7
  157. package/fesm2015/mdc-slide-toggle.mjs.map +1 -1
  158. package/fesm2015/mdc-slider.mjs +16 -16
  159. package/fesm2015/mdc-slider.mjs.map +1 -1
  160. package/fesm2015/mdc-snack-bar.mjs +22 -22
  161. package/fesm2015/mdc-snack-bar.mjs.map +1 -1
  162. package/fesm2015/mdc-table.mjs +55 -55
  163. package/fesm2015/mdc-table.mjs.map +1 -1
  164. package/fesm2015/mdc-tabs.mjs +37 -37
  165. package/fesm2015/mdc-tabs.mjs.map +1 -1
  166. package/fesm2015/mdc-tooltip.mjs +12 -11
  167. package/fesm2015/mdc-tooltip.mjs.map +1 -1
  168. package/fesm2015/menubar.mjs +10 -10
  169. package/fesm2015/menubar.mjs.map +1 -1
  170. package/fesm2015/popover-edit.mjs +25 -25
  171. package/fesm2015/popover-edit.mjs.map +1 -1
  172. package/fesm2015/selection.mjs +19 -19
  173. package/fesm2015/selection.mjs.map +1 -1
  174. package/fesm2020/column-resize.mjs +36 -36
  175. package/fesm2020/column-resize.mjs.map +1 -1
  176. package/fesm2020/material-experimental.mjs +1 -1
  177. package/fesm2020/material-experimental.mjs.map +1 -1
  178. package/fesm2020/mdc-autocomplete.mjs +14 -13
  179. package/fesm2020/mdc-autocomplete.mjs.map +1 -1
  180. package/fesm2020/mdc-button.mjs +34 -34
  181. package/fesm2020/mdc-button.mjs.map +1 -1
  182. package/fesm2020/mdc-card.mjs +46 -46
  183. package/fesm2020/mdc-card.mjs.map +1 -1
  184. package/fesm2020/mdc-checkbox.mjs +7 -7
  185. package/fesm2020/mdc-checkbox.mjs.map +1 -1
  186. package/fesm2020/mdc-chips/testing.mjs +1 -1
  187. package/fesm2020/mdc-chips/testing.mjs.map +1 -1
  188. package/fesm2020/mdc-chips.mjs +50 -56
  189. package/fesm2020/mdc-chips.mjs.map +1 -1
  190. package/fesm2020/mdc-core.mjs +10 -10
  191. package/fesm2020/mdc-core.mjs.map +1 -1
  192. package/fesm2020/mdc-dialog.mjs +22 -22
  193. package/fesm2020/mdc-dialog.mjs.map +1 -1
  194. package/fesm2020/mdc-form-field.mjs +31 -31
  195. package/fesm2020/mdc-form-field.mjs.map +1 -1
  196. package/fesm2020/mdc-input.mjs +7 -7
  197. package/fesm2020/mdc-input.mjs.map +1 -1
  198. package/fesm2020/mdc-list.mjs +52 -52
  199. package/fesm2020/mdc-list.mjs.map +1 -1
  200. package/fesm2020/mdc-menu.mjs +17 -17
  201. package/fesm2020/mdc-menu.mjs.map +1 -1
  202. package/fesm2020/mdc-paginator.mjs +8 -8
  203. package/fesm2020/mdc-paginator.mjs.map +1 -1
  204. package/fesm2020/mdc-progress-bar.mjs +7 -7
  205. package/fesm2020/mdc-progress-bar.mjs.map +1 -1
  206. package/fesm2020/mdc-progress-spinner.mjs +7 -7
  207. package/fesm2020/mdc-progress-spinner.mjs.map +1 -1
  208. package/fesm2020/mdc-radio.mjs +10 -10
  209. package/fesm2020/mdc-radio.mjs.map +1 -1
  210. package/fesm2020/mdc-select.mjs +10 -10
  211. package/fesm2020/mdc-select.mjs.map +1 -1
  212. package/fesm2020/mdc-slide-toggle.mjs +7 -7
  213. package/fesm2020/mdc-slide-toggle.mjs.map +1 -1
  214. package/fesm2020/mdc-slider.mjs +16 -16
  215. package/fesm2020/mdc-slider.mjs.map +1 -1
  216. package/fesm2020/mdc-snack-bar.mjs +22 -22
  217. package/fesm2020/mdc-snack-bar.mjs.map +1 -1
  218. package/fesm2020/mdc-table.mjs +55 -55
  219. package/fesm2020/mdc-table.mjs.map +1 -1
  220. package/fesm2020/mdc-tabs.mjs +37 -37
  221. package/fesm2020/mdc-tabs.mjs.map +1 -1
  222. package/fesm2020/mdc-tooltip.mjs +12 -11
  223. package/fesm2020/mdc-tooltip.mjs.map +1 -1
  224. package/fesm2020/menubar.mjs +10 -10
  225. package/fesm2020/menubar.mjs.map +1 -1
  226. package/fesm2020/popover-edit.mjs +25 -25
  227. package/fesm2020/popover-edit.mjs.map +1 -1
  228. package/fesm2020/selection.mjs +19 -19
  229. package/fesm2020/selection.mjs.map +1 -1
  230. package/mdc-button/_button-theme.scss +5 -2
  231. package/mdc-button/_icon-button-theme.scss +2 -1
  232. package/mdc-chips/chip-grid.d.ts +1 -2
  233. package/mdc-chips/chip-listbox.d.ts +1 -2
  234. package/mdc-chips/chip-set.d.ts +3 -1
  235. package/mdc-chips/testing/public-api.d.ts +1 -0
  236. package/mdc-paginator/public-api.d.ts +1 -1
  237. package/mdc-theming/prebuilt/deeppurple-amber.css +1 -1
  238. package/mdc-theming/prebuilt/indigo-pink.css +1 -1
  239. package/mdc-theming/prebuilt/pink-bluegrey.css +1 -1
  240. package/mdc-theming/prebuilt/purple-green.css +1 -1
  241. package/package.json +8 -8
@@ -37,9 +37,9 @@ class MatTabBodyPortal extends MatTabBodyPortal$1 {
37
37
  super(componentFactoryResolver, viewContainerRef, host, _document);
38
38
  }
39
39
  }
40
- MatTabBodyPortal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabBodyPortal, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: forwardRef(() => MatTabBody) }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
41
- MatTabBodyPortal.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatTabBodyPortal, selector: "[matTabBodyHost]", usesInheritance: true, ngImport: i0 });
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabBodyPortal, decorators: [{
40
+ MatTabBodyPortal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabBodyPortal, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: forwardRef(() => MatTabBody) }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
41
+ MatTabBodyPortal.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatTabBodyPortal, selector: "[matTabBodyHost]", usesInheritance: true, ngImport: i0 });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabBodyPortal, decorators: [{
43
43
  type: Directive,
44
44
  args: [{
45
45
  selector: '[matTabBodyHost]',
@@ -62,9 +62,9 @@ class MatTabBody extends _MatTabBodyBase {
62
62
  super(elementRef, dir, changeDetectorRef);
63
63
  }
64
64
  }
65
- MatTabBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabBody, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
66
- MatTabBody.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatTabBody, selector: "mat-tab-body", host: { classAttribute: "mat-mdc-tab-body" }, viewQueries: [{ propertyName: "_portalHost", first: true, predicate: CdkPortalOutlet, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"mat-mdc-tab-body-content\" #content\n [@translateTab]=\"{\n value: _position,\n params: {animationDuration: animationDuration}\n }\"\n (@translateTab.start)=\"_onTranslateTabStarted($event)\"\n (@translateTab.done)=\"_translateTabComplete.next($event)\"\n cdkScrollable>\n <ng-template matTabBodyHost></ng-template>\n</div>\n", styles: [".mat-mdc-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-mdc-tab-body.mat-mdc-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-mdc-tab-group.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body.mat-mdc-tab-body-active{overflow-y:hidden}.mat-mdc-tab-body-content{height:100%;overflow:auto}.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body-content{overflow:hidden}.mat-mdc-tab-body-content[style*=\"visibility: hidden\"]{display:none}\n"], directives: [{ type: MatTabBodyPortal, selector: "[matTabBodyHost]" }], animations: [matTabsAnimations.translateTab], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabBody, decorators: [{
65
+ MatTabBody.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabBody, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
66
+ MatTabBody.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatTabBody, selector: "mat-tab-body", host: { classAttribute: "mat-mdc-tab-body" }, viewQueries: [{ propertyName: "_portalHost", first: true, predicate: CdkPortalOutlet, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"mat-mdc-tab-body-content\" #content\n [@translateTab]=\"{\n value: _position,\n params: {animationDuration: animationDuration}\n }\"\n (@translateTab.start)=\"_onTranslateTabStarted($event)\"\n (@translateTab.done)=\"_translateTabComplete.next($event)\"\n cdkScrollable>\n <ng-template matTabBodyHost></ng-template>\n</div>\n", styles: [".mat-mdc-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-mdc-tab-body.mat-mdc-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-mdc-tab-group.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body.mat-mdc-tab-body-active{overflow-y:hidden}.mat-mdc-tab-body-content{height:100%;overflow:auto}.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body-content{overflow:hidden}.mat-mdc-tab-body-content[style*=\"visibility: hidden\"]{display:none}\n"], directives: [{ type: MatTabBodyPortal, selector: "[matTabBodyHost]" }], animations: [matTabsAnimations.translateTab], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabBody, decorators: [{
68
68
  type: Component,
69
69
  args: [{ selector: 'mat-tab-body', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, animations: [matTabsAnimations.translateTab], host: {
70
70
  'class': 'mat-mdc-tab-body',
@@ -88,9 +88,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
88
88
  /** Decorates the `ng-template` tags and reads out the template from it. */
89
89
  class MatTabContent extends MatTabContent$1 {
90
90
  }
91
- MatTabContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabContent, deps: null, target: i0.ɵɵFactoryTarget.Directive });
92
- MatTabContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatTabContent, selector: "[matTabContent]", usesInheritance: true, ngImport: i0 });
93
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabContent, decorators: [{
91
+ MatTabContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabContent, deps: null, target: i0.ɵɵFactoryTarget.Directive });
92
+ MatTabContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatTabContent, selector: "[matTabContent]", usesInheritance: true, ngImport: i0 });
93
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabContent, decorators: [{
94
94
  type: Directive,
95
95
  args: [{ selector: '[matTabContent]' }]
96
96
  }] });
@@ -105,9 +105,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
105
105
  /** Used to flag tab labels for use with the portal directive */
106
106
  class MatTabLabel extends MatTabLabel$1 {
107
107
  }
108
- MatTabLabel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabLabel, deps: null, target: i0.ɵɵFactoryTarget.Directive });
109
- MatTabLabel.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatTabLabel, selector: "[mat-tab-label], [matTabLabel]", usesInheritance: true, ngImport: i0 });
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabLabel, decorators: [{
108
+ MatTabLabel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabLabel, deps: null, target: i0.ɵɵFactoryTarget.Directive });
109
+ MatTabLabel.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatTabLabel, selector: "[mat-tab-label], [matTabLabel]", usesInheritance: true, ngImport: i0 });
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabLabel, decorators: [{
111
111
  type: Directive,
112
112
  args: [{
113
113
  selector: '[mat-tab-label], [matTabLabel]',
@@ -293,9 +293,9 @@ class MatTabLabelWrapper extends MatTabLabelWrapper$1 {
293
293
  this._foundation.destroy();
294
294
  }
295
295
  }
296
- MatTabLabelWrapper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabLabelWrapper, deps: [{ token: i0.ElementRef }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
297
- MatTabLabelWrapper.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: MatTabLabelWrapper, selector: "[matTabLabelWrapper]", inputs: { disabled: "disabled", fitInkBarToContent: "fitInkBarToContent" }, host: { properties: { "class.mat-mdc-tab-disabled": "disabled", "attr.aria-disabled": "!!disabled" } }, usesInheritance: true, ngImport: i0 });
298
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabLabelWrapper, decorators: [{
296
+ MatTabLabelWrapper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabLabelWrapper, deps: [{ token: i0.ElementRef }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
297
+ MatTabLabelWrapper.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatTabLabelWrapper, selector: "[matTabLabelWrapper]", inputs: { disabled: "disabled", fitInkBarToContent: "fitInkBarToContent" }, host: { properties: { "class.mat-mdc-tab-disabled": "disabled", "attr.aria-disabled": "!!disabled" } }, usesInheritance: true, ngImport: i0 });
298
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabLabelWrapper, decorators: [{
299
299
  type: Directive,
300
300
  args: [{
301
301
  selector: '[matTabLabelWrapper]',
@@ -330,9 +330,9 @@ class MatTab extends MatTab$1 {
330
330
  this._setTemplateLabelInput(value);
331
331
  }
332
332
  }
333
- MatTab.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTab, deps: null, target: i0.ɵɵFactoryTarget.Component });
334
- MatTab.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatTab, selector: "mat-tab", inputs: { disabled: "disabled" }, providers: [{ provide: MAT_TAB, useExisting: MatTab }], queries: [{ propertyName: "_explicitContent", first: true, predicate: MatTabContent, descendants: true, read: TemplateRef, static: true }, { propertyName: "templateLabel", first: true, predicate: MatTabLabel, descendants: true }], exportAs: ["matTab"], usesInheritance: true, ngImport: i0, template: "<!-- Create a template for the content of the <mat-tab> so that we can grab a reference to this\n TemplateRef and use it in a Portal to render the tab content in the appropriate place in the\n tab-group. -->\n<ng-template><ng-content></ng-content></ng-template>\n", changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
335
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTab, decorators: [{
333
+ MatTab.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTab, deps: null, target: i0.ɵɵFactoryTarget.Component });
334
+ MatTab.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatTab, selector: "mat-tab", inputs: { disabled: "disabled" }, providers: [{ provide: MAT_TAB, useExisting: MatTab }], queries: [{ propertyName: "_explicitContent", first: true, predicate: MatTabContent, descendants: true, read: TemplateRef, static: true }, { propertyName: "templateLabel", first: true, predicate: MatTabLabel, descendants: true }], exportAs: ["matTab"], usesInheritance: true, ngImport: i0, template: "<!-- Create a template for the content of the <mat-tab> so that we can grab a reference to this\n TemplateRef and use it in a Portal to render the tab content in the appropriate place in the\n tab-group. -->\n<ng-template><ng-content></ng-content></ng-template>\n", changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
335
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTab, decorators: [{
336
336
  type: Component,
337
337
  args: [{ selector: 'mat-tab', inputs: ['disabled'], changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, exportAs: 'matTab', providers: [{ provide: MAT_TAB, useExisting: MatTab }], template: "<!-- Create a template for the content of the <mat-tab> so that we can grab a reference to this\n TemplateRef and use it in a Portal to render the tab content in the appropriate place in the\n tab-group. -->\n<ng-template><ng-content></ng-content></ng-template>\n" }]
338
338
  }], propDecorators: { _explicitContent: [{
@@ -366,9 +366,9 @@ class MatTabHeader extends _MatTabHeaderBase {
366
366
  super.ngAfterContentInit();
367
367
  }
368
368
  }
369
- MatTabHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabHeader, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
370
- MatTabHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatTabHeader, selector: "mat-tab-header", inputs: { selectedIndex: "selectedIndex" }, outputs: { selectFocusedIndex: "selectFocusedIndex", indexFocused: "indexFocused" }, host: { properties: { "class.mat-mdc-tab-header-pagination-controls-enabled": "_showPaginationControls", "class.mat-mdc-tab-header-rtl": "_getLayoutDirection() == 'rtl'" }, classAttribute: "mat-mdc-tab-header" }, queries: [{ propertyName: "_items", predicate: MatTabLabelWrapper }], viewQueries: [{ propertyName: "_tabListContainer", first: true, predicate: ["tabListContainer"], descendants: true, static: true }, { propertyName: "_tabList", first: true, predicate: ["tabList"], descendants: true, static: true }, { propertyName: "_tabListInner", first: true, predicate: ["tabListInner"], descendants: true, static: true }, { propertyName: "_nextPaginator", first: true, predicate: ["nextPaginator"], descendants: true }, { propertyName: "_previousPaginator", first: true, predicate: ["previousPaginator"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div\n class=\"mat-mdc-tab-label-container\"\n #tabListContainer\n (keydown)=\"_handleKeydown($event)\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\">\n <div\n #tabList\n class=\"mat-mdc-tab-list\"\n role=\"tablist\"\n (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-labels\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n", styles: [".mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-mdc-tab-header-pagination{-webkit-user-select:none;-moz-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:transparent;touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12}.mat-mdc-tab-header-pagination-controls-enabled .mat-mdc-tab-header-pagination{display:flex}.mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after{padding-left:4px}.mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-pagination-after{padding-right:4px}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-mdc-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-mdc-tab-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron{opacity:.4}.mat-mdc-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-mdc-tab-list{transition:none}._mat-animation-noopable span.mdc-tab-indicator__content{transition:none}.mat-mdc-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mat-mdc-tab-labels{display:flex;flex:1 0 auto}[mat-align-tabs=center]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:flex-end}\n"], directives: [{ type: i4.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i5.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
371
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabHeader, decorators: [{
369
+ MatTabHeader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabHeader, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
370
+ MatTabHeader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatTabHeader, selector: "mat-tab-header", inputs: { selectedIndex: "selectedIndex" }, outputs: { selectFocusedIndex: "selectFocusedIndex", indexFocused: "indexFocused" }, host: { properties: { "class.mat-mdc-tab-header-pagination-controls-enabled": "_showPaginationControls", "class.mat-mdc-tab-header-rtl": "_getLayoutDirection() == 'rtl'" }, classAttribute: "mat-mdc-tab-header" }, queries: [{ propertyName: "_items", predicate: MatTabLabelWrapper }], viewQueries: [{ propertyName: "_tabListContainer", first: true, predicate: ["tabListContainer"], descendants: true, static: true }, { propertyName: "_tabList", first: true, predicate: ["tabList"], descendants: true, static: true }, { propertyName: "_tabListInner", first: true, predicate: ["tabListInner"], descendants: true, static: true }, { propertyName: "_nextPaginator", first: true, predicate: ["nextPaginator"], descendants: true }, { propertyName: "_previousPaginator", first: true, predicate: ["previousPaginator"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div\n class=\"mat-mdc-tab-label-container\"\n #tabListContainer\n (keydown)=\"_handleKeydown($event)\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\">\n <div\n #tabList\n class=\"mat-mdc-tab-list\"\n role=\"tablist\"\n (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-labels\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n", styles: [".mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-mdc-tab-header-pagination{-webkit-user-select:none;-moz-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:transparent;touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12}.mat-mdc-tab-header-pagination-controls-enabled .mat-mdc-tab-header-pagination{display:flex}.mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after{padding-left:4px}.mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-pagination-after{padding-right:4px}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-mdc-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-mdc-tab-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron{opacity:.4}.mat-mdc-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-mdc-tab-list{transition:none}._mat-animation-noopable span.mdc-tab-indicator__content{transition:none}.mat-mdc-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mat-mdc-tab-labels{display:flex;flex:1 0 auto}[mat-align-tabs=center]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:flex-end}\n"], directives: [{ type: i4.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i5.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
371
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabHeader, decorators: [{
372
372
  type: Component,
373
373
  args: [{ selector: 'mat-tab-header', inputs: ['selectedIndex'], outputs: ['selectFocusedIndex', 'indexFocused'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, host: {
374
374
  'class': 'mat-mdc-tab-header',
@@ -434,14 +434,14 @@ class MatTabGroup extends _MatTabGroupBase {
434
434
  this._changeDetectorRef.markForCheck();
435
435
  }
436
436
  }
437
- MatTabGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabGroup, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MAT_TABS_CONFIG, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
438
- MatTabGroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatTabGroup, selector: "mat-tab-group", inputs: { color: "color", disableRipple: "disableRipple", fitInkBarToContent: "fitInkBarToContent" }, host: { properties: { "class.mat-mdc-tab-group-dynamic-height": "dynamicHeight", "class.mat-mdc-tab-group-inverted-header": "headerPosition === \"below\"" }, classAttribute: "mat-mdc-tab-group" }, providers: [
437
+ MatTabGroup.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabGroup, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MAT_TABS_CONFIG, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
438
+ MatTabGroup.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatTabGroup, selector: "mat-tab-group", inputs: { color: "color", disableRipple: "disableRipple", fitInkBarToContent: "fitInkBarToContent" }, host: { properties: { "class.mat-mdc-tab-group-dynamic-height": "dynamicHeight", "class.mat-mdc-tab-group-inverted-header": "headerPosition === \"below\"" }, classAttribute: "mat-mdc-tab-group" }, providers: [
439
439
  {
440
440
  provide: MAT_TAB_GROUP,
441
441
  useExisting: MatTabGroup,
442
442
  },
443
443
  ], queries: [{ propertyName: "_allTabs", predicate: MatTab, descendants: true }], viewQueries: [{ propertyName: "_tabBodyWrapper", first: true, predicate: ["tabBodyWrapper"], descendants: true }, { propertyName: "_tabHeader", first: true, predicate: ["tabHeader"], descendants: true }], exportAs: ["matTabGroup"], usesInheritance: true, ngImport: i0, template: "<mat-tab-header #tabHeader\n [selectedIndex]=\"selectedIndex || 0\"\n [disableRipple]=\"disableRipple\"\n (indexFocused)=\"_focusChanged($event)\"\n (selectFocusedIndex)=\"selectedIndex = $event\">\n\n <div class=\"mdc-tab mat-mdc-tab mat-mdc-focus-indicator\"\n #tabNode\n role=\"tab\"\n matTabLabelWrapper\n cdkMonitorElementFocus\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabLabelId(i)\"\n [attr.tabIndex]=\"_getTabIndex(tab, i)\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-setsize]=\"_tabs.length\"\n [attr.aria-controls]=\"_getTabContentId(i)\"\n [attr.aria-selected]=\"selectedIndex === i\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\n [class.mdc-tab--active]=\"selectedIndex === i\"\n [ngClass]=\"tab.labelClass\"\n [disabled]=\"tab.disabled\"\n [fitInkBarToContent]=\"fitInkBarToContent\"\n (click)=\"_handleClick(tab, tabHeader, i)\"\n (cdkFocusChange)=\"_tabFocusChanged($event, i)\">\n <span class=\"mdc-tab__ripple\"></span>\n\n <!-- Needs to be a separate element, because we can't put\n `overflow: hidden` on tab due to the ink bar. -->\n <div\n class=\"mat-mdc-tab-ripple\"\n mat-ripple\n [matRippleTrigger]=\"tabNode\"\n [matRippleDisabled]=\"tab.disabled || disableRipple\"></div>\n\n <span class=\"mdc-tab__content\">\n <span class=\"mdc-tab__text-label\">\n <!-- If there is a label template, use it. -->\n <ng-template [ngIf]=\"tab.templateLabel\" [ngIfElse]=\"tabTextLabel\">\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\n </ng-template>\n\n <!-- If there is not a label template, fall back to the text label. -->\n <ng-template #tabTextLabel>{{tab.textLabel}}</ng-template>\n </span>\n </span>\n </div>\n</mat-tab-header>\n\n<div\n class=\"mat-mdc-tab-body-wrapper\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\"\n #tabBodyWrapper>\n <mat-tab-body role=\"tabpanel\"\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabContentId(i)\"\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === i) ? contentTabIndex : null\"\n [attr.aria-labelledby]=\"_getTabLabelId(i)\"\n [class.mat-mdc-tab-body-active]=\"selectedIndex === i\"\n [ngClass]=\"tab.bodyClass\"\n [content]=\"tab.content!\"\n [position]=\"tab.position!\"\n [origin]=\"tab.origin\"\n [animationDuration]=\"animationDuration\"\n [preserveContent]=\"preserveContent\"\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\">\n </mat-tab-body>\n</div>\n", styles: [".mdc-tab{min-width:90px;padding-right:24px;padding-left:24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;margin:0;padding-top:0;padding-bottom:0;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;z-index:1}.mdc-tab::-moz-focus-inner{padding:0;border:0}.mdc-tab--min-width{flex:0 1 auto}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab__icon{transition:150ms color linear;z-index:2}.mdc-tab--stacked .mdc-tab__content{flex-direction:column;align-items:center;justify-content:center}.mdc-tab--stacked .mdc-tab__text-label{padding-top:6px;padding-bottom:4px}.mdc-tab--active .mdc-tab__text-label,.mdc-tab--active .mdc-tab__icon{transition-delay:100ms}.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label{padding-left:8px;padding-right:0}[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label,.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label[dir=rtl]{padding-left:0;padding-right:8px}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:2px}.mdc-tab-indicator .mdc-tab-indicator__content--icon{height:34px;font-size:34px}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator__content--icon{align-self:center;margin:0 auto}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}.mdc-tab-indicator .mdc-tab-indicator__content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition:150ms opacity linear}.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition-delay:100ms}.mat-mdc-tab-ripple{position:absolute;top:0;left:0;bottom:0;right:0;pointer-events:none}.mat-mdc-tab.mdc-tab{height:48px;flex-grow:0}.mat-mdc-tab .mdc-tab__ripple::before{content:\"\";display:block;position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;pointer-events:none}.mat-mdc-tab .mdc-tab__content{position:relative}.mat-mdc-tab:hover .mdc-tab__ripple::before{opacity:.04}.mat-mdc-tab.cdk-program-focused .mdc-tab__ripple::before,.mat-mdc-tab.cdk-keyboard-focused .mdc-tab__ripple::before{opacity:.12}.cdk-high-contrast-active .mat-mdc-tab.cdk-program-focused,.cdk-high-contrast-active .mat-mdc-tab.cdk-keyboard-focused{outline:dotted 2px;outline-offset:-2px}.cdk-high-contrast-active :host .mat-mdc-tab.cdk-program-focused,.cdk-high-contrast-active :host .mat-mdc-tab.cdk-keyboard-focused{outline:dotted 2px;outline-offset:-2px}.mat-mdc-tab .mat-ripple-element{opacity:.12}.mat-mdc-tab-group[mat-stretch-tabs]>.mat-mdc-tab-header .mat-mdc-tab{flex-grow:1}.mat-mdc-tab-disabled{opacity:.4;pointer-events:none}.mat-mdc-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-mdc-tab-group.mat-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-animation-noopable.mat-mdc-tab-body-wrapper{transition:none;animation:none}\n"], components: [{ type: MatTabHeader, selector: "mat-tab-header", inputs: ["selectedIndex"], outputs: ["selectFocusedIndex", "indexFocused"] }, { type: MatTabBody, selector: "mat-tab-body" }], directives: [{ type: i3$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: MatTabLabelWrapper, selector: "[matTabLabelWrapper]", inputs: ["disabled", "fitInkBarToContent"] }, { type: i6.CdkMonitorFocus, selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]", outputs: ["cdkFocusChange"] }, { type: i3$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i3$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
444
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabGroup, decorators: [{
444
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabGroup, decorators: [{
445
445
  type: Component,
446
446
  args: [{ selector: 'mat-tab-group', exportAs: 'matTabGroup', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, inputs: ['color', 'disableRipple'], providers: [
447
447
  {
@@ -515,9 +515,9 @@ class MatTabNav extends _MatTabNavBase {
515
515
  super.ngAfterContentInit();
516
516
  }
517
517
  }
518
- MatTabNav.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabNav, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }, { token: MAT_TABS_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
519
- MatTabNav.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatTabNav, selector: "[mat-tab-nav-bar]", inputs: { color: "color", fitInkBarToContent: "fitInkBarToContent" }, host: { properties: { "attr.role": "_getRole()", "class.mat-mdc-tab-header-pagination-controls-enabled": "_showPaginationControls", "class.mat-mdc-tab-header-rtl": "_getLayoutDirection() == 'rtl'", "class.mat-primary": "color !== \"warn\" && color !== \"accent\"", "class.mat-accent": "color === \"accent\"", "class.mat-warn": "color === \"warn\"", "class._mat-animation-noopable": "_animationMode === \"NoopAnimations\"" }, classAttribute: "mat-mdc-tab-nav-bar mat-mdc-tab-header" }, queries: [{ propertyName: "_items", predicate: i0.forwardRef(function () { return MatTabLink; }), descendants: true }], viewQueries: [{ propertyName: "_tabListContainer", first: true, predicate: ["tabListContainer"], descendants: true, static: true }, { propertyName: "_tabList", first: true, predicate: ["tabList"], descendants: true, static: true }, { propertyName: "_tabListInner", first: true, predicate: ["tabListInner"], descendants: true, static: true }, { propertyName: "_nextPaginator", first: true, predicate: ["nextPaginator"], descendants: true }, { propertyName: "_previousPaginator", first: true, predicate: ["previousPaginator"], descendants: true }], exportAs: ["matTabNavBar", "matTabNav"], usesInheritance: true, ngImport: i0, template: "<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div class=\"mat-mdc-tab-link-container\" #tabListContainer (keydown)=\"_handleKeydown($event)\">\n <div class=\"mat-mdc-tab-list\" #tabList (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-links\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n", styles: [".mdc-tab{min-width:90px;padding-right:24px;padding-left:24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;margin:0;padding-top:0;padding-bottom:0;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;z-index:1}.mdc-tab::-moz-focus-inner{padding:0;border:0}.mdc-tab--min-width{flex:0 1 auto}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab__icon{transition:150ms color linear;z-index:2}.mdc-tab--stacked .mdc-tab__content{flex-direction:column;align-items:center;justify-content:center}.mdc-tab--stacked .mdc-tab__text-label{padding-top:6px;padding-bottom:4px}.mdc-tab--active .mdc-tab__text-label,.mdc-tab--active .mdc-tab__icon{transition-delay:100ms}.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label{padding-left:8px;padding-right:0}[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label,.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label[dir=rtl]{padding-left:0;padding-right:8px}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:2px}.mdc-tab-indicator .mdc-tab-indicator__content--icon{height:34px;font-size:34px}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator__content--icon{align-self:center;margin:0 auto}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}.mdc-tab-indicator .mdc-tab-indicator__content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition:150ms opacity linear}.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition-delay:100ms}.mat-mdc-tab-ripple{position:absolute;top:0;left:0;bottom:0;right:0;pointer-events:none}.mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-mdc-tab-header-pagination{-webkit-user-select:none;-moz-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:transparent;touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12}.mat-mdc-tab-header-pagination-controls-enabled .mat-mdc-tab-header-pagination{display:flex}.mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after{padding-left:4px}.mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-pagination-after{padding-right:4px}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-mdc-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-mdc-tab-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron{opacity:.4}.mat-mdc-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-mdc-tab-list{transition:none}._mat-animation-noopable span.mdc-tab-indicator__content{transition:none}.mat-mdc-tab-links{display:flex;flex:1 0 auto}[mat-align-tabs=center]>.mat-mdc-tab-link-container .mat-mdc-tab-links{justify-content:center}[mat-align-tabs=end]>.mat-mdc-tab-link-container .mat-mdc-tab-links{justify-content:flex-end}.mat-mdc-tab-link-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}\n"], directives: [{ type: i4.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i5.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
520
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabNav, decorators: [{
518
+ MatTabNav.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabNav, deps: [{ token: i0.ElementRef }, { token: i1.Directionality, optional: true }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i1$1.ViewportRuler }, { token: i3.Platform }, { token: ANIMATION_MODULE_TYPE, optional: true }, { token: MAT_TABS_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
519
+ MatTabNav.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatTabNav, selector: "[mat-tab-nav-bar]", inputs: { color: "color", fitInkBarToContent: "fitInkBarToContent" }, host: { properties: { "attr.role": "_getRole()", "class.mat-mdc-tab-header-pagination-controls-enabled": "_showPaginationControls", "class.mat-mdc-tab-header-rtl": "_getLayoutDirection() == 'rtl'", "class.mat-primary": "color !== \"warn\" && color !== \"accent\"", "class.mat-accent": "color === \"accent\"", "class.mat-warn": "color === \"warn\"", "class._mat-animation-noopable": "_animationMode === \"NoopAnimations\"" }, classAttribute: "mat-mdc-tab-nav-bar mat-mdc-tab-header" }, queries: [{ propertyName: "_items", predicate: i0.forwardRef(function () { return MatTabLink; }), descendants: true }], viewQueries: [{ propertyName: "_tabListContainer", first: true, predicate: ["tabListContainer"], descendants: true, static: true }, { propertyName: "_tabList", first: true, predicate: ["tabList"], descendants: true, static: true }, { propertyName: "_tabListInner", first: true, predicate: ["tabListInner"], descendants: true, static: true }, { propertyName: "_nextPaginator", first: true, predicate: ["nextPaginator"], descendants: true }, { propertyName: "_previousPaginator", first: true, predicate: ["previousPaginator"], descendants: true }], exportAs: ["matTabNavBar", "matTabNav"], usesInheritance: true, ngImport: i0, template: "<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div class=\"mat-mdc-tab-link-container\" #tabListContainer (keydown)=\"_handleKeydown($event)\">\n <div class=\"mat-mdc-tab-list\" #tabList (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-links\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n", styles: [".mdc-tab{min-width:90px;padding-right:24px;padding-left:24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;margin:0;padding-top:0;padding-bottom:0;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;z-index:1}.mdc-tab::-moz-focus-inner{padding:0;border:0}.mdc-tab--min-width{flex:0 1 auto}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab__icon{transition:150ms color linear;z-index:2}.mdc-tab--stacked .mdc-tab__content{flex-direction:column;align-items:center;justify-content:center}.mdc-tab--stacked .mdc-tab__text-label{padding-top:6px;padding-bottom:4px}.mdc-tab--active .mdc-tab__text-label,.mdc-tab--active .mdc-tab__icon{transition-delay:100ms}.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label{padding-left:8px;padding-right:0}[dir=rtl] .mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label,.mdc-tab:not(.mdc-tab--stacked) .mdc-tab__icon+.mdc-tab__text-label[dir=rtl]{padding-left:0;padding-right:8px}.mdc-tab-indicator .mdc-tab-indicator__content--underline{border-top-width:2px}.mdc-tab-indicator .mdc-tab-indicator__content--icon{height:34px;font-size:34px}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator__content--icon{align-self:center;margin:0 auto}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}.mdc-tab-indicator .mdc-tab-indicator__content{transition:250ms transform cubic-bezier(0.4, 0, 0.2, 1)}.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition:150ms opacity linear}.mdc-tab-indicator--active.mdc-tab-indicator--fade .mdc-tab-indicator__content{transition-delay:100ms}.mat-mdc-tab-ripple{position:absolute;top:0;left:0;bottom:0;right:0;pointer-events:none}.mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-mdc-tab-header-pagination{-webkit-user-select:none;-moz-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:transparent;touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12}.mat-mdc-tab-header-pagination-controls-enabled .mat-mdc-tab-header-pagination{display:flex}.mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after{padding-left:4px}.mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-pagination-after{padding-right:4px}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-mdc-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-mdc-tab-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron{opacity:.4}.mat-mdc-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-mdc-tab-list{transition:none}._mat-animation-noopable span.mdc-tab-indicator__content{transition:none}.mat-mdc-tab-links{display:flex;flex:1 0 auto}[mat-align-tabs=center]>.mat-mdc-tab-link-container .mat-mdc-tab-links{justify-content:center}[mat-align-tabs=end]>.mat-mdc-tab-link-container .mat-mdc-tab-links{justify-content:flex-end}.mat-mdc-tab-link-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}\n"], directives: [{ type: i4.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { type: i5.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
520
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabNav, decorators: [{
521
521
  type: Component,
522
522
  args: [{ selector: '[mat-tab-nav-bar]', exportAs: 'matTabNavBar, matTabNav', inputs: ['color'], host: {
523
523
  '[attr.role]': '_getRole()',
@@ -587,9 +587,9 @@ class MatTabLink extends _MatTabLinkBase {
587
587
  this._foundation.destroy();
588
588
  }
589
589
  }
590
- MatTabLink.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabLink, deps: [{ token: MatTabNav }, { token: i0.ElementRef }, { token: MAT_RIPPLE_GLOBAL_OPTIONS, optional: true }, { token: 'tabindex', attribute: true }, { token: i6.FocusMonitor }, { token: DOCUMENT }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
591
- MatTabLink.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatTabLink, selector: "[mat-tab-link], [matTabLink]", inputs: { disabled: "disabled", disableRipple: "disableRipple", tabIndex: "tabIndex" }, host: { listeners: { "focus": "_handleFocus()", "keydown": "_handleKeydown($event)" }, properties: { "attr.aria-controls": "_getAriaControls()", "attr.aria-current": "_getAriaCurrent()", "attr.aria-disabled": "disabled", "attr.aria-selected": "_getAriaSelected()", "attr.id": "id", "attr.tabIndex": "_getTabIndex()", "attr.role": "_getRole()", "class.mat-mdc-tab-disabled": "disabled", "class.mdc-tab--active": "active" }, classAttribute: "mdc-tab mat-mdc-tab-link mat-mdc-focus-indicator" }, exportAs: ["matTabLink"], usesInheritance: true, ngImport: i0, template: "<span class=\"mdc-tab__ripple\"></span>\n\n<div\n class=\"mat-mdc-tab-ripple\"\n mat-ripple\n [matRippleTrigger]=\"elementRef.nativeElement\"\n [matRippleDisabled]=\"rippleDisabled\"></div>\n\n<span class=\"mdc-tab__content\">\n <span class=\"mdc-tab__text-label\">\n <ng-content></ng-content>\n </span>\n</span>\n\n", styles: [".mat-mdc-tab-link.mdc-tab{height:48px;flex-grow:0}.mat-mdc-tab-link .mdc-tab__ripple::before{content:\"\";display:block;position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;pointer-events:none}.mat-mdc-tab-link .mdc-tab__content{position:relative}.mat-mdc-tab-link:hover .mdc-tab__ripple::before{opacity:.04}.mat-mdc-tab-link.cdk-program-focused .mdc-tab__ripple::before,.mat-mdc-tab-link.cdk-keyboard-focused .mdc-tab__ripple::before{opacity:.12}.cdk-high-contrast-active .mat-mdc-tab-link.cdk-program-focused,.cdk-high-contrast-active .mat-mdc-tab-link.cdk-keyboard-focused{outline:dotted 2px;outline-offset:-2px}.cdk-high-contrast-active :host .mat-mdc-tab-link.cdk-program-focused,.cdk-high-contrast-active :host .mat-mdc-tab-link.cdk-keyboard-focused{outline:dotted 2px;outline-offset:-2px}.mat-mdc-tab-link .mat-ripple-element{opacity:.12}.mat-mdc-tab-link.mat-mdc-tab-disabled{pointer-events:none;opacity:.4}.mat-mdc-tab-header[mat-stretch-tabs] .mat-mdc-tab-link{flex-grow:1}@media(max-width: 599px){.mat-mdc-tab-link{min-width:72px}}\n"], directives: [{ type: i4.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
592
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabLink, decorators: [{
590
+ MatTabLink.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabLink, deps: [{ token: MatTabNav }, { token: i0.ElementRef }, { token: MAT_RIPPLE_GLOBAL_OPTIONS, optional: true }, { token: 'tabindex', attribute: true }, { token: i6.FocusMonitor }, { token: DOCUMENT }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
591
+ MatTabLink.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatTabLink, selector: "[mat-tab-link], [matTabLink]", inputs: { disabled: "disabled", disableRipple: "disableRipple", tabIndex: "tabIndex" }, host: { listeners: { "focus": "_handleFocus()", "keydown": "_handleKeydown($event)" }, properties: { "attr.aria-controls": "_getAriaControls()", "attr.aria-current": "_getAriaCurrent()", "attr.aria-disabled": "disabled", "attr.aria-selected": "_getAriaSelected()", "attr.id": "id", "attr.tabIndex": "_getTabIndex()", "attr.role": "_getRole()", "class.mat-mdc-tab-disabled": "disabled", "class.mdc-tab--active": "active" }, classAttribute: "mdc-tab mat-mdc-tab-link mat-mdc-focus-indicator" }, exportAs: ["matTabLink"], usesInheritance: true, ngImport: i0, template: "<span class=\"mdc-tab__ripple\"></span>\n\n<div\n class=\"mat-mdc-tab-ripple\"\n mat-ripple\n [matRippleTrigger]=\"elementRef.nativeElement\"\n [matRippleDisabled]=\"rippleDisabled\"></div>\n\n<span class=\"mdc-tab__content\">\n <span class=\"mdc-tab__text-label\">\n <ng-content></ng-content>\n </span>\n</span>\n\n", styles: [".mat-mdc-tab-link.mdc-tab{height:48px;flex-grow:0}.mat-mdc-tab-link .mdc-tab__ripple::before{content:\"\";display:block;position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;pointer-events:none}.mat-mdc-tab-link .mdc-tab__content{position:relative}.mat-mdc-tab-link:hover .mdc-tab__ripple::before{opacity:.04}.mat-mdc-tab-link.cdk-program-focused .mdc-tab__ripple::before,.mat-mdc-tab-link.cdk-keyboard-focused .mdc-tab__ripple::before{opacity:.12}.cdk-high-contrast-active .mat-mdc-tab-link.cdk-program-focused,.cdk-high-contrast-active .mat-mdc-tab-link.cdk-keyboard-focused{outline:dotted 2px;outline-offset:-2px}.cdk-high-contrast-active :host .mat-mdc-tab-link.cdk-program-focused,.cdk-high-contrast-active :host .mat-mdc-tab-link.cdk-keyboard-focused{outline:dotted 2px;outline-offset:-2px}.mat-mdc-tab-link .mat-ripple-element{opacity:.12}.mat-mdc-tab-link.mat-mdc-tab-disabled{pointer-events:none;opacity:.4}.mat-mdc-tab-header[mat-stretch-tabs] .mat-mdc-tab-link{flex-grow:1}@media(max-width: 599px){.mat-mdc-tab-link{min-width:72px}}\n"], directives: [{ type: i4.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
592
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabLink, decorators: [{
593
593
  type: Component,
594
594
  args: [{ selector: '[mat-tab-link], [matTabLink]', exportAs: 'matTabLink', inputs: ['disabled', 'disableRipple', 'tabIndex'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
595
595
  'class': 'mdc-tab mat-mdc-tab-link mat-mdc-focus-indicator',
@@ -635,9 +635,9 @@ class MatTabNavPanel {
635
635
  this.id = `mat-tab-nav-panel-${nextUniqueId++}`;
636
636
  }
637
637
  }
638
- MatTabNavPanel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabNavPanel, deps: [], target: i0.ɵɵFactoryTarget.Component });
639
- MatTabNavPanel.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: MatTabNavPanel, selector: "mat-tab-nav-panel", inputs: { id: "id" }, host: { attributes: { "role": "tabpanel" }, properties: { "attr.aria-labelledby": "_activeTabId", "attr.id": "id" }, classAttribute: "mat-mdc-tab-nav-panel" }, exportAs: ["matTabNavPanel"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
640
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabNavPanel, decorators: [{
638
+ MatTabNavPanel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabNavPanel, deps: [], target: i0.ɵɵFactoryTarget.Component });
639
+ MatTabNavPanel.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "14.0.0-next.4", type: MatTabNavPanel, selector: "mat-tab-nav-panel", inputs: { id: "id" }, host: { attributes: { "role": "tabpanel" }, properties: { "attr.aria-labelledby": "_activeTabId", "attr.id": "id" }, classAttribute: "mat-mdc-tab-nav-panel" }, exportAs: ["matTabNavPanel"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
640
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabNavPanel, decorators: [{
641
641
  type: Component,
642
642
  args: [{
643
643
  selector: 'mat-tab-nav-panel',
@@ -665,8 +665,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
665
665
  */
666
666
  class MatTabsModule {
667
667
  }
668
- MatTabsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
669
- MatTabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabsModule, declarations: [MatTabContent,
668
+ MatTabsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
669
+ MatTabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabsModule, declarations: [MatTabContent,
670
670
  MatTabLabel,
671
671
  MatTab,
672
672
  MatTabGroup,
@@ -690,7 +690,7 @@ MatTabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
690
690
  MatTabNav,
691
691
  MatTabNavPanel,
692
692
  MatTabLink] });
693
- MatTabsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabsModule, imports: [[
693
+ MatTabsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabsModule, imports: [[
694
694
  CommonModule,
695
695
  MatCommonModule,
696
696
  PortalModule,
@@ -698,7 +698,7 @@ MatTabsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
698
698
  ObserversModule,
699
699
  A11yModule,
700
700
  ], MatCommonModule] });
701
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatTabsModule, decorators: [{
701
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.4", ngImport: i0, type: MatTabsModule, decorators: [{
702
702
  type: NgModule,
703
703
  args: [{
704
704
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"mdc-tabs.mjs","sources":["../../../../../../src/material-experimental/mdc-tabs/tab-body.ts","../../../../../../src/material-experimental/mdc-tabs/tab-body.html","../../../../../../src/material-experimental/mdc-tabs/tab-content.ts","../../../../../../src/material-experimental/mdc-tabs/tab-label.ts","../../../../../../src/material-experimental/mdc-tabs/ink-bar.ts","../../../../../../src/material-experimental/mdc-tabs/tab-label-wrapper.ts","../../../../../../src/material-experimental/mdc-tabs/tab.ts","../../../../../../src/material-experimental/mdc-tabs/tab.html","../../../../../../src/material-experimental/mdc-tabs/tab-header.ts","../../../../../../src/material-experimental/mdc-tabs/tab-header.html","../../../../../../src/material-experimental/mdc-tabs/tab-group.ts","../../../../../../src/material-experimental/mdc-tabs/tab-group.html","../../../../../../src/material-experimental/mdc-tabs/tab-nav-bar/tab-nav-bar.ts","../../../../../../src/material-experimental/mdc-tabs/tab-nav-bar/tab-nav-bar.html","../../../../../../src/material-experimental/mdc-tabs/tab-nav-bar/tab-link.html","../../../../../../src/material-experimental/mdc-tabs/module.ts","../../../../../../src/material-experimental/mdc-tabs/public-api.ts","../../../../../../src/material-experimental/mdc-tabs/index.ts","../../../../../../src/material-experimental/mdc-tabs/mdc-tabs_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n Component,\n Directive,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n ViewChild,\n ComponentFactoryResolver,\n ViewContainerRef,\n Inject,\n forwardRef,\n ChangeDetectorRef,\n Optional,\n ElementRef,\n} from '@angular/core';\nimport {\n MatTabBodyPortal as BaseMatTabBodyPortal,\n matTabsAnimations,\n _MatTabBodyBase,\n} from '@angular/material/tabs';\nimport {CdkPortalOutlet} from '@angular/cdk/portal';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {DOCUMENT} from '@angular/common';\n\n/**\n * The portal host directive for the contents of the tab.\n * @docs-private\n */\n@Directive({\n selector: '[matTabBodyHost]',\n})\nexport class MatTabBodyPortal extends BaseMatTabBodyPortal {\n constructor(\n componentFactoryResolver: ComponentFactoryResolver,\n viewContainerRef: ViewContainerRef,\n @Inject(forwardRef(() => MatTabBody)) host: MatTabBody,\n @Inject(DOCUMENT) _document: any,\n ) {\n super(componentFactoryResolver, viewContainerRef, host, _document);\n }\n}\n\n/**\n * Wrapper for the contents of a tab.\n * @docs-private\n */\n@Component({\n selector: 'mat-tab-body',\n templateUrl: 'tab-body.html',\n styleUrls: ['tab-body.css'],\n encapsulation: ViewEncapsulation.None,\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n animations: [matTabsAnimations.translateTab],\n host: {\n 'class': 'mat-mdc-tab-body',\n },\n})\nexport class MatTabBody extends _MatTabBodyBase {\n @ViewChild(CdkPortalOutlet) _portalHost: CdkPortalOutlet;\n\n constructor(\n elementRef: ElementRef<HTMLElement>,\n @Optional() dir: Directionality,\n changeDetectorRef: ChangeDetectorRef,\n ) {\n super(elementRef, dir, changeDetectorRef);\n }\n}\n","<div class=\"mat-mdc-tab-body-content\" #content\n [@translateTab]=\"{\n value: _position,\n params: {animationDuration: animationDuration}\n }\"\n (@translateTab.start)=\"_onTranslateTabStarted($event)\"\n (@translateTab.done)=\"_translateTabComplete.next($event)\"\n cdkScrollable>\n <ng-template matTabBodyHost></ng-template>\n</div>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive} from '@angular/core';\nimport {MatTabContent as BaseMatTabContent} from '@angular/material/tabs';\n\n/** Decorates the `ng-template` tags and reads out the template from it. */\n@Directive({selector: '[matTabContent]'})\nexport class MatTabContent extends BaseMatTabContent {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive} from '@angular/core';\nimport {MatTabLabel as BaseMatTabLabel} from '@angular/material/tabs';\n\n/** Used to flag tab labels for use with the portal directive */\n@Directive({\n selector: '[mat-tab-label], [matTabLabel]',\n})\nexport class MatTabLabel extends BaseMatTabLabel {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {ElementRef, QueryList} from '@angular/core';\nimport {\n MDCSlidingTabIndicatorFoundation,\n MDCTabIndicatorAdapter,\n MDCTabIndicatorFoundation,\n} from '@material/tab-indicator';\n\n/**\n * Item inside a tab header relative to which the ink bar can be aligned.\n * @docs-private\n */\nexport interface MatInkBarItem {\n _foundation: MatInkBarFoundation;\n elementRef: ElementRef<HTMLElement>;\n}\n\n/**\n * Abstraction around the MDC tab indicator that acts as the tab header's ink bar.\n * @docs-private\n */\nexport class MatInkBar {\n /** Item to which the ink bar is aligned currently. */\n private _currentItem: MatInkBarItem | undefined;\n\n constructor(private _items: QueryList<MatInkBarItem>) {}\n\n /** Hides the ink bar. */\n hide() {\n this._items.forEach(item => item._foundation.deactivate());\n }\n\n /** Aligns the ink bar to a DOM node. */\n alignToElement(element: HTMLElement) {\n const correspondingItem = this._items.find(item => item.elementRef.nativeElement === element);\n const currentItem = this._currentItem;\n\n if (currentItem) {\n currentItem._foundation.deactivate();\n }\n\n if (correspondingItem) {\n const clientRect = currentItem\n ? currentItem._foundation.computeContentClientRect()\n : undefined;\n\n // The ink bar won't animate unless we give it the `ClientRect` of the previous item.\n correspondingItem._foundation.activate(clientRect);\n this._currentItem = correspondingItem;\n }\n }\n}\n\n/**\n * Implementation of MDC's sliding tab indicator (ink bar) foundation.\n * @docs-private\n */\nexport class MatInkBarFoundation {\n private _destroyed: boolean;\n private _foundation: MDCTabIndicatorFoundation;\n private _inkBarElement: HTMLElement;\n private _inkBarContentElement: HTMLElement;\n private _fitToContent = false;\n private _adapter: MDCTabIndicatorAdapter = {\n addClass: className => {\n if (!this._destroyed) {\n this._hostElement.classList.add(className);\n }\n },\n removeClass: className => {\n if (!this._destroyed) {\n this._hostElement.classList.remove(className);\n }\n },\n setContentStyleProperty: (propName, value) => {\n this._inkBarContentElement.style.setProperty(propName, value);\n },\n computeContentClientRect: () => {\n // `getBoundingClientRect` isn't available on the server.\n return this._destroyed || !this._inkBarContentElement.getBoundingClientRect\n ? ({\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n x: 0,\n y: 0,\n } as ClientRect)\n : this._inkBarContentElement.getBoundingClientRect();\n },\n };\n\n constructor(private _hostElement: HTMLElement, private _document: Document) {\n this._foundation = new MDCSlidingTabIndicatorFoundation(this._adapter);\n }\n\n /** Aligns the ink bar to the current item. */\n activate(clientRect?: ClientRect) {\n this._foundation.activate(clientRect);\n }\n\n /** Removes the ink bar from the current item. */\n deactivate() {\n this._foundation.deactivate();\n }\n\n /** Gets the ClientRect of the ink bar. */\n computeContentClientRect() {\n return this._foundation.computeContentClientRect();\n }\n\n /** Initializes the foundation. */\n init() {\n this._createInkBarElement();\n this._foundation.init();\n }\n\n /** Destroys the foundation. */\n destroy() {\n this._inkBarElement.remove();\n this._hostElement = this._inkBarElement = this._inkBarContentElement = null!;\n this._foundation.destroy();\n this._destroyed = true;\n }\n\n /**\n * Sets whether the ink bar should be appended to the content, which will cause the ink bar\n * to match the width of the content rather than the tab host element.\n */\n setFitToContent(fitToContent: boolean) {\n if (this._fitToContent !== fitToContent) {\n this._fitToContent = fitToContent;\n if (this._inkBarElement) {\n this._appendInkBarElement();\n }\n }\n }\n\n /**\n * Gets whether the ink bar should be appended to the content, which will cause the ink bar\n * to match the width of the content rather than the tab host element.\n */\n getFitToContent(): boolean {\n return this._fitToContent;\n }\n\n /** Creates and appends the ink bar element. */\n private _createInkBarElement() {\n this._inkBarElement = this._document.createElement('span');\n this._inkBarContentElement = this._document.createElement('span');\n\n this._inkBarElement.className = 'mdc-tab-indicator';\n this._inkBarContentElement.className =\n 'mdc-tab-indicator__content' + ' mdc-tab-indicator__content--underline';\n\n this._inkBarElement.appendChild(this._inkBarContentElement);\n this._appendInkBarElement();\n }\n\n /**\n * Appends the ink bar to the tab host element or content, depending on whether\n * the ink bar should fit to content.\n */\n private _appendInkBarElement() {\n if (!this._inkBarElement && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('Ink bar element has not been created and cannot be appended');\n }\n\n const parentElement = this._fitToContent\n ? this._hostElement.querySelector('.mdc-tab__content')\n : this._hostElement;\n\n if (!parentElement && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('Missing element to host the ink bar');\n }\n\n parentElement!.appendChild(this._inkBarElement);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive, ElementRef, Inject, Input, OnDestroy, OnInit} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {MatTabLabelWrapper as BaseMatTabLabelWrapper} from '@angular/material/tabs';\nimport {MatInkBarFoundation, MatInkBarItem} from './ink-bar';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\n\n/**\n * Used in the `mat-tab-group` view to display tab labels.\n * @docs-private\n */\n@Directive({\n selector: '[matTabLabelWrapper]',\n inputs: ['disabled'],\n host: {\n '[class.mat-mdc-tab-disabled]': 'disabled',\n '[attr.aria-disabled]': '!!disabled',\n },\n})\nexport class MatTabLabelWrapper\n extends BaseMatTabLabelWrapper\n implements MatInkBarItem, OnInit, OnDestroy\n{\n private _document: Document;\n\n _foundation: MatInkBarFoundation;\n\n /** Whether the ink bar should fit its width to the size of the tab label content. */\n @Input()\n get fitInkBarToContent(): boolean {\n return this._foundation.getFitToContent();\n }\n set fitInkBarToContent(v: BooleanInput) {\n this._foundation.setFitToContent(coerceBooleanProperty(v));\n }\n\n constructor(elementRef: ElementRef, @Inject(DOCUMENT) _document: any) {\n super(elementRef);\n this._document = _document;\n this._foundation = new MatInkBarFoundation(elementRef.nativeElement, this._document);\n }\n\n ngOnInit() {\n this._foundation.init();\n }\n\n ngOnDestroy() {\n this._foundation.destroy();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n TemplateRef,\n ContentChild,\n} from '@angular/core';\nimport {MatTab as BaseMatTab, MAT_TAB} from '@angular/material/tabs';\nimport {MatTabContent} from './tab-content';\nimport {MatTabLabel} from './tab-label';\n\n@Component({\n selector: 'mat-tab',\n\n // Note that usually we'd go through a bit more trouble and set up another class so that\n // the inlined template of `MatTab` isn't duplicated, however the template is small enough\n // that creating the extra class will generate more code than just duplicating the template.\n templateUrl: 'tab.html',\n inputs: ['disabled'],\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'matTab',\n providers: [{provide: MAT_TAB, useExisting: MatTab}],\n})\nexport class MatTab extends BaseMatTab {\n /**\n * Template provided in the tab content that will be used if present, used to enable lazy-loading\n */\n @ContentChild(MatTabContent, {read: TemplateRef, static: true})\n override _explicitContent: TemplateRef<any>;\n\n /** Content for the tab label given by `<ng-template mat-tab-label>`. */\n @ContentChild(MatTabLabel)\n override get templateLabel(): MatTabLabel {\n return this._templateLabel;\n }\n override set templateLabel(value: MatTabLabel) {\n this._setTemplateLabelInput(value);\n }\n}\n","<!-- 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","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n ContentChildren,\n ViewChild,\n ElementRef,\n QueryList,\n AfterContentInit,\n Optional,\n ChangeDetectorRef,\n NgZone,\n Inject,\n} from '@angular/core';\nimport {_MatTabHeaderBase} from '@angular/material/tabs';\nimport {ViewportRuler} from '@angular/cdk/scrolling';\nimport {Platform} from '@angular/cdk/platform';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {MatTabLabelWrapper} from './tab-label-wrapper';\nimport {MatInkBar} from './ink-bar';\n\n/**\n * The header of the tab group which displays a list of all the tabs in the tab group. Includes\n * an ink bar that follows the currently selected tab. When the tabs list's width exceeds the\n * width of the header container, then arrows will be displayed to allow the user to scroll\n * left and right across the header.\n * @docs-private\n */\n@Component({\n selector: 'mat-tab-header',\n templateUrl: 'tab-header.html',\n styleUrls: ['tab-header.css'],\n inputs: ['selectedIndex'],\n outputs: ['selectFocusedIndex', 'indexFocused'],\n encapsulation: ViewEncapsulation.None,\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n host: {\n 'class': 'mat-mdc-tab-header',\n '[class.mat-mdc-tab-header-pagination-controls-enabled]': '_showPaginationControls',\n '[class.mat-mdc-tab-header-rtl]': \"_getLayoutDirection() == 'rtl'\",\n },\n})\nexport class MatTabHeader extends _MatTabHeaderBase implements AfterContentInit {\n @ContentChildren(MatTabLabelWrapper, {descendants: false}) _items: QueryList<MatTabLabelWrapper>;\n @ViewChild('tabListContainer', {static: true}) _tabListContainer: ElementRef;\n @ViewChild('tabList', {static: true}) _tabList: ElementRef;\n @ViewChild('tabListInner', {static: true}) _tabListInner: ElementRef;\n @ViewChild('nextPaginator') _nextPaginator: ElementRef<HTMLElement>;\n @ViewChild('previousPaginator') _previousPaginator: ElementRef<HTMLElement>;\n _inkBar: MatInkBar;\n\n constructor(\n elementRef: ElementRef,\n changeDetectorRef: ChangeDetectorRef,\n viewportRuler: ViewportRuler,\n @Optional() dir: Directionality,\n ngZone: NgZone,\n platform: Platform,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode?: string,\n ) {\n super(elementRef, changeDetectorRef, viewportRuler, dir, ngZone, platform, animationMode);\n }\n\n override ngAfterContentInit() {\n this._inkBar = new MatInkBar(this._items);\n super.ngAfterContentInit();\n }\n}\n","<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div\n class=\"mat-mdc-tab-label-container\"\n #tabListContainer\n (keydown)=\"_handleKeydown($event)\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\">\n <div\n #tabList\n class=\"mat-mdc-tab-list\"\n role=\"tablist\"\n (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-labels\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n Inject,\n Input,\n Optional,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n _MatTabGroupBase,\n MAT_TAB_GROUP,\n MAT_TABS_CONFIG,\n MatTabsConfig,\n} from '@angular/material/tabs';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {MatTab} from './tab';\nimport {MatTabHeader} from './tab-header';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\n\n/**\n * Material design tab-group component. Supports basic tab pairs (label + content) and includes\n * animated ink-bar, keyboard navigation, and screen reader.\n * See: https://material.io/design/components/tabs.html\n */\n@Component({\n selector: 'mat-tab-group',\n exportAs: 'matTabGroup',\n templateUrl: 'tab-group.html',\n styleUrls: ['tab-group.css'],\n encapsulation: ViewEncapsulation.None,\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n inputs: ['color', 'disableRipple'],\n providers: [\n {\n provide: MAT_TAB_GROUP,\n useExisting: MatTabGroup,\n },\n ],\n host: {\n 'class': 'mat-mdc-tab-group',\n '[class.mat-mdc-tab-group-dynamic-height]': 'dynamicHeight',\n '[class.mat-mdc-tab-group-inverted-header]': 'headerPosition === \"below\"',\n },\n})\nexport class MatTabGroup extends _MatTabGroupBase {\n @ContentChildren(MatTab, {descendants: true}) _allTabs: QueryList<MatTab>;\n @ViewChild('tabBodyWrapper') _tabBodyWrapper: ElementRef;\n @ViewChild('tabHeader') _tabHeader: MatTabHeader;\n\n /** Whether the ink bar should fit its width to the size of the tab label content. */\n @Input()\n get fitInkBarToContent(): boolean {\n return this._fitInkBarToContent;\n }\n set fitInkBarToContent(v: BooleanInput) {\n this._fitInkBarToContent = coerceBooleanProperty(v);\n this._changeDetectorRef.markForCheck();\n }\n private _fitInkBarToContent = false;\n\n constructor(\n elementRef: ElementRef,\n changeDetectorRef: ChangeDetectorRef,\n @Inject(MAT_TABS_CONFIG) @Optional() defaultConfig?: MatTabsConfig,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode?: string,\n ) {\n super(elementRef, changeDetectorRef, defaultConfig, animationMode);\n this.fitInkBarToContent =\n defaultConfig && defaultConfig.fitInkBarToContent != null\n ? defaultConfig.fitInkBarToContent\n : false;\n }\n}\n","<mat-tab-header #tabHeader\n [selectedIndex]=\"selectedIndex || 0\"\n [disableRipple]=\"disableRipple\"\n (indexFocused)=\"_focusChanged($event)\"\n (selectFocusedIndex)=\"selectedIndex = $event\">\n\n <div class=\"mdc-tab mat-mdc-tab mat-mdc-focus-indicator\"\n #tabNode\n role=\"tab\"\n matTabLabelWrapper\n cdkMonitorElementFocus\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabLabelId(i)\"\n [attr.tabIndex]=\"_getTabIndex(tab, i)\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-setsize]=\"_tabs.length\"\n [attr.aria-controls]=\"_getTabContentId(i)\"\n [attr.aria-selected]=\"selectedIndex === i\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\n [class.mdc-tab--active]=\"selectedIndex === i\"\n [ngClass]=\"tab.labelClass\"\n [disabled]=\"tab.disabled\"\n [fitInkBarToContent]=\"fitInkBarToContent\"\n (click)=\"_handleClick(tab, tabHeader, i)\"\n (cdkFocusChange)=\"_tabFocusChanged($event, i)\">\n <span class=\"mdc-tab__ripple\"></span>\n\n <!-- Needs to be a separate element, because we can't put\n `overflow: hidden` on tab due to the ink bar. -->\n <div\n class=\"mat-mdc-tab-ripple\"\n mat-ripple\n [matRippleTrigger]=\"tabNode\"\n [matRippleDisabled]=\"tab.disabled || disableRipple\"></div>\n\n <span class=\"mdc-tab__content\">\n <span class=\"mdc-tab__text-label\">\n <!-- If there is a label template, use it. -->\n <ng-template [ngIf]=\"tab.templateLabel\" [ngIfElse]=\"tabTextLabel\">\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\n </ng-template>\n\n <!-- If there is not a label template, fall back to the text label. -->\n <ng-template #tabTextLabel>{{tab.textLabel}}</ng-template>\n </span>\n </span>\n </div>\n</mat-tab-header>\n\n<div\n class=\"mat-mdc-tab-body-wrapper\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\"\n #tabBodyWrapper>\n <mat-tab-body role=\"tabpanel\"\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabContentId(i)\"\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === i) ? contentTabIndex : null\"\n [attr.aria-labelledby]=\"_getTabLabelId(i)\"\n [class.mat-mdc-tab-body-active]=\"selectedIndex === i\"\n [ngClass]=\"tab.bodyClass\"\n [content]=\"tab.content!\"\n [position]=\"tab.position!\"\n [origin]=\"tab.origin\"\n [animationDuration]=\"animationDuration\"\n [preserveContent]=\"preserveContent\"\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\">\n </mat-tab-body>\n</div>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n Optional,\n Inject,\n Attribute,\n OnDestroy,\n AfterContentInit,\n NgZone,\n ChangeDetectorRef,\n OnInit,\n Input,\n} from '@angular/core';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {\n MAT_RIPPLE_GLOBAL_OPTIONS,\n RippleGlobalOptions,\n} from '@angular/material-experimental/mdc-core';\nimport {FocusMonitor} from '@angular/cdk/a11y';\nimport {\n _MatTabNavBase,\n _MatTabLinkBase,\n MAT_TABS_CONFIG,\n MatTabsConfig,\n} from '@angular/material/tabs';\nimport {DOCUMENT} from '@angular/common';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {ViewportRuler} from '@angular/cdk/scrolling';\nimport {Platform} from '@angular/cdk/platform';\nimport {MatInkBar, MatInkBarItem, MatInkBarFoundation} from '../ink-bar';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {BehaviorSubject, Subject} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\n/**\n * Navigation component matching the styles of the tab group header.\n * Provides anchored navigation with animated ink bar.\n */\n@Component({\n selector: '[mat-tab-nav-bar]',\n exportAs: 'matTabNavBar, matTabNav',\n inputs: ['color'],\n templateUrl: 'tab-nav-bar.html',\n styleUrls: ['tab-nav-bar.css'],\n host: {\n '[attr.role]': '_getRole()',\n 'class': 'mat-mdc-tab-nav-bar mat-mdc-tab-header',\n '[class.mat-mdc-tab-header-pagination-controls-enabled]': '_showPaginationControls',\n '[class.mat-mdc-tab-header-rtl]': \"_getLayoutDirection() == 'rtl'\",\n '[class.mat-primary]': 'color !== \"warn\" && color !== \"accent\"',\n '[class.mat-accent]': 'color === \"accent\"',\n '[class.mat-warn]': 'color === \"warn\"',\n '[class._mat-animation-noopable]': '_animationMode === \"NoopAnimations\"',\n },\n encapsulation: ViewEncapsulation.None,\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n})\nexport class MatTabNav extends _MatTabNavBase implements AfterContentInit {\n /** Whether the ink bar should fit its width to the size of the tab label content. */\n @Input()\n get fitInkBarToContent(): boolean {\n return this._fitInkBarToContent.value;\n }\n set fitInkBarToContent(v: BooleanInput) {\n this._fitInkBarToContent.next(coerceBooleanProperty(v));\n this._changeDetectorRef.markForCheck();\n }\n _fitInkBarToContent = new BehaviorSubject(false);\n\n @ContentChildren(forwardRef(() => MatTabLink), {descendants: true}) _items: QueryList<MatTabLink>;\n @ViewChild('tabListContainer', {static: true}) _tabListContainer: ElementRef;\n @ViewChild('tabList', {static: true}) _tabList: ElementRef;\n @ViewChild('tabListInner', {static: true}) _tabListInner: ElementRef;\n @ViewChild('nextPaginator') _nextPaginator: ElementRef<HTMLElement>;\n @ViewChild('previousPaginator') _previousPaginator: ElementRef<HTMLElement>;\n _inkBar: MatInkBar;\n\n constructor(\n elementRef: ElementRef,\n @Optional() dir: Directionality,\n ngZone: NgZone,\n changeDetectorRef: ChangeDetectorRef,\n viewportRuler: ViewportRuler,\n platform: Platform,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode?: string,\n @Optional() @Inject(MAT_TABS_CONFIG) defaultConfig?: MatTabsConfig,\n ) {\n super(elementRef, dir, ngZone, changeDetectorRef, viewportRuler, platform, animationMode);\n this.disablePagination =\n defaultConfig && defaultConfig.disablePagination != null\n ? defaultConfig.disablePagination\n : false;\n this.fitInkBarToContent =\n defaultConfig && defaultConfig.fitInkBarToContent != null\n ? defaultConfig.fitInkBarToContent\n : false;\n }\n\n override ngAfterContentInit() {\n this._inkBar = new MatInkBar(this._items);\n super.ngAfterContentInit();\n }\n}\n\n/**\n * Link inside of a `mat-tab-nav-bar`.\n */\n@Component({\n selector: '[mat-tab-link], [matTabLink]',\n exportAs: 'matTabLink',\n inputs: ['disabled', 'disableRipple', 'tabIndex'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n templateUrl: 'tab-link.html',\n styleUrls: ['tab-link.css'],\n host: {\n 'class': 'mdc-tab mat-mdc-tab-link mat-mdc-focus-indicator',\n '[attr.aria-controls]': '_getAriaControls()',\n '[attr.aria-current]': '_getAriaCurrent()',\n '[attr.aria-disabled]': 'disabled',\n '[attr.aria-selected]': '_getAriaSelected()',\n '[attr.id]': 'id',\n '[attr.tabIndex]': '_getTabIndex()',\n '[attr.role]': '_getRole()',\n '[class.mat-mdc-tab-disabled]': 'disabled',\n '[class.mdc-tab--active]': 'active',\n '(focus)': '_handleFocus()',\n '(keydown)': '_handleKeydown($event)',\n },\n})\nexport class MatTabLink extends _MatTabLinkBase implements MatInkBarItem, OnInit, OnDestroy {\n _foundation = new MatInkBarFoundation(this.elementRef.nativeElement, this._document);\n\n private readonly _destroyed = new Subject<void>();\n\n constructor(\n tabNavBar: MatTabNav,\n elementRef: ElementRef,\n @Optional() @Inject(MAT_RIPPLE_GLOBAL_OPTIONS) globalRippleOptions: RippleGlobalOptions | null,\n @Attribute('tabindex') tabIndex: string,\n focusMonitor: FocusMonitor,\n @Inject(DOCUMENT) private _document: any,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode?: string,\n ) {\n super(tabNavBar, elementRef, globalRippleOptions, tabIndex, focusMonitor, animationMode);\n\n tabNavBar._fitInkBarToContent.pipe(takeUntil(this._destroyed)).subscribe(fitInkBarToContent => {\n this._foundation.setFitToContent(fitInkBarToContent);\n });\n }\n\n ngOnInit() {\n this._foundation.init();\n }\n\n override ngOnDestroy() {\n this._destroyed.next();\n this._destroyed.complete();\n super.ngOnDestroy();\n this._foundation.destroy();\n }\n}\n\n// Increasing integer for generating unique ids for tab nav components.\nlet nextUniqueId = 0;\n\n/**\n * Tab panel component associated with MatTabNav.\n */\n@Component({\n selector: 'mat-tab-nav-panel',\n exportAs: 'matTabNavPanel',\n template: '<ng-content></ng-content>',\n host: {\n '[attr.aria-labelledby]': '_activeTabId',\n '[attr.id]': 'id',\n 'class': 'mat-mdc-tab-nav-panel',\n 'role': 'tabpanel',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatTabNavPanel {\n /** Unique id for the tab panel. */\n @Input() id = `mat-tab-nav-panel-${nextUniqueId++}`;\n\n /** Id of the active tab in the nav bar. */\n _activeTabId?: string;\n}\n","<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div class=\"mat-mdc-tab-link-container\" #tabListContainer (keydown)=\"_handleKeydown($event)\">\n <div class=\"mat-mdc-tab-list\" #tabList (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-links\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n","<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","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule, MatRippleModule} from '@angular/material-experimental/mdc-core';\nimport {PortalModule} from '@angular/cdk/portal';\nimport {ObserversModule} from '@angular/cdk/observers';\nimport {A11yModule} from '@angular/cdk/a11y';\nimport {MatTabBody, MatTabBodyPortal} from './tab-body';\nimport {MatTabContent} from './tab-content';\nimport {MatTabLabel} from './tab-label';\nimport {MatTabLabelWrapper} from './tab-label-wrapper';\nimport {MatTab} from './tab';\nimport {MatTabHeader} from './tab-header';\nimport {MatTabGroup} from './tab-group';\nimport {MatTabNav, MatTabNavPanel, MatTabLink} from './tab-nav-bar/tab-nav-bar';\n\n@NgModule({\n imports: [\n CommonModule,\n MatCommonModule,\n PortalModule,\n MatRippleModule,\n ObserversModule,\n A11yModule,\n ],\n exports: [\n MatCommonModule,\n MatTabContent,\n MatTabLabel,\n MatTab,\n MatTabGroup,\n MatTabNav,\n MatTabNavPanel,\n MatTabLink,\n ],\n declarations: [\n MatTabContent,\n MatTabLabel,\n MatTab,\n MatTabGroup,\n MatTabNav,\n MatTabNavPanel,\n MatTabLink,\n\n // Private directives, should not be exported.\n MatTabBody,\n MatTabBodyPortal,\n MatTabLabelWrapper,\n MatTabHeader,\n ],\n})\nexport class MatTabsModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './module';\nexport {MatTabBodyPortal, MatTabBody} from './tab-body';\nexport {MatTabContent} from './tab-content';\nexport {MatTabLabel} from './tab-label';\nexport {MatTabLabelWrapper} from './tab-label-wrapper';\nexport {MatTab} from './tab';\nexport {MatInkBar} from './ink-bar';\nexport {MatTabHeader} from './tab-header';\nexport {MatTabGroup} from './tab-group';\nexport {MatTabNav, MatTabNavPanel, MatTabLink} from './tab-nav-bar/tab-nav-bar';\n\nexport {\n MatTabBodyPositionState,\n MatTabBodyOriginState,\n matTabsAnimations,\n _MatInkBarPositioner,\n _MAT_INK_BAR_POSITIONER,\n MatTabChangeEvent,\n MatTabHeaderPosition,\n MatTabsConfig,\n MAT_TABS_CONFIG,\n MAT_TAB_GROUP,\n MAT_TAB,\n ScrollDirection,\n} from '@angular/material/tabs';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["BaseMatTabBodyPortal","BaseMatTabContent","BaseMatTabLabel","BaseMatTabLabelWrapper","BaseMatTab"],"mappings":"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"}
1
+ {"version":3,"file":"mdc-tabs.mjs","sources":["../../../../../../src/material-experimental/mdc-tabs/tab-body.ts","../../../../../../src/material-experimental/mdc-tabs/tab-body.html","../../../../../../src/material-experimental/mdc-tabs/tab-content.ts","../../../../../../src/material-experimental/mdc-tabs/tab-label.ts","../../../../../../src/material-experimental/mdc-tabs/ink-bar.ts","../../../../../../src/material-experimental/mdc-tabs/tab-label-wrapper.ts","../../../../../../src/material-experimental/mdc-tabs/tab.ts","../../../../../../src/material-experimental/mdc-tabs/tab.html","../../../../../../src/material-experimental/mdc-tabs/tab-header.ts","../../../../../../src/material-experimental/mdc-tabs/tab-header.html","../../../../../../src/material-experimental/mdc-tabs/tab-group.ts","../../../../../../src/material-experimental/mdc-tabs/tab-group.html","../../../../../../src/material-experimental/mdc-tabs/tab-nav-bar/tab-nav-bar.ts","../../../../../../src/material-experimental/mdc-tabs/tab-nav-bar/tab-nav-bar.html","../../../../../../src/material-experimental/mdc-tabs/tab-nav-bar/tab-link.html","../../../../../../src/material-experimental/mdc-tabs/module.ts","../../../../../../src/material-experimental/mdc-tabs/public-api.ts","../../../../../../src/material-experimental/mdc-tabs/index.ts","../../../../../../src/material-experimental/mdc-tabs/mdc-tabs_public_index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n Component,\n Directive,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n ViewChild,\n ComponentFactoryResolver,\n ViewContainerRef,\n Inject,\n forwardRef,\n ChangeDetectorRef,\n Optional,\n ElementRef,\n} from '@angular/core';\nimport {\n MatTabBodyPortal as BaseMatTabBodyPortal,\n matTabsAnimations,\n _MatTabBodyBase,\n} from '@angular/material/tabs';\nimport {CdkPortalOutlet} from '@angular/cdk/portal';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {DOCUMENT} from '@angular/common';\n\n/**\n * The portal host directive for the contents of the tab.\n * @docs-private\n */\n@Directive({\n selector: '[matTabBodyHost]',\n})\nexport class MatTabBodyPortal extends BaseMatTabBodyPortal {\n constructor(\n componentFactoryResolver: ComponentFactoryResolver,\n viewContainerRef: ViewContainerRef,\n @Inject(forwardRef(() => MatTabBody)) host: MatTabBody,\n @Inject(DOCUMENT) _document: any,\n ) {\n super(componentFactoryResolver, viewContainerRef, host, _document);\n }\n}\n\n/**\n * Wrapper for the contents of a tab.\n * @docs-private\n */\n@Component({\n selector: 'mat-tab-body',\n templateUrl: 'tab-body.html',\n styleUrls: ['tab-body.css'],\n encapsulation: ViewEncapsulation.None,\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n animations: [matTabsAnimations.translateTab],\n host: {\n 'class': 'mat-mdc-tab-body',\n },\n})\nexport class MatTabBody extends _MatTabBodyBase {\n @ViewChild(CdkPortalOutlet) _portalHost: CdkPortalOutlet;\n\n constructor(\n elementRef: ElementRef<HTMLElement>,\n @Optional() dir: Directionality,\n changeDetectorRef: ChangeDetectorRef,\n ) {\n super(elementRef, dir, changeDetectorRef);\n }\n}\n","<div class=\"mat-mdc-tab-body-content\" #content\n [@translateTab]=\"{\n value: _position,\n params: {animationDuration: animationDuration}\n }\"\n (@translateTab.start)=\"_onTranslateTabStarted($event)\"\n (@translateTab.done)=\"_translateTabComplete.next($event)\"\n cdkScrollable>\n <ng-template matTabBodyHost></ng-template>\n</div>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive} from '@angular/core';\nimport {MatTabContent as BaseMatTabContent} from '@angular/material/tabs';\n\n/** Decorates the `ng-template` tags and reads out the template from it. */\n@Directive({selector: '[matTabContent]'})\nexport class MatTabContent extends BaseMatTabContent {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive} from '@angular/core';\nimport {MatTabLabel as BaseMatTabLabel} from '@angular/material/tabs';\n\n/** Used to flag tab labels for use with the portal directive */\n@Directive({\n selector: '[mat-tab-label], [matTabLabel]',\n})\nexport class MatTabLabel extends BaseMatTabLabel {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {ElementRef, QueryList} from '@angular/core';\nimport {\n MDCSlidingTabIndicatorFoundation,\n MDCTabIndicatorAdapter,\n MDCTabIndicatorFoundation,\n} from '@material/tab-indicator';\n\n/**\n * Item inside a tab header relative to which the ink bar can be aligned.\n * @docs-private\n */\nexport interface MatInkBarItem {\n _foundation: MatInkBarFoundation;\n elementRef: ElementRef<HTMLElement>;\n}\n\n/**\n * Abstraction around the MDC tab indicator that acts as the tab header's ink bar.\n * @docs-private\n */\nexport class MatInkBar {\n /** Item to which the ink bar is aligned currently. */\n private _currentItem: MatInkBarItem | undefined;\n\n constructor(private _items: QueryList<MatInkBarItem>) {}\n\n /** Hides the ink bar. */\n hide() {\n this._items.forEach(item => item._foundation.deactivate());\n }\n\n /** Aligns the ink bar to a DOM node. */\n alignToElement(element: HTMLElement) {\n const correspondingItem = this._items.find(item => item.elementRef.nativeElement === element);\n const currentItem = this._currentItem;\n\n if (currentItem) {\n currentItem._foundation.deactivate();\n }\n\n if (correspondingItem) {\n const clientRect = currentItem\n ? currentItem._foundation.computeContentClientRect()\n : undefined;\n\n // The ink bar won't animate unless we give it the `ClientRect` of the previous item.\n correspondingItem._foundation.activate(clientRect);\n this._currentItem = correspondingItem;\n }\n }\n}\n\n/**\n * Implementation of MDC's sliding tab indicator (ink bar) foundation.\n * @docs-private\n */\nexport class MatInkBarFoundation {\n private _destroyed: boolean;\n private _foundation: MDCTabIndicatorFoundation;\n private _inkBarElement: HTMLElement;\n private _inkBarContentElement: HTMLElement;\n private _fitToContent = false;\n private _adapter: MDCTabIndicatorAdapter = {\n addClass: className => {\n if (!this._destroyed) {\n this._hostElement.classList.add(className);\n }\n },\n removeClass: className => {\n if (!this._destroyed) {\n this._hostElement.classList.remove(className);\n }\n },\n setContentStyleProperty: (propName, value) => {\n this._inkBarContentElement.style.setProperty(propName, value);\n },\n computeContentClientRect: () => {\n // `getBoundingClientRect` isn't available on the server.\n return this._destroyed || !this._inkBarContentElement.getBoundingClientRect\n ? ({\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n x: 0,\n y: 0,\n } as ClientRect)\n : this._inkBarContentElement.getBoundingClientRect();\n },\n };\n\n constructor(private _hostElement: HTMLElement, private _document: Document) {\n this._foundation = new MDCSlidingTabIndicatorFoundation(this._adapter);\n }\n\n /** Aligns the ink bar to the current item. */\n activate(clientRect?: ClientRect) {\n this._foundation.activate(clientRect);\n }\n\n /** Removes the ink bar from the current item. */\n deactivate() {\n this._foundation.deactivate();\n }\n\n /** Gets the ClientRect of the ink bar. */\n computeContentClientRect() {\n return this._foundation.computeContentClientRect();\n }\n\n /** Initializes the foundation. */\n init() {\n this._createInkBarElement();\n this._foundation.init();\n }\n\n /** Destroys the foundation. */\n destroy() {\n this._inkBarElement.remove();\n this._hostElement = this._inkBarElement = this._inkBarContentElement = null!;\n this._foundation.destroy();\n this._destroyed = true;\n }\n\n /**\n * Sets whether the ink bar should be appended to the content, which will cause the ink bar\n * to match the width of the content rather than the tab host element.\n */\n setFitToContent(fitToContent: boolean) {\n if (this._fitToContent !== fitToContent) {\n this._fitToContent = fitToContent;\n if (this._inkBarElement) {\n this._appendInkBarElement();\n }\n }\n }\n\n /**\n * Gets whether the ink bar should be appended to the content, which will cause the ink bar\n * to match the width of the content rather than the tab host element.\n */\n getFitToContent(): boolean {\n return this._fitToContent;\n }\n\n /** Creates and appends the ink bar element. */\n private _createInkBarElement() {\n this._inkBarElement = this._document.createElement('span');\n this._inkBarContentElement = this._document.createElement('span');\n\n this._inkBarElement.className = 'mdc-tab-indicator';\n this._inkBarContentElement.className =\n 'mdc-tab-indicator__content' + ' mdc-tab-indicator__content--underline';\n\n this._inkBarElement.appendChild(this._inkBarContentElement);\n this._appendInkBarElement();\n }\n\n /**\n * Appends the ink bar to the tab host element or content, depending on whether\n * the ink bar should fit to content.\n */\n private _appendInkBarElement() {\n if (!this._inkBarElement && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('Ink bar element has not been created and cannot be appended');\n }\n\n const parentElement = this._fitToContent\n ? this._hostElement.querySelector('.mdc-tab__content')\n : this._hostElement;\n\n if (!parentElement && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('Missing element to host the ink bar');\n }\n\n parentElement!.appendChild(this._inkBarElement);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive, ElementRef, Inject, Input, OnDestroy, OnInit} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {MatTabLabelWrapper as BaseMatTabLabelWrapper} from '@angular/material/tabs';\nimport {MatInkBarFoundation, MatInkBarItem} from './ink-bar';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\n\n/**\n * Used in the `mat-tab-group` view to display tab labels.\n * @docs-private\n */\n@Directive({\n selector: '[matTabLabelWrapper]',\n inputs: ['disabled'],\n host: {\n '[class.mat-mdc-tab-disabled]': 'disabled',\n '[attr.aria-disabled]': '!!disabled',\n },\n})\nexport class MatTabLabelWrapper\n extends BaseMatTabLabelWrapper\n implements MatInkBarItem, OnInit, OnDestroy\n{\n private _document: Document;\n\n _foundation: MatInkBarFoundation;\n\n /** Whether the ink bar should fit its width to the size of the tab label content. */\n @Input()\n get fitInkBarToContent(): boolean {\n return this._foundation.getFitToContent();\n }\n set fitInkBarToContent(v: BooleanInput) {\n this._foundation.setFitToContent(coerceBooleanProperty(v));\n }\n\n constructor(elementRef: ElementRef, @Inject(DOCUMENT) _document: any) {\n super(elementRef);\n this._document = _document;\n this._foundation = new MatInkBarFoundation(elementRef.nativeElement, this._document);\n }\n\n ngOnInit() {\n this._foundation.init();\n }\n\n ngOnDestroy() {\n this._foundation.destroy();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n TemplateRef,\n ContentChild,\n} from '@angular/core';\nimport {MatTab as BaseMatTab, MAT_TAB} from '@angular/material/tabs';\nimport {MatTabContent} from './tab-content';\nimport {MatTabLabel} from './tab-label';\n\n@Component({\n selector: 'mat-tab',\n\n // Note that usually we'd go through a bit more trouble and set up another class so that\n // the inlined template of `MatTab` isn't duplicated, however the template is small enough\n // that creating the extra class will generate more code than just duplicating the template.\n templateUrl: 'tab.html',\n inputs: ['disabled'],\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'matTab',\n providers: [{provide: MAT_TAB, useExisting: MatTab}],\n})\nexport class MatTab extends BaseMatTab {\n /**\n * Template provided in the tab content that will be used if present, used to enable lazy-loading\n */\n @ContentChild(MatTabContent, {read: TemplateRef, static: true})\n override _explicitContent: TemplateRef<any>;\n\n /** Content for the tab label given by `<ng-template mat-tab-label>`. */\n @ContentChild(MatTabLabel)\n override get templateLabel(): MatTabLabel {\n return this._templateLabel;\n }\n override set templateLabel(value: MatTabLabel) {\n this._setTemplateLabelInput(value);\n }\n}\n","<!-- 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","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n ContentChildren,\n ViewChild,\n ElementRef,\n QueryList,\n AfterContentInit,\n Optional,\n ChangeDetectorRef,\n NgZone,\n Inject,\n} from '@angular/core';\nimport {_MatTabHeaderBase} from '@angular/material/tabs';\nimport {ViewportRuler} from '@angular/cdk/scrolling';\nimport {Platform} from '@angular/cdk/platform';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {MatTabLabelWrapper} from './tab-label-wrapper';\nimport {MatInkBar} from './ink-bar';\n\n/**\n * The header of the tab group which displays a list of all the tabs in the tab group. Includes\n * an ink bar that follows the currently selected tab. When the tabs list's width exceeds the\n * width of the header container, then arrows will be displayed to allow the user to scroll\n * left and right across the header.\n * @docs-private\n */\n@Component({\n selector: 'mat-tab-header',\n templateUrl: 'tab-header.html',\n styleUrls: ['tab-header.css'],\n inputs: ['selectedIndex'],\n outputs: ['selectFocusedIndex', 'indexFocused'],\n encapsulation: ViewEncapsulation.None,\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n host: {\n 'class': 'mat-mdc-tab-header',\n '[class.mat-mdc-tab-header-pagination-controls-enabled]': '_showPaginationControls',\n '[class.mat-mdc-tab-header-rtl]': \"_getLayoutDirection() == 'rtl'\",\n },\n})\nexport class MatTabHeader extends _MatTabHeaderBase implements AfterContentInit {\n @ContentChildren(MatTabLabelWrapper, {descendants: false}) _items: QueryList<MatTabLabelWrapper>;\n @ViewChild('tabListContainer', {static: true}) _tabListContainer: ElementRef;\n @ViewChild('tabList', {static: true}) _tabList: ElementRef;\n @ViewChild('tabListInner', {static: true}) _tabListInner: ElementRef;\n @ViewChild('nextPaginator') _nextPaginator: ElementRef<HTMLElement>;\n @ViewChild('previousPaginator') _previousPaginator: ElementRef<HTMLElement>;\n _inkBar: MatInkBar;\n\n constructor(\n elementRef: ElementRef,\n changeDetectorRef: ChangeDetectorRef,\n viewportRuler: ViewportRuler,\n @Optional() dir: Directionality,\n ngZone: NgZone,\n platform: Platform,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode?: string,\n ) {\n super(elementRef, changeDetectorRef, viewportRuler, dir, ngZone, platform, animationMode);\n }\n\n override ngAfterContentInit() {\n this._inkBar = new MatInkBar(this._items);\n super.ngAfterContentInit();\n }\n}\n","<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div\n class=\"mat-mdc-tab-label-container\"\n #tabListContainer\n (keydown)=\"_handleKeydown($event)\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\">\n <div\n #tabList\n class=\"mat-mdc-tab-list\"\n role=\"tablist\"\n (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-labels\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n Inject,\n Input,\n Optional,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {\n _MatTabGroupBase,\n MAT_TAB_GROUP,\n MAT_TABS_CONFIG,\n MatTabsConfig,\n} from '@angular/material/tabs';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {MatTab} from './tab';\nimport {MatTabHeader} from './tab-header';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\n\n/**\n * Material design tab-group component. Supports basic tab pairs (label + content) and includes\n * animated ink-bar, keyboard navigation, and screen reader.\n * See: https://material.io/design/components/tabs.html\n */\n@Component({\n selector: 'mat-tab-group',\n exportAs: 'matTabGroup',\n templateUrl: 'tab-group.html',\n styleUrls: ['tab-group.css'],\n encapsulation: ViewEncapsulation.None,\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n inputs: ['color', 'disableRipple'],\n providers: [\n {\n provide: MAT_TAB_GROUP,\n useExisting: MatTabGroup,\n },\n ],\n host: {\n 'class': 'mat-mdc-tab-group',\n '[class.mat-mdc-tab-group-dynamic-height]': 'dynamicHeight',\n '[class.mat-mdc-tab-group-inverted-header]': 'headerPosition === \"below\"',\n },\n})\nexport class MatTabGroup extends _MatTabGroupBase {\n @ContentChildren(MatTab, {descendants: true}) _allTabs: QueryList<MatTab>;\n @ViewChild('tabBodyWrapper') _tabBodyWrapper: ElementRef;\n @ViewChild('tabHeader') _tabHeader: MatTabHeader;\n\n /** Whether the ink bar should fit its width to the size of the tab label content. */\n @Input()\n get fitInkBarToContent(): boolean {\n return this._fitInkBarToContent;\n }\n set fitInkBarToContent(v: BooleanInput) {\n this._fitInkBarToContent = coerceBooleanProperty(v);\n this._changeDetectorRef.markForCheck();\n }\n private _fitInkBarToContent = false;\n\n constructor(\n elementRef: ElementRef,\n changeDetectorRef: ChangeDetectorRef,\n @Inject(MAT_TABS_CONFIG) @Optional() defaultConfig?: MatTabsConfig,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode?: string,\n ) {\n super(elementRef, changeDetectorRef, defaultConfig, animationMode);\n this.fitInkBarToContent =\n defaultConfig && defaultConfig.fitInkBarToContent != null\n ? defaultConfig.fitInkBarToContent\n : false;\n }\n}\n","<mat-tab-header #tabHeader\n [selectedIndex]=\"selectedIndex || 0\"\n [disableRipple]=\"disableRipple\"\n (indexFocused)=\"_focusChanged($event)\"\n (selectFocusedIndex)=\"selectedIndex = $event\">\n\n <div class=\"mdc-tab mat-mdc-tab mat-mdc-focus-indicator\"\n #tabNode\n role=\"tab\"\n matTabLabelWrapper\n cdkMonitorElementFocus\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabLabelId(i)\"\n [attr.tabIndex]=\"_getTabIndex(tab, i)\"\n [attr.aria-posinset]=\"i + 1\"\n [attr.aria-setsize]=\"_tabs.length\"\n [attr.aria-controls]=\"_getTabContentId(i)\"\n [attr.aria-selected]=\"selectedIndex === i\"\n [attr.aria-label]=\"tab.ariaLabel || null\"\n [attr.aria-labelledby]=\"(!tab.ariaLabel && tab.ariaLabelledby) ? tab.ariaLabelledby : null\"\n [class.mdc-tab--active]=\"selectedIndex === i\"\n [ngClass]=\"tab.labelClass\"\n [disabled]=\"tab.disabled\"\n [fitInkBarToContent]=\"fitInkBarToContent\"\n (click)=\"_handleClick(tab, tabHeader, i)\"\n (cdkFocusChange)=\"_tabFocusChanged($event, i)\">\n <span class=\"mdc-tab__ripple\"></span>\n\n <!-- Needs to be a separate element, because we can't put\n `overflow: hidden` on tab due to the ink bar. -->\n <div\n class=\"mat-mdc-tab-ripple\"\n mat-ripple\n [matRippleTrigger]=\"tabNode\"\n [matRippleDisabled]=\"tab.disabled || disableRipple\"></div>\n\n <span class=\"mdc-tab__content\">\n <span class=\"mdc-tab__text-label\">\n <!-- If there is a label template, use it. -->\n <ng-template [ngIf]=\"tab.templateLabel\" [ngIfElse]=\"tabTextLabel\">\n <ng-template [cdkPortalOutlet]=\"tab.templateLabel\"></ng-template>\n </ng-template>\n\n <!-- If there is not a label template, fall back to the text label. -->\n <ng-template #tabTextLabel>{{tab.textLabel}}</ng-template>\n </span>\n </span>\n </div>\n</mat-tab-header>\n\n<div\n class=\"mat-mdc-tab-body-wrapper\"\n [class._mat-animation-noopable]=\"_animationMode === 'NoopAnimations'\"\n #tabBodyWrapper>\n <mat-tab-body role=\"tabpanel\"\n *ngFor=\"let tab of _tabs; let i = index\"\n [id]=\"_getTabContentId(i)\"\n [attr.tabindex]=\"(contentTabIndex != null && selectedIndex === i) ? contentTabIndex : null\"\n [attr.aria-labelledby]=\"_getTabLabelId(i)\"\n [class.mat-mdc-tab-body-active]=\"selectedIndex === i\"\n [ngClass]=\"tab.bodyClass\"\n [content]=\"tab.content!\"\n [position]=\"tab.position!\"\n [origin]=\"tab.origin\"\n [animationDuration]=\"animationDuration\"\n [preserveContent]=\"preserveContent\"\n (_onCentered)=\"_removeTabBodyWrapperHeight()\"\n (_onCentering)=\"_setTabBodyWrapperHeight($event)\">\n </mat-tab-body>\n</div>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n forwardRef,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n Optional,\n Inject,\n Attribute,\n OnDestroy,\n AfterContentInit,\n NgZone,\n ChangeDetectorRef,\n OnInit,\n Input,\n} from '@angular/core';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {\n MAT_RIPPLE_GLOBAL_OPTIONS,\n RippleGlobalOptions,\n} from '@angular/material-experimental/mdc-core';\nimport {FocusMonitor} from '@angular/cdk/a11y';\nimport {\n _MatTabNavBase,\n _MatTabLinkBase,\n MAT_TABS_CONFIG,\n MatTabsConfig,\n} from '@angular/material/tabs';\nimport {DOCUMENT} from '@angular/common';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {ViewportRuler} from '@angular/cdk/scrolling';\nimport {Platform} from '@angular/cdk/platform';\nimport {MatInkBar, MatInkBarItem, MatInkBarFoundation} from '../ink-bar';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {BehaviorSubject, Subject} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\n/**\n * Navigation component matching the styles of the tab group header.\n * Provides anchored navigation with animated ink bar.\n */\n@Component({\n selector: '[mat-tab-nav-bar]',\n exportAs: 'matTabNavBar, matTabNav',\n inputs: ['color'],\n templateUrl: 'tab-nav-bar.html',\n styleUrls: ['tab-nav-bar.css'],\n host: {\n '[attr.role]': '_getRole()',\n 'class': 'mat-mdc-tab-nav-bar mat-mdc-tab-header',\n '[class.mat-mdc-tab-header-pagination-controls-enabled]': '_showPaginationControls',\n '[class.mat-mdc-tab-header-rtl]': \"_getLayoutDirection() == 'rtl'\",\n '[class.mat-primary]': 'color !== \"warn\" && color !== \"accent\"',\n '[class.mat-accent]': 'color === \"accent\"',\n '[class.mat-warn]': 'color === \"warn\"',\n '[class._mat-animation-noopable]': '_animationMode === \"NoopAnimations\"',\n },\n encapsulation: ViewEncapsulation.None,\n // tslint:disable-next-line:validate-decorators\n changeDetection: ChangeDetectionStrategy.Default,\n})\nexport class MatTabNav extends _MatTabNavBase implements AfterContentInit {\n /** Whether the ink bar should fit its width to the size of the tab label content. */\n @Input()\n get fitInkBarToContent(): boolean {\n return this._fitInkBarToContent.value;\n }\n set fitInkBarToContent(v: BooleanInput) {\n this._fitInkBarToContent.next(coerceBooleanProperty(v));\n this._changeDetectorRef.markForCheck();\n }\n _fitInkBarToContent = new BehaviorSubject(false);\n\n @ContentChildren(forwardRef(() => MatTabLink), {descendants: true}) _items: QueryList<MatTabLink>;\n @ViewChild('tabListContainer', {static: true}) _tabListContainer: ElementRef;\n @ViewChild('tabList', {static: true}) _tabList: ElementRef;\n @ViewChild('tabListInner', {static: true}) _tabListInner: ElementRef;\n @ViewChild('nextPaginator') _nextPaginator: ElementRef<HTMLElement>;\n @ViewChild('previousPaginator') _previousPaginator: ElementRef<HTMLElement>;\n _inkBar: MatInkBar;\n\n constructor(\n elementRef: ElementRef,\n @Optional() dir: Directionality,\n ngZone: NgZone,\n changeDetectorRef: ChangeDetectorRef,\n viewportRuler: ViewportRuler,\n platform: Platform,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode?: string,\n @Optional() @Inject(MAT_TABS_CONFIG) defaultConfig?: MatTabsConfig,\n ) {\n super(elementRef, dir, ngZone, changeDetectorRef, viewportRuler, platform, animationMode);\n this.disablePagination =\n defaultConfig && defaultConfig.disablePagination != null\n ? defaultConfig.disablePagination\n : false;\n this.fitInkBarToContent =\n defaultConfig && defaultConfig.fitInkBarToContent != null\n ? defaultConfig.fitInkBarToContent\n : false;\n }\n\n override ngAfterContentInit() {\n this._inkBar = new MatInkBar(this._items);\n super.ngAfterContentInit();\n }\n}\n\n/**\n * Link inside of a `mat-tab-nav-bar`.\n */\n@Component({\n selector: '[mat-tab-link], [matTabLink]',\n exportAs: 'matTabLink',\n inputs: ['disabled', 'disableRipple', 'tabIndex'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n templateUrl: 'tab-link.html',\n styleUrls: ['tab-link.css'],\n host: {\n 'class': 'mdc-tab mat-mdc-tab-link mat-mdc-focus-indicator',\n '[attr.aria-controls]': '_getAriaControls()',\n '[attr.aria-current]': '_getAriaCurrent()',\n '[attr.aria-disabled]': 'disabled',\n '[attr.aria-selected]': '_getAriaSelected()',\n '[attr.id]': 'id',\n '[attr.tabIndex]': '_getTabIndex()',\n '[attr.role]': '_getRole()',\n '[class.mat-mdc-tab-disabled]': 'disabled',\n '[class.mdc-tab--active]': 'active',\n '(focus)': '_handleFocus()',\n '(keydown)': '_handleKeydown($event)',\n },\n})\nexport class MatTabLink extends _MatTabLinkBase implements MatInkBarItem, OnInit, OnDestroy {\n _foundation = new MatInkBarFoundation(this.elementRef.nativeElement, this._document);\n\n private readonly _destroyed = new Subject<void>();\n\n constructor(\n tabNavBar: MatTabNav,\n elementRef: ElementRef,\n @Optional() @Inject(MAT_RIPPLE_GLOBAL_OPTIONS) globalRippleOptions: RippleGlobalOptions | null,\n @Attribute('tabindex') tabIndex: string,\n focusMonitor: FocusMonitor,\n @Inject(DOCUMENT) private _document: any,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) animationMode?: string,\n ) {\n super(tabNavBar, elementRef, globalRippleOptions, tabIndex, focusMonitor, animationMode);\n\n tabNavBar._fitInkBarToContent.pipe(takeUntil(this._destroyed)).subscribe(fitInkBarToContent => {\n this._foundation.setFitToContent(fitInkBarToContent);\n });\n }\n\n ngOnInit() {\n this._foundation.init();\n }\n\n override ngOnDestroy() {\n this._destroyed.next();\n this._destroyed.complete();\n super.ngOnDestroy();\n this._foundation.destroy();\n }\n}\n\n// Increasing integer for generating unique ids for tab nav components.\nlet nextUniqueId = 0;\n\n/**\n * Tab panel component associated with MatTabNav.\n */\n@Component({\n selector: 'mat-tab-nav-panel',\n exportAs: 'matTabNavPanel',\n template: '<ng-content></ng-content>',\n host: {\n '[attr.aria-labelledby]': '_activeTabId',\n '[attr.id]': 'id',\n 'class': 'mat-mdc-tab-nav-panel',\n 'role': 'tabpanel',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatTabNavPanel {\n /** Unique id for the tab panel. */\n @Input() id = `mat-tab-nav-panel-${nextUniqueId++}`;\n\n /** Id of the active tab in the nav bar. */\n _activeTabId?: string;\n}\n","<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-before\"\n #previousPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n tabindex=\"-1\"\n [matRippleDisabled]=\"_disableScrollBefore || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollBefore\"\n [disabled]=\"_disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n\n<div class=\"mat-mdc-tab-link-container\" #tabListContainer (keydown)=\"_handleKeydown($event)\">\n <div class=\"mat-mdc-tab-list\" #tabList (cdkObserveContent)=\"_onContentChanges()\">\n <div class=\"mat-mdc-tab-links\" #tabListInner>\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<!-- TODO: this also had `mat-elevation-z4`. Figure out what we should do with it. -->\n<button class=\"mat-mdc-tab-header-pagination mat-mdc-tab-header-pagination-after\"\n #nextPaginator\n aria-hidden=\"true\"\n type=\"button\"\n mat-ripple\n [matRippleDisabled]=\"_disableScrollAfter || disableRipple\"\n [class.mat-mdc-tab-header-pagination-disabled]=\"_disableScrollAfter\"\n [disabled]=\"_disableScrollAfter || null\"\n tabindex=\"-1\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (click)=\"_handlePaginatorClick('after')\"\n (touchend)=\"_stopInterval()\">\n <div class=\"mat-mdc-tab-header-pagination-chevron\"></div>\n</button>\n","<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","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule, MatRippleModule} from '@angular/material-experimental/mdc-core';\nimport {PortalModule} from '@angular/cdk/portal';\nimport {ObserversModule} from '@angular/cdk/observers';\nimport {A11yModule} from '@angular/cdk/a11y';\nimport {MatTabBody, MatTabBodyPortal} from './tab-body';\nimport {MatTabContent} from './tab-content';\nimport {MatTabLabel} from './tab-label';\nimport {MatTabLabelWrapper} from './tab-label-wrapper';\nimport {MatTab} from './tab';\nimport {MatTabHeader} from './tab-header';\nimport {MatTabGroup} from './tab-group';\nimport {MatTabNav, MatTabNavPanel, MatTabLink} from './tab-nav-bar/tab-nav-bar';\n\n@NgModule({\n imports: [\n CommonModule,\n MatCommonModule,\n PortalModule,\n MatRippleModule,\n ObserversModule,\n A11yModule,\n ],\n exports: [\n MatCommonModule,\n MatTabContent,\n MatTabLabel,\n MatTab,\n MatTabGroup,\n MatTabNav,\n MatTabNavPanel,\n MatTabLink,\n ],\n declarations: [\n MatTabContent,\n MatTabLabel,\n MatTab,\n MatTabGroup,\n MatTabNav,\n MatTabNavPanel,\n MatTabLink,\n\n // Private directives, should not be exported.\n MatTabBody,\n MatTabBodyPortal,\n MatTabLabelWrapper,\n MatTabHeader,\n ],\n})\nexport class MatTabsModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './module';\nexport {MatTabBodyPortal, MatTabBody} from './tab-body';\nexport {MatTabContent} from './tab-content';\nexport {MatTabLabel} from './tab-label';\nexport {MatTabLabelWrapper} from './tab-label-wrapper';\nexport {MatTab} from './tab';\nexport {MatInkBar} from './ink-bar';\nexport {MatTabHeader} from './tab-header';\nexport {MatTabGroup} from './tab-group';\nexport {MatTabNav, MatTabNavPanel, MatTabLink} from './tab-nav-bar/tab-nav-bar';\n\nexport {\n MatTabBodyPositionState,\n MatTabBodyOriginState,\n matTabsAnimations,\n _MatInkBarPositioner,\n _MAT_INK_BAR_POSITIONER,\n MatTabChangeEvent,\n MatTabHeaderPosition,\n MatTabsConfig,\n MAT_TABS_CONFIG,\n MAT_TAB_GROUP,\n MAT_TAB,\n ScrollDirection,\n} from '@angular/material/tabs';\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './public-api';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["BaseMatTabBodyPortal","BaseMatTabContent","BaseMatTabLabel","BaseMatTabLabelWrapper","BaseMatTab"],"mappings":"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"}