@angular/material 13.2.0-next.0 → 13.2.0-next.1

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 (60) hide show
  1. package/LICENSE +1 -1
  2. package/core/focus-indicators/_focus-indicators.scss +4 -0
  3. package/core/option/index.d.ts +1 -1
  4. package/core/selection/index.d.ts +8 -8
  5. package/core/selection/pseudo-checkbox/pseudo-checkbox-module.d.ts +8 -0
  6. package/esm2020/core/common-behaviors/common-module.mjs +1 -1
  7. package/esm2020/core/selection/index.mjs +2 -18
  8. package/esm2020/core/selection/pseudo-checkbox/pseudo-checkbox-module.mjs +25 -0
  9. package/esm2020/core/version.mjs +1 -1
  10. package/esm2020/datepicker/calendar-body.mjs +3 -3
  11. package/esm2020/menu/menu-content.mjs +2 -4
  12. package/esm2020/menu/menu-item.mjs +4 -17
  13. package/esm2020/menu/menu-trigger.mjs +3 -6
  14. package/esm2020/stepper/step-header.mjs +2 -2
  15. package/esm2020/table/table.mjs +2 -2
  16. package/esm2020/tabs/public-api.mjs +2 -2
  17. package/esm2020/tabs/tab-nav-bar/tab-nav-bar.mjs +89 -7
  18. package/esm2020/tabs/tabs-module.mjs +6 -2
  19. package/esm2020/tabs/testing/tab-harness-filters.mjs +1 -1
  20. package/esm2020/tabs/testing/tab-nav-bar-harness.mjs +13 -1
  21. package/esm2020/tabs/testing/tab-nav-panel-harness.mjs +27 -0
  22. package/fesm2015/core.mjs +10 -2
  23. package/fesm2015/core.mjs.map +1 -1
  24. package/fesm2015/datepicker.mjs +2 -2
  25. package/fesm2015/datepicker.mjs.map +1 -1
  26. package/fesm2015/menu.mjs +7 -23
  27. package/fesm2015/menu.mjs.map +1 -1
  28. package/fesm2015/stepper.mjs +2 -2
  29. package/fesm2015/table.mjs +2 -2
  30. package/fesm2015/tabs/testing.mjs +34 -0
  31. package/fesm2015/tabs/testing.mjs.map +1 -1
  32. package/fesm2015/tabs.mjs +93 -7
  33. package/fesm2015/tabs.mjs.map +1 -1
  34. package/fesm2020/core.mjs +10 -2
  35. package/fesm2020/core.mjs.map +1 -1
  36. package/fesm2020/datepicker.mjs +2 -2
  37. package/fesm2020/datepicker.mjs.map +1 -1
  38. package/fesm2020/menu.mjs +5 -23
  39. package/fesm2020/menu.mjs.map +1 -1
  40. package/fesm2020/stepper.mjs +2 -2
  41. package/fesm2020/table.mjs +2 -2
  42. package/fesm2020/tabs/testing.mjs +37 -0
  43. package/fesm2020/tabs/testing.mjs.map +1 -1
  44. package/fesm2020/tabs.mjs +92 -7
  45. package/fesm2020/tabs.mjs.map +1 -1
  46. package/menu/menu-content.d.ts +5 -1
  47. package/menu/menu-item.d.ts +3 -12
  48. package/menu/menu-trigger.d.ts +6 -2
  49. package/package.json +3 -2
  50. package/schematics/ng-add/index.js +1 -1
  51. package/schematics/ng-add/index.mjs +1 -1
  52. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.js +1 -2
  53. package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.mjs +1 -2
  54. package/table/_table-flex-styles.scss +0 -9
  55. package/tabs/public-api.d.ts +1 -1
  56. package/tabs/tab-nav-bar/tab-nav-bar.d.ts +29 -2
  57. package/tabs/tabs-module.d.ts +1 -1
  58. package/tabs/testing/tab-harness-filters.d.ts +3 -0
  59. package/tabs/testing/tab-nav-bar-harness.d.ts +3 -0
  60. package/tabs/testing/tab-nav-panel-harness.d.ts +23 -0
@@ -23,6 +23,7 @@ export declare abstract class _MatTabNavBase extends MatPaginatedTabHeader imple
23
23
  /** Query list of all tab links of the tab navigation. */
24
24
  abstract _items: QueryList<MatPaginatedTabHeaderItem & {
25
25
  active: boolean;
26
+ id: string;
26
27
  }>;
27
28
  /** Background color of the tab nav. */
28
29
  get backgroundColor(): ThemePalette;
@@ -34,13 +35,20 @@ export declare abstract class _MatTabNavBase extends MatPaginatedTabHeader imple
34
35
  private _disableRipple;
35
36
  /** Theme color of the nav bar. */
