@skyux/tabs 4.6.9 → 5.0.0-beta.4
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.
- package/LICENSE +21 -0
- package/bundles/skyux-tabs-testing.umd.js +324 -221
- package/bundles/skyux-tabs-testing.umd.js.map +1 -1
- package/bundles/skyux-tabs.umd.js +657 -782
- package/bundles/skyux-tabs.umd.js.map +1 -1
- package/documentation.json +5509 -0
- package/esm2015/modules/sectioned-form/sectioned-form-section.component.js +29 -32
- package/esm2015/modules/sectioned-form/sectioned-form.component.js +52 -41
- package/esm2015/modules/sectioned-form/sectioned-form.module.js +30 -19
- package/esm2015/modules/sectioned-form/sectioned-form.service.js +9 -8
- package/esm2015/modules/shared/sky-tabs-resources.module.js +41 -0
- package/esm2015/modules/tabs/tab-button.component.js +41 -47
- package/esm2015/modules/tabs/tab-index.js +2 -1
- package/esm2015/modules/tabs/tab.component.js +31 -41
- package/esm2015/modules/tabs/tabs.module.js +45 -23
- package/esm2015/modules/tabs/tabset-active-tab-unregistered-args.js +2 -1
- package/esm2015/modules/tabs/tabset-adapter.service.js +9 -8
- package/esm2015/modules/tabs/tabset-buttons-display-mode.js +2 -1
- package/esm2015/modules/tabs/tabset-nav-button.component.js +21 -26
- package/esm2015/modules/tabs/tabset-permalink.service.js +11 -15
- package/esm2015/modules/tabs/tabset-style.js +2 -1
- package/esm2015/modules/tabs/tabset-tab-indexes-change.js +2 -1
- package/esm2015/modules/tabs/tabset.component.js +56 -57
- package/esm2015/modules/tabs/tabset.service.js +10 -8
- package/esm2015/modules/vertical-tabset/vertical-tab-media-query.service.js +9 -8
- package/esm2015/modules/vertical-tabset/vertical-tab.component.js +57 -65
- package/esm2015/modules/vertical-tabset/vertical-tabset-adapter.service.js +10 -12
- package/esm2015/modules/vertical-tabset/vertical-tabset-group.component.js +75 -54
- package/esm2015/modules/vertical-tabset/vertical-tabset.component.js +70 -57
- package/esm2015/modules/vertical-tabset/vertical-tabset.module.js +47 -30
- package/esm2015/modules/vertical-tabset/vertical-tabset.service.js +19 -16
- package/esm2015/public-api.js +23 -0
- package/esm2015/skyux-tabs.js +2 -18
- package/esm2015/testing/public-api.js +3 -0
- package/esm2015/testing/skyux-tabs-testing.js +2 -2
- package/esm2015/testing/tabs/tab-fixture-tab.js +2 -1
- package/esm2015/testing/tabs/tabset-fixture.js +1 -1
- package/fesm2015/skyux-tabs-testing.js.map +1 -1
- package/fesm2015/skyux-tabs.js +596 -518
- package/fesm2015/skyux-tabs.js.map +1 -1
- package/modules/sectioned-form/sectioned-form-section.component.d.ts +3 -0
- package/modules/sectioned-form/sectioned-form.component.d.ts +3 -0
- package/modules/sectioned-form/sectioned-form.module.d.ts +9 -0
- package/modules/sectioned-form/sectioned-form.service.d.ts +3 -0
- package/modules/shared/sky-tabs-resources.module.d.ts +14 -0
- package/modules/tabs/tab-button.component.d.ts +4 -1
- package/modules/tabs/tab.component.d.ts +4 -1
- package/modules/tabs/tabs.module.d.ts +15 -0
- package/modules/tabs/tabset-adapter.service.d.ts +3 -0
- package/modules/tabs/tabset-nav-button.component.d.ts +3 -0
- package/modules/tabs/tabset-permalink.service.d.ts +3 -0
- package/modules/tabs/tabset.component.d.ts +4 -1
- package/modules/tabs/tabset.service.d.ts +3 -0
- package/modules/vertical-tabset/vertical-tab-media-query.service.d.ts +3 -0
- package/modules/vertical-tabset/vertical-tab.component.d.ts +3 -0
- package/modules/vertical-tabset/vertical-tabset-adapter.service.d.ts +3 -0
- package/modules/vertical-tabset/vertical-tabset-group.component.d.ts +3 -0
- package/modules/vertical-tabset/vertical-tabset.component.d.ts +3 -0
- package/modules/vertical-tabset/vertical-tabset.module.d.ts +11 -0
- package/modules/vertical-tabset/vertical-tabset.service.d.ts +3 -0
- package/package.json +14 -29
- package/public-api.d.ts +16 -0
- package/skyux-tabs.d.ts +2 -17
- package/testing/package.json +2 -5
- package/testing/{public_api.d.ts → public-api.d.ts} +0 -0
- package/testing/skyux-tabs-testing.d.ts +2 -1
- package/CHANGELOG.md +0 -218
- package/bundles/skyux-tabs-testing.umd.min.js +0 -16
- package/bundles/skyux-tabs-testing.umd.min.js.map +0 -1
- package/bundles/skyux-tabs.umd.min.js +0 -16
- package/bundles/skyux-tabs.umd.min.js.map +0 -1
- package/esm2015/modules/shared/tabs-resources.module.js +0 -17
- package/esm2015/plugin-resources/tabs-resources-provider.js +0 -16
- package/esm2015/public_api.js +0 -10
- package/esm2015/testing/public_api.js +0 -2
- package/esm5/modules/sectioned-form/sectioned-form-section.component.js +0 -84
- package/esm5/modules/sectioned-form/sectioned-form.component.js +0 -111
- package/esm5/modules/sectioned-form/sectioned-form.module.js +0 -31
- package/esm5/modules/sectioned-form/sectioned-form.service.js +0 -35
- package/esm5/modules/shared/tabs-resources.module.js +0 -20
- package/esm5/modules/tabs/tab-button.component.js +0 -72
- package/esm5/modules/tabs/tab-index.js +0 -1
- package/esm5/modules/tabs/tab.component.js +0 -173
- package/esm5/modules/tabs/tabs.module.js +0 -44
- package/esm5/modules/tabs/tabset-active-tab-unregistered-args.js +0 -1
- package/esm5/modules/tabs/tabset-adapter.service.js +0 -58
- package/esm5/modules/tabs/tabset-buttons-display-mode.js +0 -1
- package/esm5/modules/tabs/tabset-nav-button.component.js +0 -145
- package/esm5/modules/tabs/tabset-permalink.service.js +0 -129
- package/esm5/modules/tabs/tabset-style.js +0 -1
- package/esm5/modules/tabs/tabset-tab-indexes-change.js +0 -1
- package/esm5/modules/tabs/tabset.component.js +0 -434
- package/esm5/modules/tabs/tabset.service.js +0 -122
- package/esm5/modules/vertical-tabset/vertical-tab-media-query.service.js +0 -76
- package/esm5/modules/vertical-tabset/vertical-tab.component.js +0 -214
- package/esm5/modules/vertical-tabset/vertical-tabset-adapter.service.js +0 -51
- package/esm5/modules/vertical-tabset/vertical-tabset-group.component.js +0 -119
- package/esm5/modules/vertical-tabset/vertical-tabset.component.js +0 -145
- package/esm5/modules/vertical-tabset/vertical-tabset.module.js +0 -46
- package/esm5/modules/vertical-tabset/vertical-tabset.service.js +0 -176
- package/esm5/plugin-resources/tabs-resources-provider.js +0 -17
- package/esm5/public_api.js +0 -10
- package/esm5/skyux-tabs.js +0 -21
- package/esm5/testing/public_api.js +0 -2
- package/esm5/testing/skyux-tabs-testing.js +0 -5
- package/esm5/testing/tabs/tab-fixture-tab.js +0 -1
- package/esm5/testing/tabs/tabset-fixture.js +0 -168
- package/fesm5/skyux-tabs-testing.js +0 -174
- package/fesm5/skyux-tabs-testing.js.map +0 -1
- package/fesm5/skyux-tabs.js +0 -2182
- package/fesm5/skyux-tabs.js.map +0 -1
- package/modules/shared/tabs-resources.module.d.ts +0 -2
- package/plugin-resources/tabs-resources-provider.d.ts +0 -5
- package/public_api.d.ts +0 -9
- package/skyux-tabs.metadata.json +0 -1
- package/src/assets/img/guidelines/tabs/tabs-anatomy.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-behavior-1.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-layout-1.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-layout-2.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-layout-3.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-layout-4.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-options-1.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-options-2.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-state-collapsed-closed.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-state-collapsed-open.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-state-hover.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-state-selected.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-state-unselected.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-usage-1.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-usage-2.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-usage-3.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-usage-4.png +0 -0
- package/src/assets/img/guidelines/tabs/tabs-usage-5.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-anatomy-1.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-anatomy-2.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-layout-1.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-state-hover.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-state-selected-group.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-state-selected.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-state-unselected-group.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-state-unselected.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-usage-1.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-usage-2.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-usage-3.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-usage-4.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-usage-5.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-usage-6.png +0 -0
- package/src/assets/img/guidelines/vertical-tabs/vertical-tabs-usage-7.png +0 -0
- package/src/assets/locales/resources_en_US.json +0 -26
- package/testing/skyux-tabs-testing.metadata.json +0 -1
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
import { __awaiter, __generator } from "tslib";
|
|
2
|
-
import { By } from '@angular/platform-browser';
|
|
3
|
-
import { SkyAppTestUtility } from '@skyux-sdk/testing';
|
|
4
|
-
/**
|
|
5
|
-
* Allows interaction with a SKY UX tabset component.
|
|
6
|
-
*/
|
|
7
|
-
var SkyTabsetFixture = /** @class */ (function () {
|
|
8
|
-
function SkyTabsetFixture(fixture, skyTestId) {
|
|
9
|
-
this.fixture = fixture;
|
|
10
|
-
this.debugEl = SkyAppTestUtility.getDebugElementByTestId(fixture, skyTestId, 'sky-tabset');
|
|
11
|
-
}
|
|
12
|
-
Object.defineProperty(SkyTabsetFixture.prototype, "ariaLabel", {
|
|
13
|
-
/**
|
|
14
|
-
* The tabset component's ARIA label.
|
|
15
|
-
*/
|
|
16
|
-
get: function () {
|
|
17
|
-
var tabsetEl = this.getTabsetEl();
|
|
18
|
-
return tabsetEl.getAttribute('aria-label') || undefined;
|
|
19
|
-
},
|
|
20
|
-
enumerable: true,
|
|
21
|
-
configurable: true
|
|
22
|
-
});
|
|
23
|
-
Object.defineProperty(SkyTabsetFixture.prototype, "ariaLabelledBy", {
|
|
24
|
-
/**
|
|
25
|
-
* The tabset component's ARIA labelled by attribute.
|
|
26
|
-
*/
|
|
27
|
-
get: function () {
|
|
28
|
-
var tabsetEl = this.getTabsetEl();
|
|
29
|
-
return tabsetEl.getAttribute('aria-labelledby') || undefined;
|
|
30
|
-
},
|
|
31
|
-
enumerable: true,
|
|
32
|
-
configurable: true
|
|
33
|
-
});
|
|
34
|
-
Object.defineProperty(SkyTabsetFixture.prototype, "activeTabIndex", {
|
|
35
|
-
/**
|
|
36
|
-
* The index of the currently selected tab.
|
|
37
|
-
*/
|
|
38
|
-
get: function () {
|
|
39
|
-
var tabLinkEls = this.getTabLinkEls();
|
|
40
|
-
for (var i = 0, n = tabLinkEls.length; i < n; i++) {
|
|
41
|
-
if (tabLinkEls.item(i).classList.contains('sky-btn-tab-selected')) {
|
|
42
|
-
return i;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
return -1;
|
|
46
|
-
},
|
|
47
|
-
enumerable: true,
|
|
48
|
-
configurable: true
|
|
49
|
-
});
|
|
50
|
-
/**
|
|
51
|
-
* Retrieves information about the tab at the specified index.
|
|
52
|
-
* @param tabIndex The index of the tab.
|
|
53
|
-
*/
|
|
54
|
-
SkyTabsetFixture.prototype.getTab = function (tabIndex) {
|
|
55
|
-
var tabLinkEl = this.getTabLinkEl(tabIndex);
|
|
56
|
-
var active = this.activeTabIndex === tabIndex;
|
|
57
|
-
var disabled = tabLinkEl.classList.contains('sky-btn-tab-disabled');
|
|
58
|
-
var tabHeading = this.getTextContent(tabLinkEl.querySelector('.sky-tab-heading').childNodes[0]);
|
|
59
|
-
var tabHeaderCount = this.getTextContent(tabLinkEl.querySelector('.sky-tab-header-count'));
|
|
60
|
-
var permalinkValue;
|
|
61
|
-
if (tabLinkEl.href) {
|
|
62
|
-
var permalink = tabLinkEl.href.split('?')[1];
|
|
63
|
-
if (permalink) {
|
|
64
|
-
var permalinkParts = permalink.split('=');
|
|
65
|
-
permalinkValue = decodeURIComponent(permalinkParts[1]);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
return {
|
|
69
|
-
active: active,
|
|
70
|
-
disabled: disabled,
|
|
71
|
-
permalinkValue: permalinkValue,
|
|
72
|
-
tabHeaderCount: tabHeaderCount,
|
|
73
|
-
tabHeading: tabHeading
|
|
74
|
-
};
|
|
75
|
-
};
|
|
76
|
-
/**
|
|
77
|
-
* Clicks the tabset's "new" button.
|
|
78
|
-
*/
|
|
79
|
-
SkyTabsetFixture.prototype.clickNewButton = function () {
|
|
80
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
81
|
-
return __generator(this, function (_a) {
|
|
82
|
-
return [2 /*return*/, this.clickButton('sky-tabset-btn-new')];
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
};
|
|
86
|
-
/**
|
|
87
|
-
* Clicks the tabset's "open" button.
|
|
88
|
-
*/
|
|
89
|
-
SkyTabsetFixture.prototype.clickOpenButton = function () {
|
|
90
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
91
|
-
return __generator(this, function (_a) {
|
|
92
|
-
return [2 /*return*/, this.clickButton('sky-tabset-btn-open')];
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
};
|
|
96
|
-
/**
|
|
97
|
-
* Clicks the tab button at the specified index.
|
|
98
|
-
* @param tabIndex The index of the tab.
|
|
99
|
-
*/
|
|
100
|
-
SkyTabsetFixture.prototype.clickTab = function (tabIndex) {
|
|
101
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
102
|
-
var tabLinkEl;
|
|
103
|
-
return __generator(this, function (_a) {
|
|
104
|
-
tabLinkEl = this.getTabLinkEl(tabIndex);
|
|
105
|
-
if (!tabLinkEl) {
|
|
106
|
-
throw new Error("There is no tab at index " + tabIndex + ".");
|
|
107
|
-
}
|
|
108
|
-
tabLinkEl.click();
|
|
109
|
-
this.fixture.detectChanges();
|
|
110
|
-
return [2 /*return*/, this.fixture.whenStable()];
|
|
111
|
-
});
|
|
112
|
-
});
|
|
113
|
-
};
|
|
114
|
-
/**
|
|
115
|
-
* Click's the tab's close button at the specified index.
|
|
116
|
-
* @param tabIndex The index of the tab.
|
|
117
|
-
*/
|
|
118
|
-
SkyTabsetFixture.prototype.clickTabClose = function (tabIndex) {
|
|
119
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
120
|
-
var tabWrapperEl, closeBtnEl;
|
|
121
|
-
return __generator(this, function (_a) {
|
|
122
|
-
tabWrapperEl = this.getTabsetEl().querySelectorAll(".sky-tabset-tabs .sky-btn-tab-wrapper")[tabIndex];
|
|
123
|
-
if (!tabWrapperEl) {
|
|
124
|
-
throw new Error("There is no tab at index " + tabIndex + ".");
|
|
125
|
-
}
|
|
126
|
-
closeBtnEl = tabWrapperEl.querySelector('.sky-btn-tab-close');
|
|
127
|
-
if (!closeBtnEl) {
|
|
128
|
-
throw new Error('The specified tab does not have a close button.');
|
|
129
|
-
}
|
|
130
|
-
closeBtnEl.click();
|
|
131
|
-
this.fixture.detectChanges();
|
|
132
|
-
return [2 /*return*/, this.fixture.whenStable()];
|
|
133
|
-
});
|
|
134
|
-
});
|
|
135
|
-
};
|
|
136
|
-
SkyTabsetFixture.prototype.clickButton = function (buttonCls) {
|
|
137
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
138
|
-
var tabsetEl, newButtonEl;
|
|
139
|
-
return __generator(this, function (_a) {
|
|
140
|
-
tabsetEl = this.getTabsetEl();
|
|
141
|
-
newButtonEl = tabsetEl.querySelector(".sky-tabset-btns ." + buttonCls);
|
|
142
|
-
newButtonEl.click();
|
|
143
|
-
this.fixture.detectChanges();
|
|
144
|
-
return [2 /*return*/, this.fixture.whenStable()];
|
|
145
|
-
});
|
|
146
|
-
});
|
|
147
|
-
};
|
|
148
|
-
SkyTabsetFixture.prototype.getTabsetEl = function () {
|
|
149
|
-
var tabsetEl = this.debugEl.query(By.css('.sky-tabset')).nativeElement;
|
|
150
|
-
return tabsetEl;
|
|
151
|
-
};
|
|
152
|
-
SkyTabsetFixture.prototype.getTabLinkEls = function () {
|
|
153
|
-
return this.getTabsetEl().querySelectorAll(".sky-tabset-tabs .sky-btn-tab");
|
|
154
|
-
};
|
|
155
|
-
SkyTabsetFixture.prototype.getTabLinkEl = function (tabIndex) {
|
|
156
|
-
var tabLinkEl = this.getTabLinkEls().item(tabIndex);
|
|
157
|
-
if (!tabLinkEl) {
|
|
158
|
-
throw new Error("There is no tab at index " + tabIndex + ".");
|
|
159
|
-
}
|
|
160
|
-
return tabLinkEl;
|
|
161
|
-
};
|
|
162
|
-
SkyTabsetFixture.prototype.getTextContent = function (el) {
|
|
163
|
-
return (el && el.textContent.trim()) || undefined;
|
|
164
|
-
};
|
|
165
|
-
return SkyTabsetFixture;
|
|
166
|
-
}());
|
|
167
|
-
export { SkyTabsetFixture };
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFic2V0LWZpeHR1cmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2t5dXgvdGFicy90ZXN0aW5nLyIsInNvdXJjZXMiOlsidGFicy90YWJzZXQtZml4dHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBUUEsT0FBTyxFQUNMLEVBQUUsRUFDSCxNQUFNLDJCQUEyQixDQUFDO0FBRW5DLE9BQU8sRUFDTCxpQkFBaUIsRUFDbEIsTUFBTSxvQkFBb0IsQ0FBQztBQU01Qjs7R0FFRztBQUNIO0lBbUNFLDBCQUNVLE9BQThCLEVBQ3RDLFNBQWlCO1FBRFQsWUFBTyxHQUFQLE9BQU8sQ0FBdUI7UUFHdEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzdGLENBQUM7SUFuQ0Qsc0JBQVcsdUNBQVM7UUFIcEI7O1dBRUc7YUFDSDtZQUNFLElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwQyxPQUFPLFFBQVEsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLElBQUksU0FBUyxDQUFDO1FBQzFELENBQUM7OztPQUFBO0lBS0Qsc0JBQVcsNENBQWM7UUFIekI7O1dBRUc7YUFDSDtZQUNFLElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwQyxPQUFPLFFBQVEsQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsSUFBSSxTQUFTLENBQUM7UUFDL0QsQ0FBQzs7O09BQUE7SUFLRCxzQkFBVyw0Q0FBYztRQUh6Qjs7V0FFRzthQUNIO1lBQ0UsSUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBRXhDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQ2pELElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLHNCQUFzQixDQUFDLEVBQUU7b0JBQ2pFLE9BQU8sQ0FBQyxDQUFDO2lCQUNWO2FBQ0Y7WUFFRCxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ1osQ0FBQzs7O09BQUE7SUFXRDs7O09BR0c7SUFDSSxpQ0FBTSxHQUFiLFVBQWMsUUFBZ0I7UUFDNUIsSUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU5QyxJQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsY0FBYyxLQUFLLFFBQVEsQ0FBQztRQUNoRCxJQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3RFLElBQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQ3BDLFNBQVMsQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQzFELENBQUM7UUFDRixJQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDO1FBRTdGLElBQUksY0FBc0IsQ0FBQztRQUUzQixJQUFJLFNBQVMsQ0FBQyxJQUFJLEVBQUU7WUFDbEIsSUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0MsSUFBSSxTQUFTLEVBQUU7Z0JBQ2IsSUFBTSxjQUFjLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFFNUMsY0FBYyxHQUFHLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3hEO1NBQ0Y7UUFFRCxPQUFPO1lBQ0wsTUFBTSxRQUFBO1lBQ04sUUFBUSxVQUFBO1lBQ1IsY0FBYyxnQkFBQTtZQUNkLGNBQWMsZ0JBQUE7WUFDZCxVQUFVLFlBQUE7U0FDWCxDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ1UseUNBQWMsR0FBM0I7OztnQkFDRSxzQkFBTyxJQUFJLENBQUMsV0FBVyxDQUFDLG9CQUFvQixDQUFDLEVBQUM7OztLQUMvQztJQUVEOztPQUVHO0lBQ1UsMENBQWUsR0FBNUI7OztnQkFDRSxzQkFBTyxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLEVBQUM7OztLQUNoRDtJQUVEOzs7T0FHRztJQUNVLG1DQUFRLEdBQXJCLFVBQXNCLFFBQWdCOzs7O2dCQUM5QixTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFFOUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtvQkFDZCxNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE0QixRQUFRLE1BQUcsQ0FBQyxDQUFDO2lCQUMxRDtnQkFFRCxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBRWxCLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQzdCLHNCQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUM7OztLQUNsQztJQUVEOzs7T0FHRztJQUNVLHdDQUFhLEdBQTFCLFVBQTJCLFFBQWdCOzs7O2dCQUNuQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLGdCQUFnQixDQUN0RCx1Q0FBdUMsQ0FDeEMsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFFWixJQUFJLENBQUMsWUFBWSxFQUFFO29CQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE0QixRQUFRLE1BQUcsQ0FBQyxDQUFDO2lCQUMxRDtnQkFFSyxVQUFVLEdBQUcsWUFBWSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBc0IsQ0FBQztnQkFFekYsSUFBSSxDQUFDLFVBQVUsRUFBRTtvQkFDZixNQUFNLElBQUksS0FBSyxDQUFDLGlEQUFpRCxDQUFDLENBQUM7aUJBQ3BFO2dCQUVELFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFFbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDN0Isc0JBQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsRUFBQzs7O0tBQ2xDO0lBRWEsc0NBQVcsR0FBekIsVUFBMEIsU0FBaUI7Ozs7Z0JBQ25DLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBRTlCLFdBQVcsR0FDZixRQUFRLENBQUMsYUFBYSxDQUFDLHVCQUFxQixTQUFXLENBQXNCLENBQUM7Z0JBRWhGLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFFcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDN0Isc0JBQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsRUFBQzs7O0tBQ2xDO0lBRU8sc0NBQVcsR0FBbkI7UUFDRSxJQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO1FBRXpFLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFTyx3Q0FBYSxHQUFyQjtRQUNFLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLGdCQUFnQixDQUN4QywrQkFBK0IsQ0FDaEMsQ0FBQztJQUNKLENBQUM7SUFFTyx1Q0FBWSxHQUFwQixVQUFxQixRQUFnQjtRQUNuQyxJQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXRELElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDZCxNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE0QixRQUFRLE1BQUcsQ0FBQyxDQUFDO1NBQzFEO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVPLHlDQUFjLEdBQXRCLFVBQXVCLEVBQWtCO1FBQ3ZDLE9BQU8sQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLFNBQVMsQ0FBQztJQUNwRCxDQUFDO0lBRUgsdUJBQUM7QUFBRCxDQUFDLEFBMUtELElBMEtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50Rml4dHVyZVxufSBmcm9tICdAYW5ndWxhci9jb3JlL3Rlc3RpbmcnO1xuXG5pbXBvcnQge1xuICBEZWJ1Z0VsZW1lbnRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIEJ5XG59IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5pbXBvcnQge1xuICBTa3lBcHBUZXN0VXRpbGl0eVxufSBmcm9tICdAc2t5dXgtc2RrL3Rlc3RpbmcnO1xuXG5pbXBvcnQge1xuICBTa3lUYWJzZXRGaXh0dXJlVGFiXG59IGZyb20gJy4vdGFiLWZpeHR1cmUtdGFiJztcblxuLyoqXG4gKiBBbGxvd3MgaW50ZXJhY3Rpb24gd2l0aCBhIFNLWSBVWCB0YWJzZXQgY29tcG9uZW50LlxuICovXG5leHBvcnQgY2xhc3MgU2t5VGFic2V0Rml4dHVyZSB7XG5cbiAgLyoqXG4gICAqIFRoZSB0YWJzZXQgY29tcG9uZW50J3MgQVJJQSBsYWJlbC5cbiAgICovXG4gIHB1YmxpYyBnZXQgYXJpYUxhYmVsKCk6IHN0cmluZyB7XG4gICAgY29uc3QgdGFic2V0RWwgPSB0aGlzLmdldFRhYnNldEVsKCk7XG4gICAgcmV0dXJuIHRhYnNldEVsLmdldEF0dHJpYnV0ZSgnYXJpYS1sYWJlbCcpIHx8IHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgdGFic2V0IGNvbXBvbmVudCdzIEFSSUEgbGFiZWxsZWQgYnkgYXR0cmlidXRlLlxuICAgKi9cbiAgcHVibGljIGdldCBhcmlhTGFiZWxsZWRCeSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IHRhYnNldEVsID0gdGhpcy5nZXRUYWJzZXRFbCgpO1xuICAgIHJldHVybiB0YWJzZXRFbC5nZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWxsZWRieScpIHx8IHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgaW5kZXggb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCB0YWIuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGFjdGl2ZVRhYkluZGV4KCk6IG51bWJlciB7XG4gICAgY29uc3QgdGFiTGlua0VscyA9IHRoaXMuZ2V0VGFiTGlua0VscygpO1xuXG4gICAgZm9yIChsZXQgaSA9IDAsIG4gPSB0YWJMaW5rRWxzLmxlbmd0aDsgaSA8IG47IGkrKykge1xuICAgICAgaWYgKHRhYkxpbmtFbHMuaXRlbShpKS5jbGFzc0xpc3QuY29udGFpbnMoJ3NreS1idG4tdGFiLXNlbGVjdGVkJykpIHtcbiAgICAgICAgcmV0dXJuIGk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIC0xO1xuICB9XG5cbiAgcHJpdmF0ZSBkZWJ1Z0VsOiBEZWJ1Z0VsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmaXh0dXJlOiBDb21wb25lbnRGaXh0dXJlPGFueT4sXG4gICAgc2t5VGVzdElkOiBzdHJpbmdcbiAgKSB7XG4gICAgdGhpcy5kZWJ1Z0VsID0gU2t5QXBwVGVzdFV0aWxpdHkuZ2V0RGVidWdFbGVtZW50QnlUZXN0SWQoZml4dHVyZSwgc2t5VGVzdElkLCAnc2t5LXRhYnNldCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdGFiIGF0IHRoZSBzcGVjaWZpZWQgaW5kZXguXG4gICAqIEBwYXJhbSB0YWJJbmRleCBUaGUgaW5kZXggb2YgdGhlIHRhYi5cbiAgICovXG4gIHB1YmxpYyBnZXRUYWIodGFiSW5kZXg6IG51bWJlcik6IFNreVRhYnNldEZpeHR1cmVUYWIge1xuICAgIGNvbnN0IHRhYkxpbmtFbCA9IHRoaXMuZ2V0VGFiTGlua0VsKHRhYkluZGV4KTtcblxuICAgIGNvbnN0IGFjdGl2ZSA9IHRoaXMuYWN0aXZlVGFiSW5kZXggPT09IHRhYkluZGV4O1xuICAgIGNvbnN0IGRpc2FibGVkID0gdGFiTGlua0VsLmNsYXNzTGlzdC5jb250YWlucygnc2t5LWJ0bi10YWItZGlzYWJsZWQnKTtcbiAgICBjb25zdCB0YWJIZWFkaW5nID0gdGhpcy5nZXRUZXh0Q29udGVudChcbiAgICAgIHRhYkxpbmtFbC5xdWVyeVNlbGVjdG9yKCcuc2t5LXRhYi1oZWFkaW5nJykuY2hpbGROb2Rlc1swXVxuICAgICk7XG4gICAgY29uc3QgdGFiSGVhZGVyQ291bnQgPSB0aGlzLmdldFRleHRDb250ZW50KHRhYkxpbmtFbC5xdWVyeVNlbGVjdG9yKCcuc2t5LXRhYi1oZWFkZXItY291bnQnKSk7XG5cbiAgICBsZXQgcGVybWFsaW5rVmFsdWU6IHN0cmluZztcblxuICAgIGlmICh0YWJMaW5rRWwuaHJlZikge1xuICAgICAgY29uc3QgcGVybWFsaW5rID0gdGFiTGlua0VsLmhyZWYuc3BsaXQoJz8nKVsxXTtcbiAgICAgIGlmIChwZXJtYWxpbmspIHtcbiAgICAgICAgY29uc3QgcGVybWFsaW5rUGFydHMgPSBwZXJtYWxpbmsuc3BsaXQoJz0nKTtcblxuICAgICAgICBwZXJtYWxpbmtWYWx1ZSA9IGRlY29kZVVSSUNvbXBvbmVudChwZXJtYWxpbmtQYXJ0c1sxXSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGFjdGl2ZSxcbiAgICAgIGRpc2FibGVkLFxuICAgICAgcGVybWFsaW5rVmFsdWUsXG4gICAgICB0YWJIZWFkZXJDb3VudCxcbiAgICAgIHRhYkhlYWRpbmdcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyB0aGUgdGFic2V0J3MgXCJuZXdcIiBidXR0b24uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tOZXdCdXR0b24oKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5jbGlja0J1dHRvbignc2t5LXRhYnNldC1idG4tbmV3Jyk7XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2tzIHRoZSB0YWJzZXQncyBcIm9wZW5cIiBidXR0b24uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tPcGVuQnV0dG9uKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuY2xpY2tCdXR0b24oJ3NreS10YWJzZXQtYnRuLW9wZW4nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIHRhYiBidXR0b24gYXQgdGhlIHNwZWNpZmllZCBpbmRleC5cbiAgICogQHBhcmFtIHRhYkluZGV4IFRoZSBpbmRleCBvZiB0aGUgdGFiLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrVGFiKHRhYkluZGV4OiBudW1iZXIpOiBQcm9taXNlPGFueT4ge1xuICAgIGNvbnN0IHRhYkxpbmtFbCA9IHRoaXMuZ2V0VGFiTGlua0VsKHRhYkluZGV4KTtcblxuICAgIGlmICghdGFiTGlua0VsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZXJlIGlzIG5vIHRhYiBhdCBpbmRleCAke3RhYkluZGV4fS5gKTtcbiAgICB9XG5cbiAgICB0YWJMaW5rRWwuY2xpY2soKTtcblxuICAgIHRoaXMuZml4dHVyZS5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgcmV0dXJuIHRoaXMuZml4dHVyZS53aGVuU3RhYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2sncyB0aGUgdGFiJ3MgY2xvc2UgYnV0dG9uIGF0IHRoZSBzcGVjaWZpZWQgaW5kZXguXG4gICAqIEBwYXJhbSB0YWJJbmRleCBUaGUgaW5kZXggb2YgdGhlIHRhYi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja1RhYkNsb3NlKHRhYkluZGV4OiBudW1iZXIpOiBQcm9taXNlPGFueT4ge1xuICAgIGNvbnN0IHRhYldyYXBwZXJFbCA9IHRoaXMuZ2V0VGFic2V0RWwoKS5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgYC5za3ktdGFic2V0LXRhYnMgLnNreS1idG4tdGFiLXdyYXBwZXJgXG4gICAgKVt0YWJJbmRleF07XG5cbiAgICBpZiAoIXRhYldyYXBwZXJFbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGVyZSBpcyBubyB0YWIgYXQgaW5kZXggJHt0YWJJbmRleH0uYCk7XG4gICAgfVxuXG4gICAgY29uc3QgY2xvc2VCdG5FbCA9IHRhYldyYXBwZXJFbC5xdWVyeVNlbGVjdG9yKCcuc2t5LWJ0bi10YWItY2xvc2UnKSBhcyBIVE1MQnV0dG9uRWxlbWVudDtcblxuICAgIGlmICghY2xvc2VCdG5FbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgc3BlY2lmaWVkIHRhYiBkb2VzIG5vdCBoYXZlIGEgY2xvc2UgYnV0dG9uLicpO1xuICAgIH1cblxuICAgIGNsb3NlQnRuRWwuY2xpY2soKTtcblxuICAgIHRoaXMuZml4dHVyZS5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgcmV0dXJuIHRoaXMuZml4dHVyZS53aGVuU3RhYmxlKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNsaWNrQnV0dG9uKGJ1dHRvbkNsczogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICBjb25zdCB0YWJzZXRFbCA9IHRoaXMuZ2V0VGFic2V0RWwoKTtcblxuICAgIGNvbnN0IG5ld0J1dHRvbkVsID1cbiAgICAgIHRhYnNldEVsLnF1ZXJ5U2VsZWN0b3IoYC5za3ktdGFic2V0LWJ0bnMgLiR7YnV0dG9uQ2xzfWApIGFzIEhUTUxCdXR0b25FbGVtZW50O1xuXG4gICAgbmV3QnV0dG9uRWwuY2xpY2soKTtcblxuICAgIHRoaXMuZml4dHVyZS5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgcmV0dXJuIHRoaXMuZml4dHVyZS53aGVuU3RhYmxlKCk7XG4gIH1cblxuICBwcml2YXRlIGdldFRhYnNldEVsKCk6IEhUTUxEaXZFbGVtZW50IHtcbiAgICBjb25zdCB0YWJzZXRFbCA9IHRoaXMuZGVidWdFbC5xdWVyeShCeS5jc3MoJy5za3ktdGFic2V0JykpLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICByZXR1cm4gdGFic2V0RWw7XG4gIH1cblxuICBwcml2YXRlIGdldFRhYkxpbmtFbHMoKTogTm9kZUxpc3RPZjxIVE1MQW5jaG9yRWxlbWVudD4ge1xuICAgIHJldHVybiB0aGlzLmdldFRhYnNldEVsKCkucXVlcnlTZWxlY3RvckFsbChcbiAgICAgIGAuc2t5LXRhYnNldC10YWJzIC5za3ktYnRuLXRhYmBcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUYWJMaW5rRWwodGFiSW5kZXg6IG51bWJlcik6IEhUTUxBbmNob3JFbGVtZW50IHtcbiAgICBjb25zdCB0YWJMaW5rRWwgPSB0aGlzLmdldFRhYkxpbmtFbHMoKS5pdGVtKHRhYkluZGV4KTtcblxuICAgIGlmICghdGFiTGlua0VsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZXJlIGlzIG5vIHRhYiBhdCBpbmRleCAke3RhYkluZGV4fS5gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGFiTGlua0VsO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUZXh0Q29udGVudChlbDogRWxlbWVudCB8IE5vZGUpOiBzdHJpbmcge1xuICAgIHJldHVybiAoZWwgJiYgZWwudGV4dENvbnRlbnQudHJpbSgpKSB8fCB1bmRlZmluZWQ7XG4gIH1cblxufVxuIl19
|
|
@@ -1,174 +0,0 @@
|
|
|
1
|
-
import { __awaiter, __generator } from 'tslib';
|
|
2
|
-
import { By } from '@angular/platform-browser';
|
|
3
|
-
import { SkyAppTestUtility } from '@skyux-sdk/testing';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Allows interaction with a SKY UX tabset component.
|
|
7
|
-
*/
|
|
8
|
-
var SkyTabsetFixture = /** @class */ (function () {
|
|
9
|
-
function SkyTabsetFixture(fixture, skyTestId) {
|
|
10
|
-
this.fixture = fixture;
|
|
11
|
-
this.debugEl = SkyAppTestUtility.getDebugElementByTestId(fixture, skyTestId, 'sky-tabset');
|
|
12
|
-
}
|
|
13
|
-
Object.defineProperty(SkyTabsetFixture.prototype, "ariaLabel", {
|
|
14
|
-
/**
|
|
15
|
-
* The tabset component's ARIA label.
|
|
16
|
-
*/
|
|
17
|
-
get: function () {
|
|
18
|
-
var tabsetEl = this.getTabsetEl();
|
|
19
|
-
return tabsetEl.getAttribute('aria-label') || undefined;
|
|
20
|
-
},
|
|
21
|
-
enumerable: true,
|
|
22
|
-
configurable: true
|
|
23
|
-
});
|
|
24
|
-
Object.defineProperty(SkyTabsetFixture.prototype, "ariaLabelledBy", {
|
|
25
|
-
/**
|
|
26
|
-
* The tabset component's ARIA labelled by attribute.
|
|
27
|
-
*/
|
|
28
|
-
get: function () {
|
|
29
|
-
var tabsetEl = this.getTabsetEl();
|
|
30
|
-
return tabsetEl.getAttribute('aria-labelledby') || undefined;
|
|
31
|
-
},
|
|
32
|
-
enumerable: true,
|
|
33
|
-
configurable: true
|
|
34
|
-
});
|
|
35
|
-
Object.defineProperty(SkyTabsetFixture.prototype, "activeTabIndex", {
|
|
36
|
-
/**
|
|
37
|
-
* The index of the currently selected tab.
|
|
38
|
-
*/
|
|
39
|
-
get: function () {
|
|
40
|
-
var tabLinkEls = this.getTabLinkEls();
|
|
41
|
-
for (var i = 0, n = tabLinkEls.length; i < n; i++) {
|
|
42
|
-
if (tabLinkEls.item(i).classList.contains('sky-btn-tab-selected')) {
|
|
43
|
-
return i;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
return -1;
|
|
47
|
-
},
|
|
48
|
-
enumerable: true,
|
|
49
|
-
configurable: true
|
|
50
|
-
});
|
|
51
|
-
/**
|
|
52
|
-
* Retrieves information about the tab at the specified index.
|
|
53
|
-
* @param tabIndex The index of the tab.
|
|
54
|
-
*/
|
|
55
|
-
SkyTabsetFixture.prototype.getTab = function (tabIndex) {
|
|
56
|
-
var tabLinkEl = this.getTabLinkEl(tabIndex);
|
|
57
|
-
var active = this.activeTabIndex === tabIndex;
|
|
58
|
-
var disabled = tabLinkEl.classList.contains('sky-btn-tab-disabled');
|
|
59
|
-
var tabHeading = this.getTextContent(tabLinkEl.querySelector('.sky-tab-heading').childNodes[0]);
|
|
60
|
-
var tabHeaderCount = this.getTextContent(tabLinkEl.querySelector('.sky-tab-header-count'));
|
|
61
|
-
var permalinkValue;
|
|
62
|
-
if (tabLinkEl.href) {
|
|
63
|
-
var permalink = tabLinkEl.href.split('?')[1];
|
|
64
|
-
if (permalink) {
|
|
65
|
-
var permalinkParts = permalink.split('=');
|
|
66
|
-
permalinkValue = decodeURIComponent(permalinkParts[1]);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
return {
|
|
70
|
-
active: active,
|
|
71
|
-
disabled: disabled,
|
|
72
|
-
permalinkValue: permalinkValue,
|
|
73
|
-
tabHeaderCount: tabHeaderCount,
|
|
74
|
-
tabHeading: tabHeading
|
|
75
|
-
};
|
|
76
|
-
};
|
|
77
|
-
/**
|
|
78
|
-
* Clicks the tabset's "new" button.
|
|
79
|
-
*/
|
|
80
|
-
SkyTabsetFixture.prototype.clickNewButton = function () {
|
|
81
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
82
|
-
return __generator(this, function (_a) {
|
|
83
|
-
return [2 /*return*/, this.clickButton('sky-tabset-btn-new')];
|
|
84
|
-
});
|
|
85
|
-
});
|
|
86
|
-
};
|
|
87
|
-
/**
|
|
88
|
-
* Clicks the tabset's "open" button.
|
|
89
|
-
*/
|
|
90
|
-
SkyTabsetFixture.prototype.clickOpenButton = function () {
|
|
91
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
92
|
-
return __generator(this, function (_a) {
|
|
93
|
-
return [2 /*return*/, this.clickButton('sky-tabset-btn-open')];
|
|
94
|
-
});
|
|
95
|
-
});
|
|
96
|
-
};
|
|
97
|
-
/**
|
|
98
|
-
* Clicks the tab button at the specified index.
|
|
99
|
-
* @param tabIndex The index of the tab.
|
|
100
|
-
*/
|
|
101
|
-
SkyTabsetFixture.prototype.clickTab = function (tabIndex) {
|
|
102
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
103
|
-
var tabLinkEl;
|
|
104
|
-
return __generator(this, function (_a) {
|
|
105
|
-
tabLinkEl = this.getTabLinkEl(tabIndex);
|
|
106
|
-
if (!tabLinkEl) {
|
|
107
|
-
throw new Error("There is no tab at index " + tabIndex + ".");
|
|
108
|
-
}
|
|
109
|
-
tabLinkEl.click();
|
|
110
|
-
this.fixture.detectChanges();
|
|
111
|
-
return [2 /*return*/, this.fixture.whenStable()];
|
|
112
|
-
});
|
|
113
|
-
});
|
|
114
|
-
};
|
|
115
|
-
/**
|
|
116
|
-
* Click's the tab's close button at the specified index.
|
|
117
|
-
* @param tabIndex The index of the tab.
|
|
118
|
-
*/
|
|
119
|
-
SkyTabsetFixture.prototype.clickTabClose = function (tabIndex) {
|
|
120
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
121
|
-
var tabWrapperEl, closeBtnEl;
|
|
122
|
-
return __generator(this, function (_a) {
|
|
123
|
-
tabWrapperEl = this.getTabsetEl().querySelectorAll(".sky-tabset-tabs .sky-btn-tab-wrapper")[tabIndex];
|
|
124
|
-
if (!tabWrapperEl) {
|
|
125
|
-
throw new Error("There is no tab at index " + tabIndex + ".");
|
|
126
|
-
}
|
|
127
|
-
closeBtnEl = tabWrapperEl.querySelector('.sky-btn-tab-close');
|
|
128
|
-
if (!closeBtnEl) {
|
|
129
|
-
throw new Error('The specified tab does not have a close button.');
|
|
130
|
-
}
|
|
131
|
-
closeBtnEl.click();
|
|
132
|
-
this.fixture.detectChanges();
|
|
133
|
-
return [2 /*return*/, this.fixture.whenStable()];
|
|
134
|
-
});
|
|
135
|
-
});
|
|
136
|
-
};
|
|
137
|
-
SkyTabsetFixture.prototype.clickButton = function (buttonCls) {
|
|
138
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
139
|
-
var tabsetEl, newButtonEl;
|
|
140
|
-
return __generator(this, function (_a) {
|
|
141
|
-
tabsetEl = this.getTabsetEl();
|
|
142
|
-
newButtonEl = tabsetEl.querySelector(".sky-tabset-btns ." + buttonCls);
|
|
143
|
-
newButtonEl.click();
|
|
144
|
-
this.fixture.detectChanges();
|
|
145
|
-
return [2 /*return*/, this.fixture.whenStable()];
|
|
146
|
-
});
|
|
147
|
-
});
|
|
148
|
-
};
|
|
149
|
-
SkyTabsetFixture.prototype.getTabsetEl = function () {
|
|
150
|
-
var tabsetEl = this.debugEl.query(By.css('.sky-tabset')).nativeElement;
|
|
151
|
-
return tabsetEl;
|
|
152
|
-
};
|
|
153
|
-
SkyTabsetFixture.prototype.getTabLinkEls = function () {
|
|
154
|
-
return this.getTabsetEl().querySelectorAll(".sky-tabset-tabs .sky-btn-tab");
|
|
155
|
-
};
|
|
156
|
-
SkyTabsetFixture.prototype.getTabLinkEl = function (tabIndex) {
|
|
157
|
-
var tabLinkEl = this.getTabLinkEls().item(tabIndex);
|
|
158
|
-
if (!tabLinkEl) {
|
|
159
|
-
throw new Error("There is no tab at index " + tabIndex + ".");
|
|
160
|
-
}
|
|
161
|
-
return tabLinkEl;
|
|
162
|
-
};
|
|
163
|
-
SkyTabsetFixture.prototype.getTextContent = function (el) {
|
|
164
|
-
return (el && el.textContent.trim()) || undefined;
|
|
165
|
-
};
|
|
166
|
-
return SkyTabsetFixture;
|
|
167
|
-
}());
|
|
168
|
-
|
|
169
|
-
/**
|
|
170
|
-
* Generated bundle index. Do not edit.
|
|
171
|
-
*/
|
|
172
|
-
|
|
173
|
-
export { SkyTabsetFixture };
|
|
174
|
-
//# sourceMappingURL=skyux-tabs-testing.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-tabs-testing.js","sources":["ng://@skyux/tabs/testing/tabs/tabset-fixture.ts","ng://@skyux/tabs/testing/skyux-tabs-testing.ts"],"sourcesContent":["import {\n ComponentFixture\n} from '@angular/core/testing';\n\nimport {\n DebugElement\n} from '@angular/core';\n\nimport {\n By\n} from '@angular/platform-browser';\n\nimport {\n SkyAppTestUtility\n} from '@skyux-sdk/testing';\n\nimport {\n SkyTabsetFixtureTab\n} from './tab-fixture-tab';\n\n/**\n * Allows interaction with a SKY UX tabset component.\n */\nexport class SkyTabsetFixture {\n\n /**\n * The tabset component's ARIA label.\n */\n public get ariaLabel(): string {\n const tabsetEl = this.getTabsetEl();\n return tabsetEl.getAttribute('aria-label') || undefined;\n }\n\n /**\n * The tabset component's ARIA labelled by attribute.\n */\n public get ariaLabelledBy(): string {\n const tabsetEl = this.getTabsetEl();\n return tabsetEl.getAttribute('aria-labelledby') || undefined;\n }\n\n /**\n * The index of the currently selected tab.\n */\n public get activeTabIndex(): number {\n const tabLinkEls = this.getTabLinkEls();\n\n for (let i = 0, n = tabLinkEls.length; i < n; i++) {\n if (tabLinkEls.item(i).classList.contains('sky-btn-tab-selected')) {\n return i;\n }\n }\n\n return -1;\n }\n\n private debugEl: DebugElement;\n\n constructor(\n private fixture: ComponentFixture<any>,\n skyTestId: string\n ) {\n this.debugEl = SkyAppTestUtility.getDebugElementByTestId(fixture, skyTestId, 'sky-tabset');\n }\n\n /**\n * Retrieves information about the tab at the specified index.\n * @param tabIndex The index of the tab.\n */\n public getTab(tabIndex: number): SkyTabsetFixtureTab {\n const tabLinkEl = this.getTabLinkEl(tabIndex);\n\n const active = this.activeTabIndex === tabIndex;\n const disabled = tabLinkEl.classList.contains('sky-btn-tab-disabled');\n const tabHeading = this.getTextContent(\n tabLinkEl.querySelector('.sky-tab-heading').childNodes[0]\n );\n const tabHeaderCount = this.getTextContent(tabLinkEl.querySelector('.sky-tab-header-count'));\n\n let permalinkValue: string;\n\n if (tabLinkEl.href) {\n const permalink = tabLinkEl.href.split('?')[1];\n if (permalink) {\n const permalinkParts = permalink.split('=');\n\n permalinkValue = decodeURIComponent(permalinkParts[1]);\n }\n }\n\n return {\n active,\n disabled,\n permalinkValue,\n tabHeaderCount,\n tabHeading\n };\n }\n\n /**\n * Clicks the tabset's \"new\" button.\n */\n public async clickNewButton(): Promise<any> {\n return this.clickButton('sky-tabset-btn-new');\n }\n\n /**\n * Clicks the tabset's \"open\" button.\n */\n public async clickOpenButton(): Promise<any> {\n return this.clickButton('sky-tabset-btn-open');\n }\n\n /**\n * Clicks the tab button at the specified index.\n * @param tabIndex The index of the tab.\n */\n public async clickTab(tabIndex: number): Promise<any> {\n const tabLinkEl = this.getTabLinkEl(tabIndex);\n\n if (!tabLinkEl) {\n throw new Error(`There is no tab at index ${tabIndex}.`);\n }\n\n tabLinkEl.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n /**\n * Click's the tab's close button at the specified index.\n * @param tabIndex The index of the tab.\n */\n public async clickTabClose(tabIndex: number): Promise<any> {\n const tabWrapperEl = this.getTabsetEl().querySelectorAll(\n `.sky-tabset-tabs .sky-btn-tab-wrapper`\n )[tabIndex];\n\n if (!tabWrapperEl) {\n throw new Error(`There is no tab at index ${tabIndex}.`);\n }\n\n const closeBtnEl = tabWrapperEl.querySelector('.sky-btn-tab-close') as HTMLButtonElement;\n\n if (!closeBtnEl) {\n throw new Error('The specified tab does not have a close button.');\n }\n\n closeBtnEl.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n private async clickButton(buttonCls: string): Promise<any> {\n const tabsetEl = this.getTabsetEl();\n\n const newButtonEl =\n tabsetEl.querySelector(`.sky-tabset-btns .${buttonCls}`) as HTMLButtonElement;\n\n newButtonEl.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n private getTabsetEl(): HTMLDivElement {\n const tabsetEl = this.debugEl.query(By.css('.sky-tabset')).nativeElement;\n\n return tabsetEl;\n }\n\n private getTabLinkEls(): NodeListOf<HTMLAnchorElement> {\n return this.getTabsetEl().querySelectorAll(\n `.sky-tabset-tabs .sky-btn-tab`\n );\n }\n\n private getTabLinkEl(tabIndex: number): HTMLAnchorElement {\n const tabLinkEl = this.getTabLinkEls().item(tabIndex);\n\n if (!tabLinkEl) {\n throw new Error(`There is no tab at index ${tabIndex}.`);\n }\n\n return tabLinkEl;\n }\n\n private getTextContent(el: Element | Node): string {\n return (el && el.textContent.trim()) || undefined;\n }\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|