@skyux/tabs 7.0.0-beta.5 → 7.0.0-beta.7

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 (40) hide show
  1. package/documentation.json +664 -557
  2. package/esm2020/lib/modules/sectioned-form/sectioned-form.component.mjs +2 -2
  3. package/esm2020/lib/modules/tabs/tab-button-view-model.mjs +1 -1
  4. package/esm2020/lib/modules/tabs/tab-button.component.mjs +5 -3
  5. package/esm2020/lib/modules/tabs/tab.component.mjs +73 -33
  6. package/esm2020/lib/modules/tabs/tabs.module.mjs +5 -2
  7. package/esm2020/lib/modules/tabs/tabset-adapter.service.mjs +34 -22
  8. package/esm2020/lib/modules/tabs/tabset-nav-button-disabled.pipe.mjs +22 -0
  9. package/esm2020/lib/modules/tabs/tabset-nav-button.component.mjs +17 -23
  10. package/esm2020/lib/modules/tabs/tabset-permalink.service.mjs +41 -35
  11. package/esm2020/lib/modules/tabs/tabset-tab-indexes-change.mjs +1 -1
  12. package/esm2020/lib/modules/tabs/tabset.component.mjs +220 -216
  13. package/esm2020/lib/modules/tabs/tabset.service.mjs +67 -51
  14. package/esm2020/lib/modules/vertical-tabset/vertical-tab.component.mjs +5 -3
  15. package/esm2020/lib/modules/vertical-tabset/vertical-tabset-group.component.mjs +2 -2
  16. package/esm2020/lib/modules/vertical-tabset/vertical-tabset.component.mjs +2 -2
  17. package/esm2020/testing/tabs/tab-fixture-tab.mjs +1 -1
  18. package/esm2020/testing/tabs/tabset-fixture.mjs +44 -47
  19. package/fesm2015/skyux-tabs-testing.mjs +47 -49
  20. package/fesm2015/skyux-tabs-testing.mjs.map +1 -1
  21. package/fesm2015/skyux-tabs.mjs +478 -383
  22. package/fesm2015/skyux-tabs.mjs.map +1 -1
  23. package/fesm2020/skyux-tabs-testing.mjs +43 -46
  24. package/fesm2020/skyux-tabs-testing.mjs.map +1 -1
  25. package/fesm2020/skyux-tabs.mjs +597 -504
  26. package/fesm2020/skyux-tabs.mjs.map +1 -1
  27. package/lib/modules/tabs/tab-button-view-model.d.ts +5 -5
  28. package/lib/modules/tabs/tab-button.component.d.ts +9 -9
  29. package/lib/modules/tabs/tab.component.d.ts +13 -18
  30. package/lib/modules/tabs/tabs.module.d.ts +9 -8
  31. package/lib/modules/tabs/tabset-adapter.service.d.ts +5 -10
  32. package/lib/modules/tabs/tabset-nav-button-disabled.pipe.d.ts +8 -0
  33. package/lib/modules/tabs/tabset-nav-button.component.d.ts +8 -6
  34. package/lib/modules/tabs/tabset-permalink.service.d.ts +3 -11
  35. package/lib/modules/tabs/tabset-tab-indexes-change.d.ts +2 -2
  36. package/lib/modules/tabs/tabset.component.d.ts +10 -53
  37. package/lib/modules/tabs/tabset.service.d.ts +8 -12
  38. package/package.json +9 -9
  39. package/testing/tabs/tab-fixture-tab.d.ts +3 -3
  40. package/testing/tabs/tabset-fixture.d.ts +3 -9
@@ -5,13 +5,13 @@ import { SkyTabIndex } from './tab-index';
5
5
  export declare type TabButtonViewModel = {
6
6
  active: boolean;
7
7
  ariaControls: string;
8
- buttonHref: string;
8
+ buttonHref: string | null;
9
9
  buttonId: string;
10
- buttonText: string;
11
- buttonTextCount: string;
10
+ buttonText: string | undefined;
11
+ buttonTextCount: string | undefined;
12
12
  closeable: boolean;
13
- disabled: boolean;
14
- tabIndex: SkyTabIndex;
13
+ disabled: boolean | undefined;
14
+ tabIndex: SkyTabIndex | undefined;
15
15
  tabNumber: number;
16
16
  totalTabsCount: number;
17
17
  };