36
37
  color: ThemePalette;
38
+ /**
39
+ * Associated tab panel controlled by the nav bar. If not provided, then the nav bar
40
+ * follows the ARIA link / navigation landmark pattern. If provided, it follows the
41
+ * ARIA tabs design pattern.
42
+ */
43
+ tabPanel?: MatTabNavPanel;
37
44
  constructor(elementRef: ElementRef, dir: Directionality, ngZone: NgZone, changeDetectorRef: ChangeDetectorRef, viewportRuler: ViewportRuler, platform: Platform, animationMode?: string);
38
45
  protected _itemSelected(): void;
39
46
  ngAfterContentInit(): void;
40
47
  /** Notifies the component that the active link has been changed. */
41
48
  updateActiveLink(): void;
49
+ _getRole(): string | null;
42
50
  static ɵfac: i0.ɵɵFactoryDeclaration<_MatTabNavBase, [null, { optional: true; }, null, null, null, null, { optional: true; }]>;
43
- static ɵdir: i0.ɵɵDirectiveDeclaration<_MatTabNavBase, never, never, { "backgroundColor": "backgroundColor"; "disableRipple": "disableRipple"; "color": "color"; }, {}, never>;
51
+ static ɵdir: i0.ɵɵDirectiveDeclaration<_MatTabNavBase, never, never, { "backgroundColor": "backgroundColor"; "disableRipple": "disableRipple"; "color": "color"; "tabPanel": "tabPanel"; }, {}, never>;
44
52
  }
45
53
  /**
46
54
  * Navigation component matching the styles of the tab group header.
@@ -83,6 +91,8 @@ export declare class _MatTabLinkBase extends _MatTabLinkMixinBase implements Aft
83
91
  * @docs-private
84
92
  */
85
93
  get rippleDisabled(): boolean;
94
+ /** Unique id for the tab. */
95
+ id: string;
86
96
  constructor(_tabNavBar: _MatTabNavBase,
87
97
  /** @docs-private */ elementRef: ElementRef, globalRippleOptions: RippleGlobalOptions | null, tabIndex: string, _focusMonitor: FocusMonitor, animationMode?: string);
88
98
  /** Focuses the tab link. */
@@ -90,8 +100,14 @@ export declare class _MatTabLinkBase extends _MatTabLinkMixinBase implements Aft
90
100
  ngAfterViewInit(): void;
91
101
  ngOnDestroy(): void;
92
102
  _handleFocus(): void;
103
+ _handleKeydown(event: KeyboardEvent): void;
104
+ _getAriaControls(): string | null;
105
+ _getAriaSelected(): string | null;
106
+ _getAriaCurrent(): string | null;
107
+ _getRole(): string | null;
108
+ _getTabIndex(): number;
93
109
  static ɵfac: i0.ɵɵFactoryDeclaration<_MatTabLinkBase, [null, null, { optional: true; }, { attribute: "tabindex"; }, null, { optional: true; }]>;
94
- static ɵdir: i0.ɵɵDirectiveDeclaration<_MatTabLinkBase, never, never, { "active": "active"; }, {}, never>;
110
+ static ɵdir: i0.ɵɵDirectiveDeclaration<_MatTabLinkBase, never, never, { "active": "active"; "id": "id"; }, {}, never>;
95
111
  }
96
112
  /**
97
113
  * Link inside of a `mat-tab-nav-bar`.
@@ -104,4 +120,15 @@ export declare class MatTabLink extends _MatTabLinkBase implements OnDestroy {
104
120
  static ɵfac: i0.ɵɵFactoryDeclaration<MatTabLink, [null, null, null, null, { optional: true; }, { attribute: "tabindex"; }, null, { optional: true; }]>;
105
121
  static ɵdir: i0.ɵɵDirectiveDeclaration<MatTabLink, "[mat-tab-link], [matTabLink]", ["matTabLink"], { "disabled": "disabled"; "disableRipple": "disableRipple"; "tabIndex": "tabIndex"; }, {}, never>;
106
122
  }
123
+ /**
124
+ * Tab panel component associated with MatTabNav.
125
+ */
126
+ export declare class MatTabNavPanel {
127
+ /** Unique id for the tab panel. */
128
+ id: string;
129
+ /** Id of the active tab in the nav bar. */
130
+ _activeTabId?: string;
131
+ static ɵfac: i0.ɵɵFactoryDeclaration<MatTabNavPanel, never>;
132
+ static ɵcmp: i0.ɵɵComponentDeclaration<MatTabNavPanel, "mat-tab-nav-panel", ["matTabNavPanel"], { "id": "id"; }, {}, never, ["*"]>;
133
+ }
107
134
  export {};
