@skyux/popovers 8.0.0-alpha.2 → 8.0.0-alpha.21
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/documentation.json +390 -460
- package/esm2020/index.mjs +2 -1
- package/esm2020/lib/modules/dropdown/dropdown-button.component.mjs +3 -3
- package/esm2020/lib/modules/dropdown/dropdown-item.component.mjs +15 -15
- package/esm2020/lib/modules/dropdown/dropdown-menu.component.mjs +25 -25
- package/esm2020/lib/modules/dropdown/dropdown.component.mjs +32 -49
- package/esm2020/lib/modules/dropdown/dropdown.module.mjs +4 -4
- package/esm2020/lib/modules/popover/popover-adapter.service.mjs +3 -3
- package/esm2020/lib/modules/popover/popover-content.component.mjs +26 -26
- package/esm2020/lib/modules/popover/popover.component.mjs +39 -39
- package/esm2020/lib/modules/popover/popover.directive.mjs +14 -14
- package/esm2020/lib/modules/popover/popover.module.mjs +4 -4
- package/esm2020/lib/modules/shared/sky-popovers-resources.module.mjs +4 -4
- package/esm2020/testing/dropdown/dropdown-fixture.mjs +8 -8
- package/esm2020/testing/dropdown/dropdown-testing.module.mjs +4 -4
- package/esm2020/testing/popover/popover-fixture.mjs +6 -6
- package/esm2020/testing/popover/popover-testing.module.mjs +4 -4
- package/fesm2015/skyux-popovers-testing.mjs +21 -21
- package/fesm2015/skyux-popovers-testing.mjs.map +1 -1
- package/fesm2015/skyux-popovers.mjs +167 -185
- package/fesm2015/skyux-popovers.mjs.map +1 -1
- package/fesm2020/skyux-popovers-testing.mjs +21 -21
- package/fesm2020/skyux-popovers-testing.mjs.map +1 -1
- package/fesm2020/skyux-popovers.mjs +166 -183
- package/fesm2020/skyux-popovers.mjs.map +1 -1
- package/index.d.ts +1 -0
- package/lib/modules/dropdown/dropdown.component.d.ts +4 -7
- package/lib/modules/dropdown/types/dropdown-button-type.d.ts +1 -1
- package/lib/modules/dropdown/types/dropdown-horizontal-alignment.d.ts +1 -1
- package/lib/modules/dropdown/types/dropdown-trigger-type.d.ts +1 -1
- package/lib/modules/popover/popover-animation-state.d.ts +1 -1
- package/lib/modules/popover/types/popover-alignment.d.ts +1 -1
- package/lib/modules/popover/types/popover-placement.d.ts +1 -1
- package/lib/modules/popover/types/popover-trigger.d.ts +1 -1
- package/lib/modules/popover/types/popover-type.d.ts +1 -1
- package/package.json +11 -11
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { NgModule } from '@angular/core';
|
|
3
3
|
import { SkyDropdownModule, SkyPopoverModule } from '@skyux/popovers';
|
|
4
|
-
import {
|
|
4
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from 'tslib';
|
|
5
5
|
import { By } from '@angular/platform-browser';
|
|
6
6
|
import { SkyAppTestUtility } from '@skyux-sdk/testing';
|
|
7
7
|
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
|
|
@@ -12,10 +12,10 @@ import { SkyThemeModule } from '@skyux/theme';
|
|
|
12
12
|
*/
|
|
13
13
|
class SkyDropdownTestingModule {
|
|
14
14
|
}
|
|
15
|
-
SkyDropdownTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1
|
|
16
|
-
SkyDropdownTestingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1
|
|
17
|
-
SkyDropdownTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1
|
|
15
|
+
SkyDropdownTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: SkyDropdownTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
16
|
+
SkyDropdownTestingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.1", ngImport: i0, type: SkyDropdownTestingModule, exports: [SkyDropdownModule] });
|
|
17
|
+
SkyDropdownTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: SkyDropdownTestingModule, imports: [SkyDropdownModule] });
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: SkyDropdownTestingModule, decorators: [{
|
|
19
19
|
type: NgModule,
|
|
20
20
|
args: [{
|
|
21
21
|
exports: [SkyDropdownModule],
|
|
@@ -30,13 +30,6 @@ var _SkyDropdownFixture_instances, _SkyDropdownFixture_buttonDebugElement_get, _
|
|
|
30
30
|
* @internal
|
|
31
31
|
*/
|
|
32
32
|
class SkyDropdownFixture {
|
|
33
|
-
constructor(fixture, skyTestId) {
|
|
34
|
-
_SkyDropdownFixture_instances.add(this);
|
|
35
|
-
_SkyDropdownFixture_debugEl.set(this, void 0);
|
|
36
|
-
_SkyDropdownFixture_fixture.set(this, void 0);
|
|
37
|
-
__classPrivateFieldSet(this, _SkyDropdownFixture_fixture, fixture, "f");
|
|
38
|
-
__classPrivateFieldSet(this, _SkyDropdownFixture_debugEl, SkyAppTestUtility.getDebugElementByTestId(fixture, skyTestId, 'sky-dropdown'), "f");
|
|
39
|
-
}
|
|
40
33
|
/**
|
|
41
34
|
* Returns information about the dropdown component.
|
|
42
35
|
*/
|
|
@@ -75,6 +68,13 @@ class SkyDropdownFixture {
|
|
|
75
68
|
get dropdownMenuIsVisible() {
|
|
76
69
|
return this.getDropdownMenuContent() !== undefined;
|
|
77
70
|
}
|
|
71
|
+
constructor(fixture, skyTestId) {
|
|
72
|
+
_SkyDropdownFixture_instances.add(this);
|
|
73
|
+
_SkyDropdownFixture_debugEl.set(this, void 0);
|
|
74
|
+
_SkyDropdownFixture_fixture.set(this, void 0);
|
|
75
|
+
__classPrivateFieldSet(this, _SkyDropdownFixture_fixture, fixture, "f");
|
|
76
|
+
__classPrivateFieldSet(this, _SkyDropdownFixture_debugEl, SkyAppTestUtility.getDebugElementByTestId(fixture, skyTestId, 'sky-dropdown'), "f");
|
|
77
|
+
}
|
|
78
78
|
/**
|
|
79
79
|
* Click the dropdown button to open or close the dropdown menu.
|
|
80
80
|
*/
|
|
@@ -161,16 +161,16 @@ _SkyDropdownFixture_debugEl = new WeakMap(), _SkyDropdownFixture_fixture = new W
|
|
|
161
161
|
*/
|
|
162
162
|
class SkyPopoverTestingModule {
|
|
163
163
|
}
|
|
164
|
-
SkyPopoverTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1
|
|
165
|
-
SkyPopoverTestingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1
|
|
164
|
+
SkyPopoverTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: SkyPopoverTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
165
|
+
SkyPopoverTestingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.1", ngImport: i0, type: SkyPopoverTestingModule, imports: [SkyThemeModule], exports: [SkyPopoverModule,
|
|
166
166
|
// The noop animations module needs to be loaded last to avoid
|
|
167
167
|
// subsequent modules adding animations and overriding this.
|
|
168
168
|
NoopAnimationsModule] });
|
|
169
|
-
SkyPopoverTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1
|
|
169
|
+
SkyPopoverTestingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: SkyPopoverTestingModule, imports: [SkyThemeModule, SkyPopoverModule,
|
|
170
170
|
// The noop animations module needs to be loaded last to avoid
|
|
171
171
|
// subsequent modules adding animations and overriding this.
|
|
172
172
|
NoopAnimationsModule] });
|
|
173
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1
|
|
173
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: SkyPopoverTestingModule, decorators: [{
|
|
174
174
|
type: NgModule,
|
|
175
175
|
args: [{
|
|
176
176
|
exports: [
|
|
@@ -191,11 +191,6 @@ var _SkyPopoverFixture_instances, _SkyPopoverFixture_fixture, _SkyPopoverFixture
|
|
|
191
191
|
* @internal
|
|
192
192
|
*/
|
|
193
193
|
class SkyPopoverFixture {
|
|
194
|
-
constructor(fixture) {
|
|
195
|
-
_SkyPopoverFixture_instances.add(this);
|
|
196
|
-
_SkyPopoverFixture_fixture.set(this, void 0);
|
|
197
|
-
__classPrivateFieldSet(this, _SkyPopoverFixture_fixture, fixture, "f");
|
|
198
|
-
}
|
|
199
194
|
/**
|
|
200
195
|
* Returns the popover alignment if the popover is open, otherwise undefined.
|
|
201
196
|
*/
|
|
@@ -226,6 +221,11 @@ class SkyPopoverFixture {
|
|
|
226
221
|
get popoverIsVisible() {
|
|
227
222
|
return __classPrivateFieldGet(this, _SkyPopoverFixture_instances, "a", _SkyPopoverFixture_contentElement_get) !== undefined;
|
|
228
223
|
}
|
|
224
|
+
constructor(fixture) {
|
|
225
|
+
_SkyPopoverFixture_instances.add(this);
|
|
226
|
+
_SkyPopoverFixture_fixture.set(this, void 0);
|
|
227
|
+
__classPrivateFieldSet(this, _SkyPopoverFixture_fixture, fixture, "f");
|
|
228
|
+
}
|
|
229
229
|
/**
|
|
230
230
|
* Triggers the blur event for the popover.
|
|
231
231
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-popovers-testing.mjs","sources":["../../../../../libs/components/popovers/testing/src/dropdown/dropdown-testing.module.ts","../../../../../libs/components/popovers/testing/src/dropdown/dropdown-fixture.ts","../../../../../libs/components/popovers/testing/src/popover/popover-testing.module.ts","../../../../../libs/components/popovers/testing/src/popover/popover-fixture.ts","../../../../../libs/components/popovers/testing/src/skyux-popovers-testing.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\n/**\n * @internal\n */\n@NgModule({\n exports: [SkyDropdownModule],\n})\nexport class SkyDropdownTestingModule {}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { By } from '@angular/platform-browser';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\nimport { SkyPopoversFixtureDropdown } from './popovers-fixture-dropdown';\nimport { SkyPopoversFixtureDropdownItem } from './popovers-fixture-dropdown-item';\nimport { SkyPopoversFixtureDropdownMenu } from './popovers-fixture-dropdown-menu';\n\n/**\n * Provides information for and interaction with a SKY UX dropdown component.\n * By using the fixture API, a test insulates itself against updates to the internals\n * of a component, such as changing its DOM structure.\n * @internal\n */\nexport class SkyDropdownFixture {\n /**\n * Returns information about the dropdown component.\n */\n public get dropdown(): SkyPopoversFixtureDropdown | undefined {\n const button = this.#buttonDebugElement;\n return {\n buttonStyle: this.#getButtonStyle(button.classes),\n buttonType: this.#getButtonType(button.classes),\n disabled: button.nativeElement.disabled,\n label: button.nativeElement.getAttribute('aria-label'),\n title: button.nativeElement.getAttribute('title'),\n };\n }\n\n /**\n * Returns the dropdown button's text.\n */\n public get dropdownButtonText(): string | undefined {\n return SkyAppTestUtility.getText(this.#buttonDebugElement.nativeElement);\n }\n\n /**\n * Returns information about the dropdown menu component.\n */\n public get dropdownMenu(): SkyPopoversFixtureDropdownMenu | undefined {\n const menu = this.getDropdownMenuContent();\n if (!menu) {\n return;\n }\n\n return {\n ariaLabelledBy: menu.getAttribute('aria-labelledby'),\n ariaRole: menu.getAttribute('role'),\n };\n }\n\n /**\n * Whether the dropdown menu is open and visible.\n */\n public get dropdownMenuIsVisible(): boolean {\n return this.getDropdownMenuContent() !== undefined;\n }\n\n get #buttonDebugElement(): DebugElement {\n return this.#debugEl.query(By.css('.sky-dropdown-button'));\n }\n\n #debugEl: DebugElement;\n\n #fixture: ComponentFixture<unknown>;\n\n constructor(fixture: ComponentFixture<unknown>, skyTestId: string) {\n this.#fixture = fixture;\n this.#debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-dropdown'\n );\n }\n\n /**\n * Click the dropdown button to open or close the dropdown menu.\n */\n public async clickDropdownButton(): Promise<unknown> {\n this.#buttonDebugElement.nativeElement.click();\n this.#fixture.detectChanges();\n return this.#fixture.whenStable();\n }\n\n /**\n * Click the dropdown item at the provided index.\n */\n public async clickDropdownItem(index: number): Promise<unknown> {\n const itemEls = this.#getDropdownItemEls();\n\n if (!itemEls) {\n return;\n }\n\n if (index >= itemEls.length) {\n throw new Error(`There is no dropdown item at index ${index}.`);\n }\n\n itemEls[index].querySelector('button,a').click();\n\n this.#fixture.detectChanges();\n return this.#fixture.whenStable();\n }\n\n /**\n * Returns information about the dropdown item at the provided index.\n */\n public getDropdownItem(\n index: number\n ): SkyPopoversFixtureDropdownItem | undefined {\n const itemEls = this.#getDropdownItemEls();\n\n if (!itemEls) {\n return;\n }\n\n if (!itemEls[index]) {\n throw new Error(`There is no dropdown item at index ${index}.`);\n }\n\n const item = itemEls[index];\n\n return {\n ariaRole: item.getAttribute('role'),\n };\n }\n\n /**\n * Returns the contents of the dropdown menu.\n */\n public getDropdownMenuContent(): any {\n const overlay = this.#getOverlay();\n if (!overlay) {\n return;\n }\n\n return overlay.querySelector('.sky-dropdown-menu');\n }\n\n #getDropdownItemEls(): NodeListOf<any> | undefined {\n const overlay = this.#getOverlay();\n\n if (!overlay) {\n return;\n }\n\n return overlay.querySelectorAll('.sky-dropdown-item');\n }\n\n #getOverlay(): HTMLElement | null {\n return document.querySelector('sky-overlay');\n }\n\n #getButtonStyle(classNames: { [key: string]: boolean }): string | undefined {\n if (classNames['sky-btn-primary']) {\n return 'primary';\n }\n if (classNames['sky-btn-default']) {\n return 'default';\n }\n return;\n }\n\n #getButtonType(classNames: { [key: string]: boolean }): string {\n const prefix = 'sky-dropdown-button-type-';\n\n let found = '';\n for (const i in classNames) {\n if (classNames[i]) {\n if (i.indexOf(prefix) > -1) {\n found = i.replace(prefix, '');\n }\n }\n }\n\n return found;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NoopAnimationsModule } from '@angular/platform-browser/animations';\nimport { SkyPopoverModule } from '@skyux/popovers';\nimport { SkyThemeModule } from '@skyux/theme';\n\n/**\n * @internal\n */\n@NgModule({\n exports: [\n SkyPopoverModule,\n\n // The noop animations module needs to be loaded last to avoid\n // subsequent modules adding animations and overriding this.\n NoopAnimationsModule,\n ],\n imports: [SkyThemeModule],\n})\nexport class SkyPopoverTestingModule {}\n","import { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Provides information for and interaction with a SKY UX popover component.\n * By using the fixture API, a test insulates itself against updates to the internals\n * of a component, such as changing its DOM structure.\n * @internal\n */\nexport class SkyPopoverFixture {\n /**\n * Returns the popover alignment if the popover is open, otherwise undefined.\n */\n public get alignment(): string | undefined {\n return this.#getClassSuffixByClassPrefix(\n this.#containerElement,\n 'sky-popover-alignment-'\n );\n }\n\n /**\n * Returns the popover body element if the popover is open, otherwise undefined.\n */\n public get body(): HTMLElement | undefined {\n return this.#bodyElement;\n }\n\n /**\n * Returns the popover position if the popover is open, otherwise undefined.\n */\n public get placement(): string | undefined {\n return this.#getClassSuffixByClassPrefix(\n this.#containerElement,\n 'sky-popover-placement-'\n );\n }\n\n /**\n * Returns the popover title text if the popover is open, otherwise undefined.\n */\n public get popoverTitle(): string | undefined {\n return SkyAppTestUtility.getText(this.#titleElement);\n }\n\n /**\n * Whether the popover is open and visible.\n */\n public get popoverIsVisible(): boolean {\n return this.#contentElement !== undefined;\n }\n\n #fixture: ComponentFixture<unknown>;\n\n constructor(fixture: ComponentFixture<unknown>) {\n this.#fixture = fixture;\n }\n\n /**\n * Triggers the blur event for the popover.\n */\n public blur(): Promise<unknown> {\n // close the popover by changing focus to the body element\n SkyAppTestUtility.fireDomEvent(window.document.body, 'click');\n\n this.#fixture.detectChanges();\n return this.#fixture.whenStable();\n }\n\n //#region helpers\n get #contentElement(): HTMLElement | undefined {\n return this.#queryOverlay('sky-popover-content') || undefined;\n }\n\n get #containerElement(): HTMLElement | undefined {\n return this.#queryOverlay('.sky-popover-container') || undefined;\n }\n\n get #titleElement(): HTMLElement | undefined {\n return this.#queryOverlay('.sky-popover-title') || undefined;\n }\n\n get #bodyElement(): HTMLElement | undefined {\n return this.#queryOverlay('.sky-popover-body') || undefined;\n }\n\n #getOverlay(): Element | undefined {\n return document.querySelector('sky-overlay') || undefined;\n }\n\n #queryOverlay(query: string): HTMLElement | null {\n const overlay = this.#getOverlay();\n\n return !overlay ? null : overlay.querySelector(query);\n }\n\n /**\n * Searches the element's class names for a class which matches a given prefix.\n * If a match is found, the prefix is trimmed from the class name and the suffix is returned.\n * If no class matching the prefix is found, undefined is returned.\n *\n * Example:\n * For a class 'sky-popover-placement-right', passing the prefix 'sky-popover-placement-'\n * should return the value 'right'.\n * @param prefix\n */\n #getClassSuffixByClassPrefix(\n element: HTMLElement | undefined,\n prefix: string\n ): string | undefined {\n const containerClasses = element?.className.split(' ');\n const prefixedClass = containerClasses?.find((x) => x.startsWith(prefix));\n\n return !prefixedClass ? undefined : prefixedClass.slice(prefix.length);\n }\n //#endregion\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skyux-popovers-testing.mjs","sources":["../../../../../libs/components/popovers/testing/src/dropdown/dropdown-testing.module.ts","../../../../../libs/components/popovers/testing/src/dropdown/dropdown-fixture.ts","../../../../../libs/components/popovers/testing/src/popover/popover-testing.module.ts","../../../../../libs/components/popovers/testing/src/popover/popover-fixture.ts","../../../../../libs/components/popovers/testing/src/skyux-popovers-testing.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { SkyDropdownModule } from '@skyux/popovers';\n\n/**\n * @internal\n */\n@NgModule({\n exports: [SkyDropdownModule],\n})\nexport class SkyDropdownTestingModule {}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { By } from '@angular/platform-browser';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\nimport { SkyPopoversFixtureDropdown } from './popovers-fixture-dropdown';\nimport { SkyPopoversFixtureDropdownItem } from './popovers-fixture-dropdown-item';\nimport { SkyPopoversFixtureDropdownMenu } from './popovers-fixture-dropdown-menu';\n\n/**\n * Provides information for and interaction with a SKY UX dropdown component.\n * By using the fixture API, a test insulates itself against updates to the internals\n * of a component, such as changing its DOM structure.\n * @internal\n */\nexport class SkyDropdownFixture {\n /**\n * Returns information about the dropdown component.\n */\n public get dropdown(): SkyPopoversFixtureDropdown | undefined {\n const button = this.#buttonDebugElement;\n return {\n buttonStyle: this.#getButtonStyle(button.classes),\n buttonType: this.#getButtonType(button.classes),\n disabled: button.nativeElement.disabled,\n label: button.nativeElement.getAttribute('aria-label'),\n title: button.nativeElement.getAttribute('title'),\n };\n }\n\n /**\n * Returns the dropdown button's text.\n */\n public get dropdownButtonText(): string | undefined {\n return SkyAppTestUtility.getText(this.#buttonDebugElement.nativeElement);\n }\n\n /**\n * Returns information about the dropdown menu component.\n */\n public get dropdownMenu(): SkyPopoversFixtureDropdownMenu | undefined {\n const menu = this.getDropdownMenuContent();\n if (!menu) {\n return;\n }\n\n return {\n ariaLabelledBy: menu.getAttribute('aria-labelledby'),\n ariaRole: menu.getAttribute('role'),\n };\n }\n\n /**\n * Whether the dropdown menu is open and visible.\n */\n public get dropdownMenuIsVisible(): boolean {\n return this.getDropdownMenuContent() !== undefined;\n }\n\n get #buttonDebugElement(): DebugElement {\n return this.#debugEl.query(By.css('.sky-dropdown-button'));\n }\n\n #debugEl: DebugElement;\n\n #fixture: ComponentFixture<unknown>;\n\n constructor(fixture: ComponentFixture<unknown>, skyTestId: string) {\n this.#fixture = fixture;\n this.#debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-dropdown'\n );\n }\n\n /**\n * Click the dropdown button to open or close the dropdown menu.\n */\n public async clickDropdownButton(): Promise<unknown> {\n this.#buttonDebugElement.nativeElement.click();\n this.#fixture.detectChanges();\n return this.#fixture.whenStable();\n }\n\n /**\n * Click the dropdown item at the provided index.\n */\n public async clickDropdownItem(index: number): Promise<unknown> {\n const itemEls = this.#getDropdownItemEls();\n\n if (!itemEls) {\n return;\n }\n\n if (index >= itemEls.length) {\n throw new Error(`There is no dropdown item at index ${index}.`);\n }\n\n itemEls[index].querySelector('button,a').click();\n\n this.#fixture.detectChanges();\n return this.#fixture.whenStable();\n }\n\n /**\n * Returns information about the dropdown item at the provided index.\n */\n public getDropdownItem(\n index: number\n ): SkyPopoversFixtureDropdownItem | undefined {\n const itemEls = this.#getDropdownItemEls();\n\n if (!itemEls) {\n return;\n }\n\n if (!itemEls[index]) {\n throw new Error(`There is no dropdown item at index ${index}.`);\n }\n\n const item = itemEls[index];\n\n return {\n ariaRole: item.getAttribute('role'),\n };\n }\n\n /**\n * Returns the contents of the dropdown menu.\n */\n public getDropdownMenuContent(): any {\n const overlay = this.#getOverlay();\n if (!overlay) {\n return;\n }\n\n return overlay.querySelector('.sky-dropdown-menu');\n }\n\n #getDropdownItemEls(): NodeListOf<any> | undefined {\n const overlay = this.#getOverlay();\n\n if (!overlay) {\n return;\n }\n\n return overlay.querySelectorAll('.sky-dropdown-item');\n }\n\n #getOverlay(): HTMLElement | null {\n return document.querySelector('sky-overlay');\n }\n\n #getButtonStyle(classNames: { [key: string]: boolean }): string | undefined {\n if (classNames['sky-btn-primary']) {\n return 'primary';\n }\n if (classNames['sky-btn-default']) {\n return 'default';\n }\n return;\n }\n\n #getButtonType(classNames: { [key: string]: boolean }): string {\n const prefix = 'sky-dropdown-button-type-';\n\n let found = '';\n for (const i in classNames) {\n if (classNames[i]) {\n if (i.indexOf(prefix) > -1) {\n found = i.replace(prefix, '');\n }\n }\n }\n\n return found;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NoopAnimationsModule } from '@angular/platform-browser/animations';\nimport { SkyPopoverModule } from '@skyux/popovers';\nimport { SkyThemeModule } from '@skyux/theme';\n\n/**\n * @internal\n */\n@NgModule({\n exports: [\n SkyPopoverModule,\n\n // The noop animations module needs to be loaded last to avoid\n // subsequent modules adding animations and overriding this.\n NoopAnimationsModule,\n ],\n imports: [SkyThemeModule],\n})\nexport class SkyPopoverTestingModule {}\n","import { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Provides information for and interaction with a SKY UX popover component.\n * By using the fixture API, a test insulates itself against updates to the internals\n * of a component, such as changing its DOM structure.\n * @internal\n */\nexport class SkyPopoverFixture {\n /**\n * Returns the popover alignment if the popover is open, otherwise undefined.\n */\n public get alignment(): string | undefined {\n return this.#getClassSuffixByClassPrefix(\n this.#containerElement,\n 'sky-popover-alignment-'\n );\n }\n\n /**\n * Returns the popover body element if the popover is open, otherwise undefined.\n */\n public get body(): HTMLElement | undefined {\n return this.#bodyElement;\n }\n\n /**\n * Returns the popover position if the popover is open, otherwise undefined.\n */\n public get placement(): string | undefined {\n return this.#getClassSuffixByClassPrefix(\n this.#containerElement,\n 'sky-popover-placement-'\n );\n }\n\n /**\n * Returns the popover title text if the popover is open, otherwise undefined.\n */\n public get popoverTitle(): string | undefined {\n return SkyAppTestUtility.getText(this.#titleElement);\n }\n\n /**\n * Whether the popover is open and visible.\n */\n public get popoverIsVisible(): boolean {\n return this.#contentElement !== undefined;\n }\n\n #fixture: ComponentFixture<unknown>;\n\n constructor(fixture: ComponentFixture<unknown>) {\n this.#fixture = fixture;\n }\n\n /**\n * Triggers the blur event for the popover.\n */\n public blur(): Promise<unknown> {\n // close the popover by changing focus to the body element\n SkyAppTestUtility.fireDomEvent(window.document.body, 'click');\n\n this.#fixture.detectChanges();\n return this.#fixture.whenStable();\n }\n\n //#region helpers\n get #contentElement(): HTMLElement | undefined {\n return this.#queryOverlay('sky-popover-content') || undefined;\n }\n\n get #containerElement(): HTMLElement | undefined {\n return this.#queryOverlay('.sky-popover-container') || undefined;\n }\n\n get #titleElement(): HTMLElement | undefined {\n return this.#queryOverlay('.sky-popover-title') || undefined;\n }\n\n get #bodyElement(): HTMLElement | undefined {\n return this.#queryOverlay('.sky-popover-body') || undefined;\n }\n\n #getOverlay(): Element | undefined {\n return document.querySelector('sky-overlay') || undefined;\n }\n\n #queryOverlay(query: string): HTMLElement | null {\n const overlay = this.#getOverlay();\n\n return !overlay ? null : overlay.querySelector(query);\n }\n\n /**\n * Searches the element's class names for a class which matches a given prefix.\n * If a match is found, the prefix is trimmed from the class name and the suffix is returned.\n * If no class matching the prefix is found, undefined is returned.\n *\n * Example:\n * For a class 'sky-popover-placement-right', passing the prefix 'sky-popover-placement-'\n * should return the value 'right'.\n * @param prefix\n */\n #getClassSuffixByClassPrefix(\n element: HTMLElement | undefined,\n prefix: string\n ): string | undefined {\n const containerClasses = element?.className.split(' ');\n const prefixedClass = containerClasses?.find((x) => x.startsWith(prefix));\n\n return !prefixedClass ? undefined : prefixedClass.slice(prefix.length);\n }\n //#endregion\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|