@@ -10,20 +10,20 @@ declare type SkyWizardStepState = 'completed' | 'current' | 'unavailable';
10
10
  */
11
11
  export declare class SkyTabButtonComponent implements AfterViewInit, OnDestroy {
12
12
  #private;
13
- get active(): boolean;
14
- set active(value: boolean);
15
- ariaControls: string;
16
- buttonHref: string;
17
- buttonId: string;
18
- buttonText: string;
13
+ get active(): boolean | undefined;
14
+ set active(value: boolean | undefined);
15
+ ariaControls: string | undefined;
16
+ buttonHref: string | undefined;
17
+ buttonId: string | undefined;
18
+ buttonText: string | undefined;
19
19
  buttonTextCount: string | undefined;
20
- closeable: boolean;
20
+ closeable: boolean | undefined;
21
21
  get disabled(): boolean;
22
22
  set disabled(value: boolean | undefined);
23
- tabIndex: SkyTabIndex;
23
+ tabIndex: SkyTabIndex | undefined;
24
24
  tabNumber: number | undefined;
25
25
  totalTabsCount: number | undefined;
26
- get tabStyle(): SkyTabsetStyle;
26
+ get tabStyle(): SkyTabsetStyle | undefined;
27
27
  set tabStyle(style: SkyTabsetStyle | undefined);
28
28
  buttonClick: EventEmitter<void>;
29
29
  closeClick: EventEmitter<void>;
@@ -5,22 +5,20 @@ import { SkyTabsetPermalinkService } from './tabset-permalink.service';
5
5
  import { SkyTabsetService } from './tabset.service';
6
6
  import * as i0 from "@angular/core";
7
7
  export declare class SkyTabComponent implements OnChanges, OnDestroy {
8
- private changeDetector;
9
- private permalinkService;
10
- private tabsetService;
8
+ #private;
11
9
  /**
12
10
  * Indicates whether the tab is active when the tabset loads. After initialization, the `active`
13
11
  * property on the tabset component should be used to set the active tab.
14
12
  * @default false
15
13
  */
16
- set active(value: boolean);
14
+ set active(value: boolean | undefined);
17
15
  get active(): boolean;
18
16
  get activeChange(): Observable<void>;
19
17
  /**
20
18
  * Indicates whether to disable the tab.
21
19
  * @default false
22
20
  */
23
- disabled: boolean;
21
+ disabled: boolean | undefined;
24
22
  /**
25
23
  * Specifies a custom query parameter value for the tab.
26
24
  * This works in conjunction with the tabset's `permalinkId` to distinguish
@@ -29,11 +27,12 @@ export declare class SkyTabComponent implements OnChanges, OnDestroy {
29
27
  * By default, the query parameter's value is parsed automatically from the tab's heading text.
30
28
  * This input only applies when the tabset's `tabStyle` is `"tabs"`.
31
29
  */
32
- set permalinkValue(value: string);
33
- get permalinkValue(): string;
30
+ set permalinkValue(value: string | undefined);
31
+ get permalinkValue(): string | undefined;
34
32
  /**
35
33
  * Displays a counter beside the tab header.
36
34
  * This input only applies when the tabset's `tabStyle` is `"tabs"`.
35
+ * @deprecated SKY UX no longer recommends adding counts to tabs.
37
36
  */
38
37
  tabHeaderCount: string | undefined;
39
38
  /**
@@ -44,40 +43,36 @@ export declare class SkyTabComponent implements OnChanges, OnDestroy {
44
43
  * to reflect the tab header in the page title.
45
44
  * @required
46
45
  */
47
- tabHeading: string;
46
+ set tabHeading(value: string | undefined);
47
+ get tabHeading(): string | undefined;
48
48
  /**
49
49
  * Specifies a unique identifier for the tab.
50
50
  * If not defined, the identifier is set to the position of the tab on load, starting with `0`.
51
51
  */
52
- set tabIndex(value: SkyTabIndex);
53
- get tabIndex(): SkyTabIndex;
52
+ set tabIndex(value: SkyTabIndex | undefined);
53
+ get tabIndex(): SkyTabIndex | undefined;
54
54
  /**
55
55
  * Fires when users click the button to close the tab.
56
56
  * The close button is added to the tab when you specify a listener for this event.
57
57
  * This event only applies when the tabset's `tabStyle` is `"tabs"`.
58
58
  */
59
59
  close: EventEmitter<void>;
60
- get closeable(): boolean;
61
60
  /**
62
61
  * Alerts the tabset component when this component has changes that need to be reflected in the UI.
63
62
  */
64
63
  get stateChange(): Observable<void>;
65
- get tabIndexChange(): Observable<SkyTabIndex>;
64
+ get tabIndexChange(): Observable<SkyTabIndex | undefined>;
65
+ permalinkValueOrDefault: string;
66
66
  showContent: boolean;
67
67
  tabButtonId: string;
68
68
  tabPanelId: string;
69
- private _active;
70
- private _activeChange;
71
- private _permalinkValue;
72
- private _stateChange;
73
- private _tabIndex;
74
- private _tabIndexChange;
75
69
  constructor(changeDetector: ChangeDetectorRef, permalinkService: SkyTabsetPermalinkService, tabsetService: SkyTabsetService);
76
70
  ngOnChanges(changes: SimpleChanges): void;
77
71
  ngOnDestroy(): void;
78
72
  init(): void;
79
73
  activate(): void;
80
74
  deactivate(): void;
75
+ isCloseable(): boolean;
81
76
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyTabComponent, never>;
82
77
  static ɵcmp: i0.ɵɵComponentDeclaration<SkyTabComponent, "sky-tab", never, { "active": "active"; "disabled": "disabled"; "permalinkValue": "permalinkValue"; "tabHeaderCount": "tabHeaderCount"; "tabHeading": "tabHeading"; "tabIndex": "tabIndex"; }, { "close": "close"; }, never, ["*"], false>;
83
78
  }
@@ -3,15 +3,16 @@ import * as i1 from "./tab-button.component";
3
3
  import * as i2 from "./tab.component";
4
4
  import * as i3 from "./tabset.component";
5
5
  import * as i4 from "./tabset-nav-button.component";
6
- import * as i5 from "@angular/common";
7
- import * as i6 from "@angular/router";
8
- import * as i7 from "@skyux/popovers";
9
- import * as i8 from "@skyux/i18n";
10
- import * as i9 from "@skyux/indicators";
11
- import * as i10 from "../shared/sky-tabs-resources.module";
12
- import * as i11 from "@skyux/theme";
6
+ import * as i5 from "./tabset-nav-button-disabled.pipe";
7
+ import * as i6 from "@angular/common";
8
+ import * as i7 from "@angular/router";
9
+ import * as i8 from "@skyux/popovers";
10
+ import * as i9 from "@skyux/i18n";
11
+ import * as i10 from "@skyux/indicators";
12
+ import * as i11 from "../shared/sky-tabs-resources.module";
13
+ import * as i12 from "@skyux/theme";
13
14
  export declare class SkyTabsModule {
14
15
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyTabsModule, never>;
15
- static ɵmod: i0.ɵɵNgModuleDeclaration<SkyTabsModule, [typeof i1.SkyTabButtonComponent, typeof i2.SkyTabComponent, typeof i3.SkyTabsetComponent, typeof i4.SkyTabsetNavButtonComponent], [typeof i5.CommonModule, typeof i6.RouterModule, typeof i7.SkyDropdownModule, typeof i8.SkyI18nModule, typeof i9.SkyIconModule, typeof i10.SkyTabsResourcesModule, typeof i11.SkyThemeModule], [typeof i2.SkyTabComponent, typeof i3.SkyTabsetComponent, typeof i4.SkyTabsetNavButtonComponent]>;
16
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SkyTabsModule, [typeof i1.SkyTabButtonComponent, typeof i2.SkyTabComponent, typeof i3.SkyTabsetComponent, typeof i4.SkyTabsetNavButtonComponent, typeof i5.SkyTabsetNavButtonDisabledPipe], [typeof i6.CommonModule, typeof i7.RouterModule, typeof i8.SkyDropdownModule, typeof i9.SkyI18nModule, typeof i10.SkyIconModule, typeof i11.SkyTabsResourcesModule, typeof i12.SkyThemeModule], [typeof i2.SkyTabComponent, typeof i3.SkyTabsetComponent, typeof i4.SkyTabsetNavButtonComponent]>;
16
17
  static ɵinj: i0.ɵɵInjectorDeclaration<SkyTabsModule>;
17
18
  }
@@ -1,24 +1,19 @@
1
- import { ElementRef } from '@angular/core';
1
+ import { ElementRef, OnDestroy } from '@angular/core';
2
2
  import { Observable } from 'rxjs';
3
3
  import * as i0 from "@angular/core";
4
4
  /**
5
5
  * @internal
6
6
  */
7
- export declare class SkyTabsetAdapterService {
7
+ export declare class SkyTabsetAdapterService implements OnDestroy {
8
+ #private;
8
9
  get overflowChange(): Observable<boolean>;
9
- private currentOverflow;
10
- private tabsetRef;
11
- private tabsOffsetLeft;
12
- private _overflowChange;
10
+ constructor();
11
+ ngOnDestroy(): void;
13
12
  registerTabset(tabsetRef: ElementRef): void;
14
13
  /**
15
14
  * Detects if the tab buttons are wider than the tabset container.
16
15
  */
17
16
  detectOverflow(): void;
18
- /**
19
- * Returns the number of pixels to the left of the first tab.
20
- */
21
- private getTabsOffsetLeft;
22
17
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyTabsetAdapterService, never>;
23
18
  static ɵprov: i0.ɵɵInjectableDeclaration<SkyTabsetAdapterService>;
24
19
  }
@@ -0,0 +1,8 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SkyTabsetNavButtonType } from './tabset-nav-button-type';
3
+ import * as i0 from "@angular/core";
4
+ export declare class SkyTabsetNavButtonDisabledPipe implements PipeTransform {
5
+ transform(disabled: boolean | undefined, buttonType?: SkyTabsetNavButtonType | string, tabToSelectExists?: boolean, tabToSelectIsDisabled?: boolean): boolean;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyTabsetNavButtonDisabledPipe, never>;
7
+ static ɵpipe: i0.ɵɵPipeDeclaration<SkyTabsetNavButtonDisabledPipe, "skyTabsetNavButtonDisabled", false>;
8
+ }
@@ -1,5 +1,6 @@
1
1
  import { OnDestroy } from '@angular/core';
2
2
  import { SkyLogService } from '@skyux/core';
3
+ import { SkyTabComponent } from './tab.component';
3
4
  import { SkyTabsetNavButtonType } from './tabset-nav-button-type';
4
5
  import { SkyTabsetComponent } from './tabset.component';
5
6
  import * as i0 from "@angular/core";
@@ -9,14 +10,14 @@ export declare class SkyTabsetNavButtonComponent implements OnDestroy {
9
10
  * Specifies the tabset wizard component to associate with the nav button.
10
11
  * @required
11
12
  */
12
- get tabset(): SkyTabsetComponent;
13
- set tabset(value: SkyTabsetComponent);
13
+ get tabset(): SkyTabsetComponent | undefined;
14
+ set tabset(value: SkyTabsetComponent | undefined);
14
15
  /**
15
16
  * Specifies the type of nav button to include.
16
17
  * @required
17
18
  */
18
- get buttonType(): SkyTabsetNavButtonType | string;
19
- set buttonType(value: SkyTabsetNavButtonType | string);
19
+ get buttonType(): SkyTabsetNavButtonType | string | undefined;
20
+ set buttonType(value: SkyTabsetNavButtonType | string | undefined);
20
21
  /**
21
22
  * Specifies the label to display on the nav button. The following are the defaults for each `buttonType`.
22
23
  * `next` = "Next", `previous` = "Previous", `finish` = "Finish"
@@ -27,12 +28,13 @@ export declare class SkyTabsetNavButtonComponent implements OnDestroy {
27
28
  * Defaults to the disabled state of the next tab for `next`, the existence of a previous tab for `previous`,
28
29
  * and false for `finish`.
29
30
  */
30
- set disabled(value: boolean);
31
- get disabled(): boolean;
31
+ set disabled(value: boolean | undefined);
32
+ get disabled(): boolean | undefined;
32
33
  buttonClassName: string | undefined;
33
34
  isVisible: boolean;
34
35
  type: 'submit' | 'button';
35
36
  ariaControls: string | undefined;
37
+ protected tabToSelect: SkyTabComponent | undefined;
36
38
  constructor(logger: SkyLogService);
37
39
  ngOnDestroy(): void;
38
40
  buttonClick(): void;
@@ -7,12 +7,8 @@ import * as i0 from "@angular/core";
7
7
  * @internal
8
8
  */
9
9
  export declare class SkyTabsetPermalinkService implements OnDestroy {
10
- private activatedRoute;
11
- private location;
12
- private router;
10
+ #private;
13
11
  get popStateChange(): Observable<void>;
14
- private _popStateChange;
15
- private subscription;
16
12
  constructor(activatedRoute: ActivatedRoute, location: Location, router: Router);
17
13
  ngOnDestroy(): void;
18
14
  init(): void;
@@ -32,15 +28,11 @@ export declare class SkyTabsetPermalinkService implements OnDestroy {
32
28
  * Returns a relative URL that includes the provided query parameter. The value is inteded to be
33
29
  * used by an HTML anchor element.
34
30
  */
35
- getParamHref(name: string, value: string): string | null;
31
+ getParamHref(name: string | undefined, value: string): string | null;
36
32
  /**
37
33
  * Converts the provided string into a value that can be safely used in a URL.
38
34
  */
39
- urlify(value: string): string;
40
- /**
41
- * Returns all query params that exist in the current URL.
42
- */
43
- private getParams;
35
+ urlify(value: string | undefined): string;
44
36
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyTabsetPermalinkService, never>;
45
37
  static ɵprov: i0.ɵɵInjectableDeclaration<SkyTabsetPermalinkService>;
46
38
  }
@@ -1,7 +1,7 @@
1
1
  import { SkyTabIndex } from './tab-index';
2
2
  export interface SkyTabsetTabIndexesChange {
3
3
  tabs?: {
4
- tabHeading: string;
5
- tabIndex: SkyTabIndex;
4
+ tabHeading?: string;
5
+ tabIndex?: SkyTabIndex;
6
6
  }[];
7
7
  }
@@ -10,29 +10,25 @@ import { SkyTabsetTabIndexesChange } from './tabset-tab-indexes-change';
10
10
  import { SkyTabsetService } from './tabset.service';
11
11
  import * as i0 from "@angular/core";
12
12
  export declare class SkyTabsetComponent implements AfterViewInit, OnDestroy {
13
- private changeDetector;
14
- private elementRef;
15
- private adapterService;
16
- private permalinkService;
17
- private tabsetService;
13
+ #private;
18
14
  /**
19
15
  * Activates a tab by its `tabIndex` property.
20
16
  */
21
- set active(value: SkyTabIndex);
22
- get active(): SkyTabIndex;
17
+ set active(value: SkyTabIndex | undefined);
18
+ get active(): SkyTabIndex | undefined;
23
19
  /**
24
20
  * Specifies an ARIA label for the tabset. This sets the tabset's `aria-label` attribute
25
21
  * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).
26
22
  * If the tabset includes a visible label, use `ariaLabelledBy` instead.
27
23
  */
28
- ariaLabel: string;
24
+ ariaLabel: string | undefined;
29
25
  /**
30
26
  * Specifies the HTML element ID (without the leading `#`) of the element that labels
31
27
  * the tabset. This sets the tabset's `aria-labelledby` attribute
32
28
  * [to support accessibility](https://developer.blackbaud.com/skyux/learn/accessibility).
33
29
  * If the tabset does not include a visible label, use `ariaLabel` instead.
34
30
  */
35
- ariaLabelledBy: string;
31
+ ariaLabelledBy: string | undefined;
36
32
  /**
37
33
  * Distinguishes a tabset's unique state in the URL by generating a query parameter
38
34
  * that is written as `?<queryParam>-active-tab=<sanitized-tab-heading>`.
@@ -40,13 +36,13 @@ export declare class SkyTabsetComponent implements AfterViewInit, OnDestroy {
40
36
  * but you can supply a custom query parameter value for each tab with its `permalinkValue`.
41
37
  * This input only applies when `tabStyle` is `"tabs"`
42
38
  */
43
- set permalinkId(value: string);
39
+ set permalinkId(value: string | undefined);
44
40
  get permalinkId(): string;
45
41
  /**
46
42
  * Specifies the behavior for a series of tabs.
47
43
  * @default "tabs"
48
44
  */
49
- set tabStyle(value: SkyTabsetStyle);
45
+ set tabStyle(value: SkyTabsetStyle | undefined);
50
46
  get tabStyle(): SkyTabsetStyle;
51
47
  /**
52
48
  * Fires when the active tab changes. This event emits the index of the active tab.
@@ -71,20 +67,15 @@ export declare class SkyTabsetComponent implements AfterViewInit, OnDestroy {
71
67
  tabIndexesChange: EventEmitter<SkyTabsetTabIndexesChange>;
72
68
  set tabDisplayMode(value: SkyTabsetButtonsDisplayMode);
73
69
  get tabDisplayMode(): SkyTabsetButtonsDisplayMode;
74
- tabs: QueryList<SkyTabComponent>;
70
+ set tabs(value: QueryList<SkyTabComponent> | undefined);
71
+ get tabs(): QueryList<SkyTabComponent> | undefined;
75
72
  dropdownTriggerButtonText: string;
76
73
  /**
77
74
  * This property is used by the deprecated tabset-nav-button component.
78
75
  * @internal
79
76
  */
80
- lastActiveTabIndex: SkyTabIndex;
77
+ lastActiveTabIndex: SkyTabIndex | undefined;
81
78
  tabButtons: TabButtonViewModel[];
82
- private ngUnsubscribe;
83
- private tabComponentsStateChangeUnsubscribe;
84
- private _active;
85
- private _permalinkId;
86
- private _tabDisplayMode;
87
- private _tabStyle;
88
79
  constructor(changeDetector: ChangeDetectorRef, elementRef: ElementRef, adapterService: SkyTabsetAdapterService, permalinkService: SkyTabsetPermalinkService, tabsetService: SkyTabsetService);
89
80
  ngAfterViewInit(): void;
90
81
  ngOnDestroy(): void;
@@ -97,40 +88,6 @@ export declare class SkyTabsetComponent implements AfterViewInit, OnDestroy {
97
88
  onLeftKeyDown(): void;
98
89
  onHomeKeyDown(): void;
99
90
  onEndKeyDown(): void;
100
- /**
101
- * Sets the initial active tab index based on the following criteria.
102
- * 1. Does the URL include a query param that reflects this tabset's active tab?
103
- * 2. Does one of the tab components have their `active` property set to `true`?
104
- * 3. Is the tabset component's `active` property set to a specific tab index?
105
- */
106
- private getInitialTabIndex;
107
- private listenActiveIndexChange;
108
- private listenTabComponentsStructuralChange;
109
- private listenTabComponentsStateChange;
110
- private initTabComponents;
111
- private resetTabComponents;
112
- private emitTabIndexChange;
113
- private unsubscribeTabComponentsStateChange;
114
- private listenTabButtonsOverflowChange;
115
- /**
116
- * Listen for back/forward history button presses to detect query param changes in the URL.
117
- */
118
- private listenLocationPopStateChange;
119
- private setActiveTabIndexByPermalinkId;
120
- private getActiveTabIndexByPermalinkId;
121
- private getActiveTabComponent;
122
- private createTabButtons;
123
- private updateTabButtons;
124
- /**
125
- * Updates the UI and state of the tabset component after the tab index or
126
- * tab components have changed.
127
- * @param activeIndex The currently active tab index.
128
- * @param regenerateTabButtons Indicates if tab button view models should be regenerated.
129
- * Setting this value to `false` will simply update the existing tab buttons. Setting this value
130
- * to `true` is only necessary when the underlying tab components have changed and the tab
131
- * buttons must reflect those changes.
132
- */
133
- private updateTabsetComponent;
134
91
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyTabsetComponent, never>;
135
92
  static ɵcmp: i0.ɵɵComponentDeclaration<SkyTabsetComponent, "sky-tabset", never, { "active": "active"; "ariaLabel": "ariaLabel"; "ariaLabelledBy": "ariaLabelledBy"; "permalinkId": "permalinkId"; "tabStyle": "tabStyle"; }, { "activeChange": "activeChange"; "newTab": "newTab"; "openTab": "openTab"; "tabIndexesChange": "tabIndexesChange"; }, ["tabs"], ["*"], false>;
136
93
  }
@@ -1,3 +1,4 @@
1
+ import { OnDestroy } from '@angular/core';
1
2
  import { Observable } from 'rxjs';
2
3
  import { TabButtonViewModel } from './tab-button-view-model';
3
4
  import { SkyTabIndex } from './tab-index';
@@ -6,21 +7,19 @@ import * as i0 from "@angular/core";
6
7
  /**
7
8
  * @internal
8
9
  */
9
- export declare class SkyTabsetService {
10
+ export declare class SkyTabsetService implements OnDestroy {
11
+ #private;
10
12
  get activeTabUnregistered(): Observable<SkyTabsetActiveTabUnregisteredArgs>;
11
13
  get activeTabIndex(): Observable<SkyTabIndex>;
12
14
  get focusedTabBtnIndex(): Observable<SkyTabIndex>;
13
- currentActiveTabIndex: SkyTabIndex;
15
+ currentActiveTabIndex: SkyTabIndex | undefined;
14
16
  currentFocusedTabBtnIndex: SkyTabIndex;
15
- private _activeTabIndex;
16
- private _focusedTabBtnIndex;
17
- private _activeTabUnregistered;
18
- private tabs;
19
- private tabCounter;
17
+ constructor();
18
+ ngOnDestroy(): void;
20
19
  /**
21
20
  * Sets the active tab by its unique `tabIndex` property.
22
21
  */
23
- setActiveTabIndex(value: SkyTabIndex, config?: {
22
+ setActiveTabIndex(value: SkyTabIndex | undefined, config?: {
24
23
  emitChange: boolean;
25
24
  }): void;
26
25
  focusNextTabBtn(tabButtons: TabButtonViewModel[]): void;
@@ -44,7 +43,7 @@ export declare class SkyTabsetService {
44
43
  /**
45
44
  * Compares two tab indexes and returns `true` if they are equal.
46
45
  */
47
- tabIndexesEqual(tabIndex1: SkyTabIndex, tabIndex2: SkyTabIndex): boolean;
46
+ tabIndexesEqual(tabIndex1: SkyTabIndex | undefined, tabIndex2: SkyTabIndex | undefined): boolean;
48
47
  /**
49
48
  * Verifies if a provided tab index is registered.
50
49
  */
@@ -57,9 +56,6 @@ export declare class SkyTabsetService {
57
56
  * Activates the next registered tab, or the previous one based on a provided array index.
58
57
  */
59
58
  activateNearestTab(arrayIndex: number): void;
60
- private isTabIndexActive;
61
- private getNextTabArrayIndex;
62
- private getPrevTabArrayIndex;
63
59
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyTabsetService, never>;
64
60
  static ɵprov: i0.ɵɵInjectableDeclaration<SkyTabsetService>;
65
61
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyux/tabs",
3
- "version": "7.0.0-beta.5",
3
+ "version": "7.0.0-beta.7",
4
4
  "author": "Blackbaud, Inc.",
5
5
  "keywords": [
6
6
  "blackbaud",
@@ -45,14 +45,14 @@
45
45
  "@angular/core": "^14.2.0",
46
46
  "@angular/platform-browser": "^14.2.0",
47
47
  "@angular/router": "^14.2.0",
48
- "@skyux-sdk/testing": "7.0.0-beta.5",
49
- "@skyux/animations": "7.0.0-beta.5",
50
- "@skyux/core": "7.0.0-beta.5",
51
- "@skyux/forms": "7.0.0-beta.5",
52
- "@skyux/i18n": "7.0.0-beta.5",
53
- "@skyux/indicators": "7.0.0-beta.5",
54
- "@skyux/popovers": "7.0.0-beta.5",
55
- "@skyux/theme": "7.0.0-beta.5"
48
+ "@skyux-sdk/testing": "7.0.0-beta.7",
49
+ "@skyux/animations": "7.0.0-beta.7",
50
+ "@skyux/core": "7.0.0-beta.7",
51
+ "@skyux/forms": "7.0.0-beta.7",
52
+ "@skyux/i18n": "7.0.0-beta.7",
53
+ "@skyux/indicators": "7.0.0-beta.7",
54
+ "@skyux/popovers": "7.0.0-beta.7",
55
+ "@skyux/theme": "7.0.0-beta.7"
56
56
  },
57
57
  "dependencies": {
58
58
  "tslib": "^2.3.1"
@@ -14,13 +14,13 @@ export interface SkyTabsetFixtureTab {
14
14
  /**
15
15
  * The permalink value specified for the tab.
16
16
  */
17
- permalinkValue: string;
17
+ permalinkValue: string | undefined;
18
18
  /**
19
19
  * The count displayed in the tab header.
20
20
  */
21
- tabHeaderCount: string;
21
+ tabHeaderCount: string | undefined;
22
22
  /**
23
23
  * The text displayed in the tab header.
24
24
  */
25
- tabHeading: string;
25
+ tabHeading: string | undefined;
26
26
  }
@@ -5,20 +5,19 @@ import { SkyTabsetFixtureTab } from './tab-fixture-tab';
5
5
  * @internal
6
6
  */
7
7
  export declare class SkyTabsetFixture {
8
- private fixture;
8
+ #private;
9
9
  /**
10
10
  * The tabset component's ARIA label.
11
11
  */
12
- get ariaLabel(): string;
12
+ get ariaLabel(): string | undefined;
13
13
  /**
14
14
  * The tabset component's ARIA labelled by attribute.
15
15
  */
16
- get ariaLabelledBy(): string;
16
+ get ariaLabelledBy(): string | undefined;
17
17
  /**
18
18
  * The index of the currently selected tab.
19
19
  */
20
20
  get activeTabIndex(): number;
21
- private debugEl;
22
21
  constructor(fixture: ComponentFixture<any>, skyTestId: string);
23
22
  /**
24
23
  * Retrieves information about the tab at the specified index.
@@ -43,9 +42,4 @@ export declare class SkyTabsetFixture {
43
42
  * @param tabIndex The index of the tab.
44
43
  */
45
44
  clickTabClose(tabIndex: number): Promise<any>;
46
- private clickButton;
47
- private getTabsetEl;
48
- private getTabLinkEls;
49
- private getTabLinkEl;
50
- private getTextContent;
51
45
  }