@@ -15,6 +15,6 @@ import * as i13 from "@angular/cdk/observers";
15
15
  import * as i14 from "@angular/cdk/a11y";
16
16
  export declare class MatTabsModule {
17
17
  static ɵfac: i0.ɵɵFactoryDeclaration<MatTabsModule, never>;
18
- static ɵmod: i0.ɵɵNgModuleDeclaration<MatTabsModule, [typeof i1.MatTabGroup, typeof i2.MatTabLabel, typeof i3.MatTab, typeof i4.MatInkBar, typeof i5.MatTabLabelWrapper, typeof i6.MatTabNav, typeof i6.MatTabLink, typeof i7.MatTabBody, typeof i7.MatTabBodyPortal, typeof i8.MatTabHeader, typeof i9.MatTabContent], [typeof i10.CommonModule, typeof i11.MatCommonModule, typeof i12.PortalModule, typeof i11.MatRippleModule, typeof i13.ObserversModule, typeof i14.A11yModule], [typeof i11.MatCommonModule, typeof i1.MatTabGroup, typeof i2.MatTabLabel, typeof i3.MatTab, typeof i6.MatTabNav, typeof i6.MatTabLink, typeof i9.MatTabContent]>;
18
+ static ɵmod: i0.ɵɵNgModuleDeclaration<MatTabsModule, [typeof i1.MatTabGroup, typeof i2.MatTabLabel, typeof i3.MatTab, typeof i4.MatInkBar, typeof i5.MatTabLabelWrapper, typeof i6.MatTabNav, typeof i6.MatTabNavPanel, typeof i6.MatTabLink, typeof i7.MatTabBody, typeof i7.MatTabBodyPortal, typeof i8.MatTabHeader, typeof i9.MatTabContent], [typeof i10.CommonModule, typeof i11.MatCommonModule, typeof i12.PortalModule, typeof i11.MatRippleModule, typeof i13.ObserversModule, typeof i14.A11yModule], [typeof i11.MatCommonModule, typeof i1.MatTabGroup, typeof i2.MatTabLabel, typeof i3.MatTab, typeof i6.MatTabNav, typeof i6.MatTabNavPanel, typeof i6.MatTabLink, typeof i9.MatTabContent]>;
19
19
  static ɵinj: i0.ɵɵInjectorDeclaration<MatTabsModule>;
20
20
  }
@@ -24,3 +24,6 @@ export interface TabLinkHarnessFilters extends BaseHarnessFilters {
24
24
  /** A set of criteria that can be used to filter a list of `MatTabNavBarHarness` instances. */
25
25
  export interface TabNavBarHarnessFilters extends BaseHarnessFilters {
26
26
  }
27
+ /** A set of criteria that can be used to filter a list of `MatTabNavBarHarness` instances. */
28
+ export interface TabNavPanelHarnessFilters extends BaseHarnessFilters {
29
+ }
@@ -8,6 +8,7 @@
8
8
  import { ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
9
9
  import { TabNavBarHarnessFilters, TabLinkHarnessFilters } from './tab-harness-filters';
10
10
  import { MatTabLinkHarness } from './tab-link-harness';
11
+ import { MatTabNavPanelHarness } from './tab-nav-panel-harness';
11
12
  /** Harness for interacting with a standard mat-tab-nav-bar in tests. */
12
13
  export declare class MatTabNavBarHarness extends ComponentHarness {
13
14
  /** The selector for the host element of a `MatTabNavBar` instance. */
@@ -32,4 +33,6 @@ export declare class MatTabNavBarHarness extends ComponentHarness {
32
33
  * will be clicked.
33
34
  */
34
35
  clickLink(filter?: TabLinkHarnessFilters): Promise<void>;
36
+ /** Gets the panel associated with the nav bar. */
37
+ getPanel(): Promise<MatTabNavPanelHarness>;
35
38
  }
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ import { ContentContainerComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
9
+ import { TabNavPanelHarnessFilters } from './tab-harness-filters';
10
+ /** Harness for interacting with a standard mat-tab-nav-panel in tests. */
11
+ export declare class MatTabNavPanelHarness extends ContentContainerComponentHarness {
12
+ /** The selector for the host element of a `MatTabNavPanel` instance. */
13
+ static hostSelector: string;
14
+ /**
15
+ * Gets a `HarnessPredicate` that can be used to search for a `MatTabNavPanel` that meets
16
+ * certain criteria.
17
+ * @param options Options for filtering which tab nav panel instances are considered a match.
18
+ * @return a `HarnessPredicate` configured with the given options.
19
+ */
20
+ static with(options?: TabNavPanelHarnessFilters): HarnessPredicate<MatTabNavPanelHarness>;
21
+ /** Gets the tab panel text content. */
22
+ getTextContent(): Promise<string>;
23
+ }