@skyux/lists 6.16.0 → 6.17.0

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 (42) hide show
  1. package/documentation.json +317 -342
  2. package/esm2020/testing/filter/filter-fixture-button.mjs +2 -1
  3. package/esm2020/testing/filter/filter-fixture-summary.mjs +2 -1
  4. package/esm2020/testing/filter/filter-testing.module.mjs +4 -1
  5. package/esm2020/testing/infinite-scroll/infinite-scroll-fixture.mjs +2 -1
  6. package/esm2020/testing/infinite-scroll/infinite-scroll-harness-filters.mjs +1 -1
  7. package/esm2020/testing/infinite-scroll/infinite-scroll-harness.mjs +2 -1
  8. package/esm2020/testing/infinite-scroll/infinite-scroll-testing.module.mjs +4 -1
  9. package/esm2020/testing/paging/paging-fixture-button.mjs +1 -1
  10. package/esm2020/testing/paging/paging-fixture.mjs +2 -1
  11. package/esm2020/testing/paging/paging-testing.module.mjs +4 -1
  12. package/esm2020/testing/repeater/repeater-harness-filters.mjs +1 -1
  13. package/esm2020/testing/repeater/repeater-harness.mjs +2 -1
  14. package/esm2020/testing/repeater/repeater-item-harness-filters.mjs +1 -1
  15. package/esm2020/testing/repeater/repeater-item-harness.mjs +2 -1
  16. package/esm2020/testing/sort/sort-fixture-menu-item.mjs +1 -1
  17. package/esm2020/testing/sort/sort-fixture-menu.mjs +1 -1
  18. package/esm2020/testing/sort/sort-fixture.mjs +2 -1
  19. package/esm2020/testing/sort/sort-testing.module.mjs +4 -1
  20. package/fesm2015/skyux-lists-testing.mjs +20 -0
  21. package/fesm2015/skyux-lists-testing.mjs.map +1 -1
  22. package/fesm2020/skyux-lists-testing.mjs +20 -0
  23. package/fesm2020/skyux-lists-testing.mjs.map +1 -1
  24. package/package.json +10 -10
  25. package/testing/filter/filter-fixture-button.d.ts +1 -0
  26. package/testing/filter/filter-fixture-summary.d.ts +1 -0
  27. package/testing/filter/filter-testing.module.d.ts +3 -0
  28. package/testing/infinite-scroll/infinite-scroll-fixture.d.ts +1 -0
  29. package/testing/infinite-scroll/infinite-scroll-harness-filters.d.ts +1 -0
  30. package/testing/infinite-scroll/infinite-scroll-harness.d.ts +1 -0
  31. package/testing/infinite-scroll/infinite-scroll-testing.module.d.ts +3 -0
  32. package/testing/paging/paging-fixture-button.d.ts +3 -0
  33. package/testing/paging/paging-fixture.d.ts +1 -0
  34. package/testing/paging/paging-testing.module.d.ts +3 -0
  35. package/testing/repeater/repeater-harness-filters.d.ts +1 -0
  36. package/testing/repeater/repeater-harness.d.ts +1 -0
  37. package/testing/repeater/repeater-item-harness-filters.d.ts +1 -0
  38. package/testing/repeater/repeater-item-harness.d.ts +1 -0
  39. package/testing/sort/sort-fixture-menu-item.d.ts +3 -0
  40. package/testing/sort/sort-fixture-menu.d.ts +3 -0
  41. package/testing/sort/sort-fixture.d.ts +1 -0
  42. package/testing/sort/sort-testing.module.d.ts +3 -0
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-lists-testing.mjs","sources":["../../../../../libs/components/lists/testing/src/filter/filter-testing.module.ts","../../../../../libs/components/lists/testing/src/filter/filter-fixture-summary.ts","../../../../../libs/components/lists/testing/src/filter/filter-fixture-button.ts","../../../../../libs/components/lists/testing/src/paging/paging-testing.module.ts","../../../../../libs/components/lists/testing/src/paging/paging-fixture.ts","../../../../../libs/components/lists/testing/src/repeater/repeater-item-harness.ts","../../../../../libs/components/lists/testing/src/repeater/repeater-harness.ts","../../../../../libs/components/lists/testing/src/sort/sort-testing.module.ts","../../../../../libs/components/lists/testing/src/sort/sort-fixture.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-testing.module.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-fixture.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-harness.ts","../../../../../libs/components/lists/testing/src/skyux-lists-testing.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { SkyFilterModule } from '@skyux/lists';\n\n@NgModule({\n exports: [SkyFilterModule],\n})\nexport class SkyFilterTestingModule {}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Provides information for and interaction with a SKY UX filter summary 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 */\nexport class SkyFilterFixtureSummary {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n this.fixture,\n skyTestId,\n 'sky-filter-summary'\n );\n }\n\n public async filterCloseClick(index: number): Promise<any> {\n const summaryItems = this.debugElement.nativeElement.querySelectorAll(\n 'sky-filter-summary-item'\n );\n if (summaryItems.length > index) {\n const summaryItem = summaryItems[index];\n if (summaryItem instanceof HTMLElement) {\n const closeButton = summaryItem.querySelector('.sky-token-btn-close');\n if (closeButton instanceof HTMLElement) {\n closeButton.click();\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n }\n throw new Error(`Unable to click close for a filter index ${index}`);\n }\n}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\nimport { SkyListsFilterFixtureButton } from './lists-filter-fixture-button';\n\n/**\n * Provides information for and interaction with a SKY UX filter button 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 */\nexport class SkyFilterFixtureButton {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n this.fixture,\n skyTestId,\n 'sky-filter-button'\n );\n }\n\n /**\n * Click the button to apply the filter.\n */\n public async clickFilterButton(): Promise<any> {\n const button = this.getButtonElement();\n if (button instanceof HTMLButtonElement && !button.disabled) {\n button.click();\n }\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n public get button(): SkyListsFilterFixtureButton {\n const buttonElement = this.getButtonElement();\n return {\n ariaControls: buttonElement.getAttribute('aria-controls'),\n ariaExpanded: buttonElement.getAttribute('aria-expanded') === 'true',\n disabled: buttonElement.disabled,\n id: buttonElement.id,\n };\n }\n /**\n * Get the button text.\n */\n public get buttonText(): string {\n const text = this.getButtonElement()?.innerText;\n return this.normalizeText(text);\n }\n\n private getButtonElement(): HTMLButtonElement | null {\n return this.debugElement.nativeElement.querySelector('.sky-filter-btn');\n }\n\n private normalizeText(text: string): string {\n return text.trim().replace(/\\s+/g, ' ');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SkyPagingModule } from '@skyux/lists';\n\n@NgModule({\n exports: [SkyPagingModule],\n})\nexport class SkyPagingTestingModule {}\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 { SkyPagingFixtureButton } from './paging-fixture-button';\n\n/**\n * Provides information for and interaction with a SKY UX paging 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 */\nexport class SkyPagingFixture {\n private _debugEl: DebugElement;\n\n /**\n * The id of the active page, if available.\n */\n public get activePageId(): string {\n return this.getPageId(this.activePageButton);\n }\n\n /**\n * Properties of the page links displayed in the paging component.\n */\n public get pageLinks(): SkyPagingFixtureButton[] {\n return this.pagingLinks.map((page: DebugElement) => {\n return {\n id: this.getPageId(page.nativeElement),\n isActive: page.nativeElement.classList.contains('sky-paging-current'),\n isEnabled: !page.nativeElement.disabled,\n };\n });\n }\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this._debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-paging'\n );\n\n this.waitForComponentInitialization();\n }\n\n /**\n * Selects the specified page by id, if it is enabled.\n */\n public async selectPage(id: string | number): Promise<void> {\n const pageButton = this.getPageLink(id.toString());\n\n if (pageButton !== undefined && !pageButton.disabled) {\n pageButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Clicks the next page button, if it is enabled.\n */\n public async selectNextPage(): Promise<void> {\n const nextButton = this.nextPageButton;\n\n if (nextButton !== undefined && !nextButton.disabled) {\n nextButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Clicks the previous page button, if it is enabled.\n */\n public async selectPreviousPage(): Promise<void> {\n const previousButton = this.previousPageButton;\n\n if (previousButton !== undefined && !previousButton.disabled) {\n previousButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n //#region helpers\n\n private get activePageButton(): HTMLButtonElement {\n return this._debugEl.query(\n By.css('.sky-list-paging-link .sky-paging-current')\n )?.nativeElement as HTMLButtonElement;\n }\n\n private get nextPageButton(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-paging-btn[sky-cmp-id=\"next\"]'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private get previousPageButton(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-paging-btn[sky-cmp-id=\"previous\"]'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private get pagingLinks(): DebugElement[] {\n return this._debugEl.queryAll(By.css('.sky-list-paging-link button'));\n }\n\n private getPageLink(id: string): HTMLButtonElement {\n return this._debugEl.query(\n By.css(`.sky-list-paging-link button[sky-cmp-id=\"${id}\"]`)\n )?.nativeElement as HTMLButtonElement;\n }\n\n private getPageId(page: HTMLButtonElement): string {\n return page?.getAttribute('sky-cmp-id');\n }\n\n private async waitForComponentInitialization(): Promise<void> {\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n //#endregion\n}\n","import { HarnessPredicate } from '@angular/cdk/testing';\nimport { SkyComponentHarness } from '@skyux/core/testing';\nimport { SkyCheckboxHarness } from '@skyux/forms/testing';\n\nimport { SkyRepeaterItemHarnessFilters } from './repeater-item-harness-filters';\n\n/**\n * Harness for interacting with a repeater item component in tests.\n */\nexport class SkyRepeaterItemHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-repeater-item';\n\n #getCheckbox = this.locatorForOptional(SkyCheckboxHarness);\n\n #getContent = this.locatorFor('.sky-repeater-item-content');\n\n #getTitle = this.locatorFor('.sky-repeater-item-title');\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyRepeaterItemHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyRepeaterItemHarnessFilters\n ): HarnessPredicate<SkyRepeaterItemHarness> {\n return SkyRepeaterItemHarness.getDataSkyIdPredicate(filters)\n .addOption('contentText', filters.contentText, async (harness, text) =>\n HarnessPredicate.stringMatches(await harness.getContentText(), text)\n )\n .addOption('titleText', filters.titleText, async (harness, text) =>\n HarnessPredicate.stringMatches(await harness.getTitleText(), text)\n );\n }\n\n /**\n * Whether the repeater item is selectable.\n */\n public async isSelectable(): Promise<boolean> {\n return !!(await this.#getCheckbox());\n }\n\n /**\n * Whether the repeater item is selected.\n */\n public async isSelected(): Promise<boolean> {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not determine if repeater item is selected because it is not selectable.'\n );\n }\n\n return (await this.#getCheckbox()).isChecked();\n }\n\n /**\n * Selects the repeater item.\n */\n public async select() {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not select the repeater item because it is not selectable.'\n );\n }\n\n await (await this.#getCheckbox()).check();\n }\n\n /**\n * Deselects the repeater item.\n */\n public async deselect(): Promise<void> {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not deselect the repeater item because it is not selectable.'\n );\n }\n\n await (await this.#getCheckbox()).uncheck();\n }\n\n /**\n * Gets the text of the repeater item content.\n */\n public async getContentText(): Promise<string> {\n return (await this.#getContent()).text();\n }\n\n /**\n * Gets the text of the repeater item title.\n */\n public async getTitleText(): Promise<string> {\n return (await this.#getTitle()).text();\n }\n}\n","import { HarnessPredicate } from '@angular/cdk/testing';\nimport { SkyComponentHarness } from '@skyux/core/testing';\n\nimport { SkyRepeaterHarnessFilters } from './repeater-harness-filters';\nimport { SkyRepeaterItemHarness } from './repeater-item-harness';\nimport { SkyRepeaterItemHarnessFilters } from './repeater-item-harness-filters';\n\n/**\n * Harness for interacting with a repeater component in tests.\n */\nexport class SkyRepeaterHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-repeater';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyRepeaterHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyRepeaterHarnessFilters\n ): HarnessPredicate<SkyRepeaterHarness> {\n return SkyRepeaterHarness.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Gets a list of child repeater items.\n */\n public async getRepeaterItems(\n filters?: SkyRepeaterItemHarnessFilters\n ): Promise<SkyRepeaterItemHarness[]> {\n return this.locatorForAll(SkyRepeaterItemHarness.with(filters || {}))();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NoopAnimationsModule } from '@angular/platform-browser/animations';\nimport { SkySortModule } from '@skyux/lists';\n\n@NgModule({\n imports: [NoopAnimationsModule],\n exports: [SkySortModule],\n})\nexport class SkySortTestingModule {}\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 { SkySortFixtureMenu } from './sort-fixture-menu';\nimport { SkySortFixtureMenuItem } from './sort-fixture-menu-item';\n\n/**\n * Provides information for and interaction with a SKY UX sort 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 */\nexport class SkySortFixture {\n /**\n * The active sort menu item, if one exists. Menu items are only available when the menu dropdown\n * is open. If the menu dropdown is closed, this property will be undefined.\n */\n public get activeMenuItem(): SkySortFixtureMenuItem {\n return this.menuItems?.find((x) => x.isActive);\n }\n\n /**\n * The sort menu's properties.\n */\n public get menu(): SkySortFixtureMenu {\n return {\n buttonText: SkyAppTestUtility.getText(this.getSortButtonTextEl()),\n isOpen: this.getDropdownMenuEl() !== null,\n };\n }\n\n /**\n * The properties of each sort menu item. Menu items are only available when the menu dropdown\n * is open. If the menu dropdown is closed, this property will be undefined.\n */\n public get menuItems(): SkySortFixtureMenuItem[] {\n // Return undefined when we can't determine what the options are.\n // We do this to avoid any confusion with an empty set of options.\n if (!this.menu.isOpen) {\n return;\n }\n\n return this.getSortItems().map((item: HTMLElement, i: number) => {\n const itemButton = item.querySelector('button');\n\n return {\n index: i,\n isActive: item.classList.contains('sky-sort-item-selected'),\n text: SkyAppTestUtility.getText(itemButton),\n };\n });\n }\n\n private _debugEl: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this._debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-sort'\n );\n }\n\n /**\n * Closes the sort dropdown menu if it isn't closed already.\n */\n public async closeMenu(): Promise<void> {\n // if the menu is already closed, do nothing\n if (!this.menu.isOpen) {\n return;\n }\n\n const menu = this.getDropdownButtonEl();\n if (menu !== undefined && !menu.disabled) {\n menu.click();\n\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Opens the sort dropdown menu if it isn't open already.\n */\n public async openMenu(): Promise<void> {\n // if the menu is already open, do nothing\n if (this.menu.isOpen) {\n return;\n }\n\n const menu = this.getDropdownButtonEl();\n\n if (menu !== undefined && !menu.disabled) {\n menu.click();\n\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item with the specified index, if it exists.\n * @param menuItemIndex The index of the menu item to select.\n */\n public async selectMenuItemByIndex(menuItemIndex: number): Promise<void> {\n return this.selectMenuItem((_item: HTMLElement, index: number) => {\n return index === menuItemIndex;\n });\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item with the specified text,\n * if a matching item is available.\n * @param menuItemText The text of the menu item to select.\n */\n public async selectMenuItemByText(menuItemText: string): Promise<void> {\n return this.selectMenuItem((item: HTMLElement) => {\n return SkyAppTestUtility.getText(item) === menuItemText;\n });\n }\n\n //#region helpers\n\n private getDropdownButtonEl(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-dropdown-button'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private getDropdownMenuEl(): HTMLElement {\n return document.querySelector('sky-overlay .sky-dropdown-menu');\n }\n\n private getSortButtonTextEl(): HTMLElement {\n return this._debugEl.query(By.css('.sky-sort-btn-text'))\n ?.nativeElement as HTMLElement;\n }\n\n private getSortItems(): HTMLElement[] {\n const resultNodes = document.querySelectorAll('sky-overlay .sky-sort-item');\n return Array.prototype.slice.call(resultNodes);\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item via a selection predicate,\n * if a matching item is available.\n * @param selectionPredicate The menu item selector method to use.\n */\n private async selectMenuItem(\n selectionPredicate: (item: HTMLElement, index: number) => boolean\n ): Promise<void> {\n // make sure the sort menu is open\n if (!this.menu.isOpen) {\n await this.openMenu();\n }\n\n // find the requested menu item using the selectionPredicate parameter\n const items = this.getSortItems();\n const targetItem = items.find((item: HTMLElement, index: number) =>\n selectionPredicate(item, index)\n );\n\n // if we found the item, select it\n if (targetItem) {\n // we've got the '.sky-sort-item' div, but we want to click it's child button element\n const targetButton = targetItem.querySelector('button');\n targetButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n //#endregion\n}\n","import { NgModule } from '@angular/core';\nimport { SkyInfiniteScrollModule } from '@skyux/lists';\n\n@NgModule({\n exports: [SkyInfiniteScrollModule],\n})\nexport class SkyInfiniteScrollTestingModule {}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Provides information for and interaction with a SKY UX infinite scroll 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 * @deprecated Use `SkyInfiniteScrollHarness` instead.\n */\nexport class SkyInfiniteScrollFixture {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-infinite-scroll'\n );\n }\n\n public get loadMoreButtonIsVisible(): boolean {\n return this.getButton() instanceof HTMLButtonElement;\n }\n\n public async clickLoadMoreButton(): Promise<any> {\n const button = this.getButton();\n if (button instanceof HTMLButtonElement) {\n button.click();\n }\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n private getButton() {\n return this.debugElement.nativeElement.querySelector(\n '.sky-infinite-scroll .sky-btn'\n );\n }\n}\n","import { SkyComponentHarness } from '@skyux/core/testing';\n\nimport { SkyInfiniteScrollHarnessFilters } from './infinite-scroll-harness-filters';\n\n/**\n * Harness for interacting with an infinite scroll component in tests.\n */\nexport class SkyInfiniteScrollHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-infinite-scroll';\n\n #showMoreButton = this.locatorForOptional(\n 'button.sky-infinite-scroll-load-more-button'\n );\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyInfiniteScrollHarness` that meets certain criteria.\n */\n public static with(filters: SkyInfiniteScrollHarnessFilters) {\n return this.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Whether the infinite scroll is enabled.\n */\n public async isEnabled(): Promise<boolean> {\n return (await this.locatorForOptional('.sky-infinite-scroll')()) !== null;\n }\n\n /**\n * Whether the infinite scroll is loading.\n */\n public async isLoading(): Promise<boolean> {\n return (await this.isEnabled()) && (await this.#showMoreButton()) === null;\n }\n\n /**\n * Clicks the \"Load more\" button.\n */\n public async loadMore(): Promise<void> {\n const button = await this.#showMoreButton();\n if (button) {\n await button.click();\n } else {\n if (!(await this.isEnabled())) {\n throw new Error(\n 'Unable to click the \"Load more\" button because the infinite scroll is not enabled.'\n );\n } else {\n throw new Error(\n 'Unable to click the \"Load more\" button because the infinite scroll is loading.'\n );\n }\n }\n }\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-lists-testing.mjs","sources":["../../../../../libs/components/lists/testing/src/filter/filter-testing.module.ts","../../../../../libs/components/lists/testing/src/filter/filter-fixture-summary.ts","../../../../../libs/components/lists/testing/src/filter/filter-fixture-button.ts","../../../../../libs/components/lists/testing/src/paging/paging-testing.module.ts","../../../../../libs/components/lists/testing/src/paging/paging-fixture.ts","../../../../../libs/components/lists/testing/src/repeater/repeater-item-harness.ts","../../../../../libs/components/lists/testing/src/repeater/repeater-harness.ts","../../../../../libs/components/lists/testing/src/sort/sort-testing.module.ts","../../../../../libs/components/lists/testing/src/sort/sort-fixture.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-testing.module.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-fixture.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-harness.ts","../../../../../libs/components/lists/testing/src/skyux-lists-testing.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { SkyFilterModule } from '@skyux/lists';\n\n/**\n * @internal\n */\n@NgModule({\n exports: [SkyFilterModule],\n})\nexport class SkyFilterTestingModule {}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Provides information for and interaction with a SKY UX filter summary 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 SkyFilterFixtureSummary {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n this.fixture,\n skyTestId,\n 'sky-filter-summary'\n );\n }\n\n public async filterCloseClick(index: number): Promise<any> {\n const summaryItems = this.debugElement.nativeElement.querySelectorAll(\n 'sky-filter-summary-item'\n );\n if (summaryItems.length > index) {\n const summaryItem = summaryItems[index];\n if (summaryItem instanceof HTMLElement) {\n const closeButton = summaryItem.querySelector('.sky-token-btn-close');\n if (closeButton instanceof HTMLElement) {\n closeButton.click();\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n }\n throw new Error(`Unable to click close for a filter index ${index}`);\n }\n}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\nimport { SkyListsFilterFixtureButton } from './lists-filter-fixture-button';\n\n/**\n * Provides information for and interaction with a SKY UX filter button 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 SkyFilterFixtureButton {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n this.fixture,\n skyTestId,\n 'sky-filter-button'\n );\n }\n\n /**\n * Click the button to apply the filter.\n */\n public async clickFilterButton(): Promise<any> {\n const button = this.getButtonElement();\n if (button instanceof HTMLButtonElement && !button.disabled) {\n button.click();\n }\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n public get button(): SkyListsFilterFixtureButton {\n const buttonElement = this.getButtonElement();\n return {\n ariaControls: buttonElement.getAttribute('aria-controls'),\n ariaExpanded: buttonElement.getAttribute('aria-expanded') === 'true',\n disabled: buttonElement.disabled,\n id: buttonElement.id,\n };\n }\n /**\n * Get the button text.\n */\n public get buttonText(): string {\n const text = this.getButtonElement()?.innerText;\n return this.normalizeText(text);\n }\n\n private getButtonElement(): HTMLButtonElement | null {\n return this.debugElement.nativeElement.querySelector('.sky-filter-btn');\n }\n\n private normalizeText(text: string): string {\n return text.trim().replace(/\\s+/g, ' ');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SkyPagingModule } from '@skyux/lists';\n\n/**\n * @internal\n */\n@NgModule({\n exports: [SkyPagingModule],\n})\nexport class SkyPagingTestingModule {}\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 { SkyPagingFixtureButton } from './paging-fixture-button';\n\n/**\n * Provides information for and interaction with a SKY UX paging 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 SkyPagingFixture {\n private _debugEl: DebugElement;\n\n /**\n * The id of the active page, if available.\n */\n public get activePageId(): string {\n return this.getPageId(this.activePageButton);\n }\n\n /**\n * Properties of the page links displayed in the paging component.\n */\n public get pageLinks(): SkyPagingFixtureButton[] {\n return this.pagingLinks.map((page: DebugElement) => {\n return {\n id: this.getPageId(page.nativeElement),\n isActive: page.nativeElement.classList.contains('sky-paging-current'),\n isEnabled: !page.nativeElement.disabled,\n };\n });\n }\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this._debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-paging'\n );\n\n this.waitForComponentInitialization();\n }\n\n /**\n * Selects the specified page by id, if it is enabled.\n */\n public async selectPage(id: string | number): Promise<void> {\n const pageButton = this.getPageLink(id.toString());\n\n if (pageButton !== undefined && !pageButton.disabled) {\n pageButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Clicks the next page button, if it is enabled.\n */\n public async selectNextPage(): Promise<void> {\n const nextButton = this.nextPageButton;\n\n if (nextButton !== undefined && !nextButton.disabled) {\n nextButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Clicks the previous page button, if it is enabled.\n */\n public async selectPreviousPage(): Promise<void> {\n const previousButton = this.previousPageButton;\n\n if (previousButton !== undefined && !previousButton.disabled) {\n previousButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n //#region helpers\n\n private get activePageButton(): HTMLButtonElement {\n return this._debugEl.query(\n By.css('.sky-list-paging-link .sky-paging-current')\n )?.nativeElement as HTMLButtonElement;\n }\n\n private get nextPageButton(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-paging-btn[sky-cmp-id=\"next\"]'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private get previousPageButton(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-paging-btn[sky-cmp-id=\"previous\"]'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private get pagingLinks(): DebugElement[] {\n return this._debugEl.queryAll(By.css('.sky-list-paging-link button'));\n }\n\n private getPageLink(id: string): HTMLButtonElement {\n return this._debugEl.query(\n By.css(`.sky-list-paging-link button[sky-cmp-id=\"${id}\"]`)\n )?.nativeElement as HTMLButtonElement;\n }\n\n private getPageId(page: HTMLButtonElement): string {\n return page?.getAttribute('sky-cmp-id');\n }\n\n private async waitForComponentInitialization(): Promise<void> {\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n //#endregion\n}\n","import { HarnessPredicate } from '@angular/cdk/testing';\nimport { SkyComponentHarness } from '@skyux/core/testing';\nimport { SkyCheckboxHarness } from '@skyux/forms/testing';\n\nimport { SkyRepeaterItemHarnessFilters } from './repeater-item-harness-filters';\n\n/**\n * Harness for interacting with a repeater item component in tests.\n * @internal\n */\nexport class SkyRepeaterItemHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-repeater-item';\n\n #getCheckbox = this.locatorForOptional(SkyCheckboxHarness);\n\n #getContent = this.locatorFor('.sky-repeater-item-content');\n\n #getTitle = this.locatorFor('.sky-repeater-item-title');\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyRepeaterItemHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyRepeaterItemHarnessFilters\n ): HarnessPredicate<SkyRepeaterItemHarness> {\n return SkyRepeaterItemHarness.getDataSkyIdPredicate(filters)\n .addOption('contentText', filters.contentText, async (harness, text) =>\n HarnessPredicate.stringMatches(await harness.getContentText(), text)\n )\n .addOption('titleText', filters.titleText, async (harness, text) =>\n HarnessPredicate.stringMatches(await harness.getTitleText(), text)\n );\n }\n\n /**\n * Whether the repeater item is selectable.\n */\n public async isSelectable(): Promise<boolean> {\n return !!(await this.#getCheckbox());\n }\n\n /**\n * Whether the repeater item is selected.\n */\n public async isSelected(): Promise<boolean> {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not determine if repeater item is selected because it is not selectable.'\n );\n }\n\n return (await this.#getCheckbox()).isChecked();\n }\n\n /**\n * Selects the repeater item.\n */\n public async select() {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not select the repeater item because it is not selectable.'\n );\n }\n\n await (await this.#getCheckbox()).check();\n }\n\n /**\n * Deselects the repeater item.\n */\n public async deselect(): Promise<void> {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not deselect the repeater item because it is not selectable.'\n );\n }\n\n await (await this.#getCheckbox()).uncheck();\n }\n\n /**\n * Gets the text of the repeater item content.\n */\n public async getContentText(): Promise<string> {\n return (await this.#getContent()).text();\n }\n\n /**\n * Gets the text of the repeater item title.\n */\n public async getTitleText(): Promise<string> {\n return (await this.#getTitle()).text();\n }\n}\n","import { HarnessPredicate } from '@angular/cdk/testing';\nimport { SkyComponentHarness } from '@skyux/core/testing';\n\nimport { SkyRepeaterHarnessFilters } from './repeater-harness-filters';\nimport { SkyRepeaterItemHarness } from './repeater-item-harness';\nimport { SkyRepeaterItemHarnessFilters } from './repeater-item-harness-filters';\n\n/**\n * Harness for interacting with a repeater component in tests.\n * @internal\n */\nexport class SkyRepeaterHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-repeater';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyRepeaterHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyRepeaterHarnessFilters\n ): HarnessPredicate<SkyRepeaterHarness> {\n return SkyRepeaterHarness.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Gets a list of child repeater items.\n */\n public async getRepeaterItems(\n filters?: SkyRepeaterItemHarnessFilters\n ): Promise<SkyRepeaterItemHarness[]> {\n return this.locatorForAll(SkyRepeaterItemHarness.with(filters || {}))();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NoopAnimationsModule } from '@angular/platform-browser/animations';\nimport { SkySortModule } from '@skyux/lists';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [NoopAnimationsModule],\n exports: [SkySortModule],\n})\nexport class SkySortTestingModule {}\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 { SkySortFixtureMenu } from './sort-fixture-menu';\nimport { SkySortFixtureMenuItem } from './sort-fixture-menu-item';\n\n/**\n * Provides information for and interaction with a SKY UX sort 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 SkySortFixture {\n /**\n * The active sort menu item, if one exists. Menu items are only available when the menu dropdown\n * is open. If the menu dropdown is closed, this property will be undefined.\n */\n public get activeMenuItem(): SkySortFixtureMenuItem {\n return this.menuItems?.find((x) => x.isActive);\n }\n\n /**\n * The sort menu's properties.\n */\n public get menu(): SkySortFixtureMenu {\n return {\n buttonText: SkyAppTestUtility.getText(this.getSortButtonTextEl()),\n isOpen: this.getDropdownMenuEl() !== null,\n };\n }\n\n /**\n * The properties of each sort menu item. Menu items are only available when the menu dropdown\n * is open. If the menu dropdown is closed, this property will be undefined.\n */\n public get menuItems(): SkySortFixtureMenuItem[] {\n // Return undefined when we can't determine what the options are.\n // We do this to avoid any confusion with an empty set of options.\n if (!this.menu.isOpen) {\n return;\n }\n\n return this.getSortItems().map((item: HTMLElement, i: number) => {\n const itemButton = item.querySelector('button');\n\n return {\n index: i,\n isActive: item.classList.contains('sky-sort-item-selected'),\n text: SkyAppTestUtility.getText(itemButton),\n };\n });\n }\n\n private _debugEl: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this._debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-sort'\n );\n }\n\n /**\n * Closes the sort dropdown menu if it isn't closed already.\n */\n public async closeMenu(): Promise<void> {\n // if the menu is already closed, do nothing\n if (!this.menu.isOpen) {\n return;\n }\n\n const menu = this.getDropdownButtonEl();\n if (menu !== undefined && !menu.disabled) {\n menu.click();\n\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Opens the sort dropdown menu if it isn't open already.\n */\n public async openMenu(): Promise<void> {\n // if the menu is already open, do nothing\n if (this.menu.isOpen) {\n return;\n }\n\n const menu = this.getDropdownButtonEl();\n\n if (menu !== undefined && !menu.disabled) {\n menu.click();\n\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item with the specified index, if it exists.\n * @param menuItemIndex The index of the menu item to select.\n */\n public async selectMenuItemByIndex(menuItemIndex: number): Promise<void> {\n return this.selectMenuItem((_item: HTMLElement, index: number) => {\n return index === menuItemIndex;\n });\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item with the specified text,\n * if a matching item is available.\n * @param menuItemText The text of the menu item to select.\n */\n public async selectMenuItemByText(menuItemText: string): Promise<void> {\n return this.selectMenuItem((item: HTMLElement) => {\n return SkyAppTestUtility.getText(item) === menuItemText;\n });\n }\n\n //#region helpers\n\n private getDropdownButtonEl(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-dropdown-button'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private getDropdownMenuEl(): HTMLElement {\n return document.querySelector('sky-overlay .sky-dropdown-menu');\n }\n\n private getSortButtonTextEl(): HTMLElement {\n return this._debugEl.query(By.css('.sky-sort-btn-text'))\n ?.nativeElement as HTMLElement;\n }\n\n private getSortItems(): HTMLElement[] {\n const resultNodes = document.querySelectorAll('sky-overlay .sky-sort-item');\n return Array.prototype.slice.call(resultNodes);\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item via a selection predicate,\n * if a matching item is available.\n * @param selectionPredicate The menu item selector method to use.\n */\n private async selectMenuItem(\n selectionPredicate: (item: HTMLElement, index: number) => boolean\n ): Promise<void> {\n // make sure the sort menu is open\n if (!this.menu.isOpen) {\n await this.openMenu();\n }\n\n // find the requested menu item using the selectionPredicate parameter\n const items = this.getSortItems();\n const targetItem = items.find((item: HTMLElement, index: number) =>\n selectionPredicate(item, index)\n );\n\n // if we found the item, select it\n if (targetItem) {\n // we've got the '.sky-sort-item' div, but we want to click it's child button element\n const targetButton = targetItem.querySelector('button');\n targetButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n //#endregion\n}\n","import { NgModule } from '@angular/core';\nimport { SkyInfiniteScrollModule } from '@skyux/lists';\n\n/**\n * @internal\n */\n@NgModule({\n exports: [SkyInfiniteScrollModule],\n})\nexport class SkyInfiniteScrollTestingModule {}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Provides information for and interaction with a SKY UX infinite scroll 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 * @deprecated Use `SkyInfiniteScrollHarness` instead.\n * @internal\n */\nexport class SkyInfiniteScrollFixture {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-infinite-scroll'\n );\n }\n\n public get loadMoreButtonIsVisible(): boolean {\n return this.getButton() instanceof HTMLButtonElement;\n }\n\n public async clickLoadMoreButton(): Promise<any> {\n const button = this.getButton();\n if (button instanceof HTMLButtonElement) {\n button.click();\n }\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n private getButton() {\n return this.debugElement.nativeElement.querySelector(\n '.sky-infinite-scroll .sky-btn'\n );\n }\n}\n","import { SkyComponentHarness } from '@skyux/core/testing';\n\nimport { SkyInfiniteScrollHarnessFilters } from './infinite-scroll-harness-filters';\n\n/**\n * Harness for interacting with an infinite scroll component in tests.\n * @internal\n */\nexport class SkyInfiniteScrollHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-infinite-scroll';\n\n #showMoreButton = this.locatorForOptional(\n 'button.sky-infinite-scroll-load-more-button'\n );\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyInfiniteScrollHarness` that meets certain criteria.\n */\n public static with(filters: SkyInfiniteScrollHarnessFilters) {\n return this.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Whether the infinite scroll is enabled.\n */\n public async isEnabled(): Promise<boolean> {\n return (await this.locatorForOptional('.sky-infinite-scroll')()) !== null;\n }\n\n /**\n * Whether the infinite scroll is loading.\n */\n public async isLoading(): Promise<boolean> {\n return (await this.isEnabled()) && (await this.#showMoreButton()) === null;\n }\n\n /**\n * Clicks the \"Load more\" button.\n */\n public async loadMore(): Promise<void> {\n const button = await this.#showMoreButton();\n if (button) {\n await button.click();\n } else {\n if (!(await this.isEnabled())) {\n throw new Error(\n 'Unable to click the \"Load more\" button because the infinite scroll is not enabled.'\n );\n } else {\n throw new Error(\n 'Unable to click the \"Load more\" button because the infinite scroll is loading.'\n );\n }\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -9,6 +9,9 @@ import { HarnessPredicate } from '@angular/cdk/testing';
9
9
  import { SkyCheckboxHarness } from '@skyux/forms/testing';
10
10
  import { NoopAnimationsModule } from '@angular/platform-browser/animations';
11
11
 
12
+ /**
13
+ * @internal
14
+ */
12
15
  class SkyFilterTestingModule {
13
16
  }
14
17
  SkyFilterTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyFilterTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -25,6 +28,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
25
28
  * Provides information for and interaction with a SKY UX filter summary component.
26
29
  * By using the fixture API, a test insulates itself against updates to the internals
27
30
  * of a component, such as changing its DOM structure.
31
+ * @internal
28
32
  */
29
33
  class SkyFilterFixtureSummary {
30
34
  constructor(fixture, skyTestId) {
@@ -52,6 +56,7 @@ class SkyFilterFixtureSummary {
52
56
  * Provides information for and interaction with a SKY UX filter button component.
53
57
  * By using the fixture API, a test insulates itself against updates to the internals
54
58
  * of a component, such as changing its DOM structure.
59
+ * @internal
55
60
  */
56
61
  class SkyFilterFixtureButton {
57
62
  constructor(fixture, skyTestId) {
@@ -93,6 +98,9 @@ class SkyFilterFixtureButton {
93
98
  }
94
99
  }
95
100
 
101
+ /**
102
+ * @internal
103
+ */
96
104
  class SkyPagingTestingModule {
97
105
  }
98
106
  SkyPagingTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyPagingTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -109,6 +117,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
109
117
  * Provides information for and interaction with a SKY UX paging component.
110
118
  * By using the fixture API, a test insulates itself against updates to the internals
111
119
  * of a component, such as changing its DOM structure.
120
+ * @internal
112
121
  */
113
122
  class SkyPagingFixture {
114
123
  constructor(fixture, skyTestId) {
@@ -199,6 +208,7 @@ class SkyPagingFixture {
199
208
  var _SkyRepeaterItemHarness_getCheckbox, _SkyRepeaterItemHarness_getContent, _SkyRepeaterItemHarness_getTitle;
200
209
  /**
201
210
  * Harness for interacting with a repeater item component in tests.
211
+ * @internal
202
212
  */
203
213
  class SkyRepeaterItemHarness extends SkyComponentHarness {
204
214
  constructor() {
@@ -267,6 +277,7 @@ SkyRepeaterItemHarness.hostSelector = 'sky-repeater-item';
267
277
 
268
278
  /**
269
279
  * Harness for interacting with a repeater component in tests.
280
+ * @internal
270
281
  */
271
282
  class SkyRepeaterHarness extends SkyComponentHarness {
272
283
  /**
@@ -285,6 +296,9 @@ class SkyRepeaterHarness extends SkyComponentHarness {
285
296
  }
286
297
  SkyRepeaterHarness.hostSelector = 'sky-repeater';
287
298
 
299
+ /**
300
+ * @internal
301
+ */
288
302
  class SkySortTestingModule {
289
303
  }
290
304
  SkySortTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkySortTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -302,6 +316,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
302
316
  * Provides information for and interaction with a SKY UX sort component.
303
317
  * By using the fixture API, a test insulates itself against updates to the internals
304
318
  * of a component, such as changing its DOM structure.
319
+ * @internal
305
320
  */
306
321
  class SkySortFixture {
307
322
  constructor(fixture, skyTestId) {
@@ -436,6 +451,9 @@ class SkySortFixture {
436
451
  }
437
452
  }
438
453
 
454
+ /**
455
+ * @internal
456
+ */
439
457
  class SkyInfiniteScrollTestingModule {
440
458
  }
441
459
  SkyInfiniteScrollTestingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyInfiniteScrollTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -453,6 +471,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
453
471
  * By using the fixture API, a test insulates itself against updates to the internals
454
472
  * of a component, such as changing its DOM structure.
455
473
  * @deprecated Use `SkyInfiniteScrollHarness` instead.
474
+ * @internal
456
475
  */
457
476
  class SkyInfiniteScrollFixture {
458
477
  constructor(fixture, skyTestId) {
@@ -478,6 +497,7 @@ class SkyInfiniteScrollFixture {
478
497
  var _SkyInfiniteScrollHarness_showMoreButton;
479
498
  /**
480
499
  * Harness for interacting with an infinite scroll component in tests.
500
+ * @internal
481
501
  */
482
502
  class SkyInfiniteScrollHarness extends SkyComponentHarness {
483
503
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-lists-testing.mjs","sources":["../../../../../libs/components/lists/testing/src/filter/filter-testing.module.ts","../../../../../libs/components/lists/testing/src/filter/filter-fixture-summary.ts","../../../../../libs/components/lists/testing/src/filter/filter-fixture-button.ts","../../../../../libs/components/lists/testing/src/paging/paging-testing.module.ts","../../../../../libs/components/lists/testing/src/paging/paging-fixture.ts","../../../../../libs/components/lists/testing/src/repeater/repeater-item-harness.ts","../../../../../libs/components/lists/testing/src/repeater/repeater-harness.ts","../../../../../libs/components/lists/testing/src/sort/sort-testing.module.ts","../../../../../libs/components/lists/testing/src/sort/sort-fixture.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-testing.module.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-fixture.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-harness.ts","../../../../../libs/components/lists/testing/src/skyux-lists-testing.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { SkyFilterModule } from '@skyux/lists';\n\n@NgModule({\n exports: [SkyFilterModule],\n})\nexport class SkyFilterTestingModule {}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Provides information for and interaction with a SKY UX filter summary 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 */\nexport class SkyFilterFixtureSummary {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n this.fixture,\n skyTestId,\n 'sky-filter-summary'\n );\n }\n\n public async filterCloseClick(index: number): Promise<any> {\n const summaryItems = this.debugElement.nativeElement.querySelectorAll(\n 'sky-filter-summary-item'\n );\n if (summaryItems.length > index) {\n const summaryItem = summaryItems[index];\n if (summaryItem instanceof HTMLElement) {\n const closeButton = summaryItem.querySelector('.sky-token-btn-close');\n if (closeButton instanceof HTMLElement) {\n closeButton.click();\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n }\n throw new Error(`Unable to click close for a filter index ${index}`);\n }\n}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\nimport { SkyListsFilterFixtureButton } from './lists-filter-fixture-button';\n\n/**\n * Provides information for and interaction with a SKY UX filter button 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 */\nexport class SkyFilterFixtureButton {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n this.fixture,\n skyTestId,\n 'sky-filter-button'\n );\n }\n\n /**\n * Click the button to apply the filter.\n */\n public async clickFilterButton(): Promise<any> {\n const button = this.getButtonElement();\n if (button instanceof HTMLButtonElement && !button.disabled) {\n button.click();\n }\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n public get button(): SkyListsFilterFixtureButton {\n const buttonElement = this.getButtonElement();\n return {\n ariaControls: buttonElement.getAttribute('aria-controls'),\n ariaExpanded: buttonElement.getAttribute('aria-expanded') === 'true',\n disabled: buttonElement.disabled,\n id: buttonElement.id,\n };\n }\n /**\n * Get the button text.\n */\n public get buttonText(): string {\n const text = this.getButtonElement()?.innerText;\n return this.normalizeText(text);\n }\n\n private getButtonElement(): HTMLButtonElement | null {\n return this.debugElement.nativeElement.querySelector('.sky-filter-btn');\n }\n\n private normalizeText(text: string): string {\n return text.trim().replace(/\\s+/g, ' ');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SkyPagingModule } from '@skyux/lists';\n\n@NgModule({\n exports: [SkyPagingModule],\n})\nexport class SkyPagingTestingModule {}\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 { SkyPagingFixtureButton } from './paging-fixture-button';\n\n/**\n * Provides information for and interaction with a SKY UX paging 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 */\nexport class SkyPagingFixture {\n private _debugEl: DebugElement;\n\n /**\n * The id of the active page, if available.\n */\n public get activePageId(): string {\n return this.getPageId(this.activePageButton);\n }\n\n /**\n * Properties of the page links displayed in the paging component.\n */\n public get pageLinks(): SkyPagingFixtureButton[] {\n return this.pagingLinks.map((page: DebugElement) => {\n return {\n id: this.getPageId(page.nativeElement),\n isActive: page.nativeElement.classList.contains('sky-paging-current'),\n isEnabled: !page.nativeElement.disabled,\n };\n });\n }\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this._debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-paging'\n );\n\n this.waitForComponentInitialization();\n }\n\n /**\n * Selects the specified page by id, if it is enabled.\n */\n public async selectPage(id: string | number): Promise<void> {\n const pageButton = this.getPageLink(id.toString());\n\n if (pageButton !== undefined && !pageButton.disabled) {\n pageButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Clicks the next page button, if it is enabled.\n */\n public async selectNextPage(): Promise<void> {\n const nextButton = this.nextPageButton;\n\n if (nextButton !== undefined && !nextButton.disabled) {\n nextButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Clicks the previous page button, if it is enabled.\n */\n public async selectPreviousPage(): Promise<void> {\n const previousButton = this.previousPageButton;\n\n if (previousButton !== undefined && !previousButton.disabled) {\n previousButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n //#region helpers\n\n private get activePageButton(): HTMLButtonElement {\n return this._debugEl.query(\n By.css('.sky-list-paging-link .sky-paging-current')\n )?.nativeElement as HTMLButtonElement;\n }\n\n private get nextPageButton(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-paging-btn[sky-cmp-id=\"next\"]'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private get previousPageButton(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-paging-btn[sky-cmp-id=\"previous\"]'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private get pagingLinks(): DebugElement[] {\n return this._debugEl.queryAll(By.css('.sky-list-paging-link button'));\n }\n\n private getPageLink(id: string): HTMLButtonElement {\n return this._debugEl.query(\n By.css(`.sky-list-paging-link button[sky-cmp-id=\"${id}\"]`)\n )?.nativeElement as HTMLButtonElement;\n }\n\n private getPageId(page: HTMLButtonElement): string {\n return page?.getAttribute('sky-cmp-id');\n }\n\n private async waitForComponentInitialization(): Promise<void> {\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n //#endregion\n}\n","import { HarnessPredicate } from '@angular/cdk/testing';\nimport { SkyComponentHarness } from '@skyux/core/testing';\nimport { SkyCheckboxHarness } from '@skyux/forms/testing';\n\nimport { SkyRepeaterItemHarnessFilters } from './repeater-item-harness-filters';\n\n/**\n * Harness for interacting with a repeater item component in tests.\n */\nexport class SkyRepeaterItemHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-repeater-item';\n\n #getCheckbox = this.locatorForOptional(SkyCheckboxHarness);\n\n #getContent = this.locatorFor('.sky-repeater-item-content');\n\n #getTitle = this.locatorFor('.sky-repeater-item-title');\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyRepeaterItemHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyRepeaterItemHarnessFilters\n ): HarnessPredicate<SkyRepeaterItemHarness> {\n return SkyRepeaterItemHarness.getDataSkyIdPredicate(filters)\n .addOption('contentText', filters.contentText, async (harness, text) =>\n HarnessPredicate.stringMatches(await harness.getContentText(), text)\n )\n .addOption('titleText', filters.titleText, async (harness, text) =>\n HarnessPredicate.stringMatches(await harness.getTitleText(), text)\n );\n }\n\n /**\n * Whether the repeater item is selectable.\n */\n public async isSelectable(): Promise<boolean> {\n return !!(await this.#getCheckbox());\n }\n\n /**\n * Whether the repeater item is selected.\n */\n public async isSelected(): Promise<boolean> {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not determine if repeater item is selected because it is not selectable.'\n );\n }\n\n return (await this.#getCheckbox()).isChecked();\n }\n\n /**\n * Selects the repeater item.\n */\n public async select() {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not select the repeater item because it is not selectable.'\n );\n }\n\n await (await this.#getCheckbox()).check();\n }\n\n /**\n * Deselects the repeater item.\n */\n public async deselect(): Promise<void> {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not deselect the repeater item because it is not selectable.'\n );\n }\n\n await (await this.#getCheckbox()).uncheck();\n }\n\n /**\n * Gets the text of the repeater item content.\n */\n public async getContentText(): Promise<string> {\n return (await this.#getContent()).text();\n }\n\n /**\n * Gets the text of the repeater item title.\n */\n public async getTitleText(): Promise<string> {\n return (await this.#getTitle()).text();\n }\n}\n","import { HarnessPredicate } from '@angular/cdk/testing';\nimport { SkyComponentHarness } from '@skyux/core/testing';\n\nimport { SkyRepeaterHarnessFilters } from './repeater-harness-filters';\nimport { SkyRepeaterItemHarness } from './repeater-item-harness';\nimport { SkyRepeaterItemHarnessFilters } from './repeater-item-harness-filters';\n\n/**\n * Harness for interacting with a repeater component in tests.\n */\nexport class SkyRepeaterHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-repeater';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyRepeaterHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyRepeaterHarnessFilters\n ): HarnessPredicate<SkyRepeaterHarness> {\n return SkyRepeaterHarness.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Gets a list of child repeater items.\n */\n public async getRepeaterItems(\n filters?: SkyRepeaterItemHarnessFilters\n ): Promise<SkyRepeaterItemHarness[]> {\n return this.locatorForAll(SkyRepeaterItemHarness.with(filters || {}))();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NoopAnimationsModule } from '@angular/platform-browser/animations';\nimport { SkySortModule } from '@skyux/lists';\n\n@NgModule({\n imports: [NoopAnimationsModule],\n exports: [SkySortModule],\n})\nexport class SkySortTestingModule {}\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 { SkySortFixtureMenu } from './sort-fixture-menu';\nimport { SkySortFixtureMenuItem } from './sort-fixture-menu-item';\n\n/**\n * Provides information for and interaction with a SKY UX sort 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 */\nexport class SkySortFixture {\n /**\n * The active sort menu item, if one exists. Menu items are only available when the menu dropdown\n * is open. If the menu dropdown is closed, this property will be undefined.\n */\n public get activeMenuItem(): SkySortFixtureMenuItem {\n return this.menuItems?.find((x) => x.isActive);\n }\n\n /**\n * The sort menu's properties.\n */\n public get menu(): SkySortFixtureMenu {\n return {\n buttonText: SkyAppTestUtility.getText(this.getSortButtonTextEl()),\n isOpen: this.getDropdownMenuEl() !== null,\n };\n }\n\n /**\n * The properties of each sort menu item. Menu items are only available when the menu dropdown\n * is open. If the menu dropdown is closed, this property will be undefined.\n */\n public get menuItems(): SkySortFixtureMenuItem[] {\n // Return undefined when we can't determine what the options are.\n // We do this to avoid any confusion with an empty set of options.\n if (!this.menu.isOpen) {\n return;\n }\n\n return this.getSortItems().map((item: HTMLElement, i: number) => {\n const itemButton = item.querySelector('button');\n\n return {\n index: i,\n isActive: item.classList.contains('sky-sort-item-selected'),\n text: SkyAppTestUtility.getText(itemButton),\n };\n });\n }\n\n private _debugEl: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this._debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-sort'\n );\n }\n\n /**\n * Closes the sort dropdown menu if it isn't closed already.\n */\n public async closeMenu(): Promise<void> {\n // if the menu is already closed, do nothing\n if (!this.menu.isOpen) {\n return;\n }\n\n const menu = this.getDropdownButtonEl();\n if (menu !== undefined && !menu.disabled) {\n menu.click();\n\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Opens the sort dropdown menu if it isn't open already.\n */\n public async openMenu(): Promise<void> {\n // if the menu is already open, do nothing\n if (this.menu.isOpen) {\n return;\n }\n\n const menu = this.getDropdownButtonEl();\n\n if (menu !== undefined && !menu.disabled) {\n menu.click();\n\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item with the specified index, if it exists.\n * @param menuItemIndex The index of the menu item to select.\n */\n public async selectMenuItemByIndex(menuItemIndex: number): Promise<void> {\n return this.selectMenuItem((_item: HTMLElement, index: number) => {\n return index === menuItemIndex;\n });\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item with the specified text,\n * if a matching item is available.\n * @param menuItemText The text of the menu item to select.\n */\n public async selectMenuItemByText(menuItemText: string): Promise<void> {\n return this.selectMenuItem((item: HTMLElement) => {\n return SkyAppTestUtility.getText(item) === menuItemText;\n });\n }\n\n //#region helpers\n\n private getDropdownButtonEl(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-dropdown-button'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private getDropdownMenuEl(): HTMLElement {\n return document.querySelector('sky-overlay .sky-dropdown-menu');\n }\n\n private getSortButtonTextEl(): HTMLElement {\n return this._debugEl.query(By.css('.sky-sort-btn-text'))\n ?.nativeElement as HTMLElement;\n }\n\n private getSortItems(): HTMLElement[] {\n const resultNodes = document.querySelectorAll('sky-overlay .sky-sort-item');\n return Array.prototype.slice.call(resultNodes);\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item via a selection predicate,\n * if a matching item is available.\n * @param selectionPredicate The menu item selector method to use.\n */\n private async selectMenuItem(\n selectionPredicate: (item: HTMLElement, index: number) => boolean\n ): Promise<void> {\n // make sure the sort menu is open\n if (!this.menu.isOpen) {\n await this.openMenu();\n }\n\n // find the requested menu item using the selectionPredicate parameter\n const items = this.getSortItems();\n const targetItem = items.find((item: HTMLElement, index: number) =>\n selectionPredicate(item, index)\n );\n\n // if we found the item, select it\n if (targetItem) {\n // we've got the '.sky-sort-item' div, but we want to click it's child button element\n const targetButton = targetItem.querySelector('button');\n targetButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n //#endregion\n}\n","import { NgModule } from '@angular/core';\nimport { SkyInfiniteScrollModule } from '@skyux/lists';\n\n@NgModule({\n exports: [SkyInfiniteScrollModule],\n})\nexport class SkyInfiniteScrollTestingModule {}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Provides information for and interaction with a SKY UX infinite scroll 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 * @deprecated Use `SkyInfiniteScrollHarness` instead.\n */\nexport class SkyInfiniteScrollFixture {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-infinite-scroll'\n );\n }\n\n public get loadMoreButtonIsVisible(): boolean {\n return this.getButton() instanceof HTMLButtonElement;\n }\n\n public async clickLoadMoreButton(): Promise<any> {\n const button = this.getButton();\n if (button instanceof HTMLButtonElement) {\n button.click();\n }\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n private getButton() {\n return this.debugElement.nativeElement.querySelector(\n '.sky-infinite-scroll .sky-btn'\n );\n }\n}\n","import { SkyComponentHarness } from '@skyux/core/testing';\n\nimport { SkyInfiniteScrollHarnessFilters } from './infinite-scroll-harness-filters';\n\n/**\n * Harness for interacting with an infinite scroll component in tests.\n */\nexport class SkyInfiniteScrollHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-infinite-scroll';\n\n #showMoreButton = this.locatorForOptional(\n 'button.sky-infinite-scroll-load-more-button'\n );\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyInfiniteScrollHarness` that meets certain criteria.\n */\n public static with(filters: SkyInfiniteScrollHarnessFilters) {\n return this.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Whether the infinite scroll is enabled.\n */\n public async isEnabled(): Promise<boolean> {\n return (await this.locatorForOptional('.sky-infinite-scroll')()) !== null;\n }\n\n /**\n * Whether the infinite scroll is loading.\n */\n public async isLoading(): Promise<boolean> {\n return (await this.isEnabled()) && (await this.#showMoreButton()) === null;\n }\n\n /**\n * Clicks the \"Load more\" button.\n */\n public async loadMore(): Promise<void> {\n const button = await this.#showMoreButton();\n if (button) {\n await button.click();\n } else {\n if (!(await this.isEnabled())) {\n throw new Error(\n 'Unable to click the \"Load more\" button because the infinite scroll is not enabled.'\n );\n } else {\n throw new Error(\n 'Unable to click the \"Load more\" button because the infinite scroll is loading.'\n );\n }\n }\n }\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-lists-testing.mjs","sources":["../../../../../libs/components/lists/testing/src/filter/filter-testing.module.ts","../../../../../libs/components/lists/testing/src/filter/filter-fixture-summary.ts","../../../../../libs/components/lists/testing/src/filter/filter-fixture-button.ts","../../../../../libs/components/lists/testing/src/paging/paging-testing.module.ts","../../../../../libs/components/lists/testing/src/paging/paging-fixture.ts","../../../../../libs/components/lists/testing/src/repeater/repeater-item-harness.ts","../../../../../libs/components/lists/testing/src/repeater/repeater-harness.ts","../../../../../libs/components/lists/testing/src/sort/sort-testing.module.ts","../../../../../libs/components/lists/testing/src/sort/sort-fixture.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-testing.module.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-fixture.ts","../../../../../libs/components/lists/testing/src/infinite-scroll/infinite-scroll-harness.ts","../../../../../libs/components/lists/testing/src/skyux-lists-testing.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { SkyFilterModule } from '@skyux/lists';\n\n/**\n * @internal\n */\n@NgModule({\n exports: [SkyFilterModule],\n})\nexport class SkyFilterTestingModule {}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Provides information for and interaction with a SKY UX filter summary 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 SkyFilterFixtureSummary {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n this.fixture,\n skyTestId,\n 'sky-filter-summary'\n );\n }\n\n public async filterCloseClick(index: number): Promise<any> {\n const summaryItems = this.debugElement.nativeElement.querySelectorAll(\n 'sky-filter-summary-item'\n );\n if (summaryItems.length > index) {\n const summaryItem = summaryItems[index];\n if (summaryItem instanceof HTMLElement) {\n const closeButton = summaryItem.querySelector('.sky-token-btn-close');\n if (closeButton instanceof HTMLElement) {\n closeButton.click();\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n }\n throw new Error(`Unable to click close for a filter index ${index}`);\n }\n}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\nimport { SkyListsFilterFixtureButton } from './lists-filter-fixture-button';\n\n/**\n * Provides information for and interaction with a SKY UX filter button 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 SkyFilterFixtureButton {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n this.fixture,\n skyTestId,\n 'sky-filter-button'\n );\n }\n\n /**\n * Click the button to apply the filter.\n */\n public async clickFilterButton(): Promise<any> {\n const button = this.getButtonElement();\n if (button instanceof HTMLButtonElement && !button.disabled) {\n button.click();\n }\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n public get button(): SkyListsFilterFixtureButton {\n const buttonElement = this.getButtonElement();\n return {\n ariaControls: buttonElement.getAttribute('aria-controls'),\n ariaExpanded: buttonElement.getAttribute('aria-expanded') === 'true',\n disabled: buttonElement.disabled,\n id: buttonElement.id,\n };\n }\n /**\n * Get the button text.\n */\n public get buttonText(): string {\n const text = this.getButtonElement()?.innerText;\n return this.normalizeText(text);\n }\n\n private getButtonElement(): HTMLButtonElement | null {\n return this.debugElement.nativeElement.querySelector('.sky-filter-btn');\n }\n\n private normalizeText(text: string): string {\n return text.trim().replace(/\\s+/g, ' ');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SkyPagingModule } from '@skyux/lists';\n\n/**\n * @internal\n */\n@NgModule({\n exports: [SkyPagingModule],\n})\nexport class SkyPagingTestingModule {}\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 { SkyPagingFixtureButton } from './paging-fixture-button';\n\n/**\n * Provides information for and interaction with a SKY UX paging 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 SkyPagingFixture {\n private _debugEl: DebugElement;\n\n /**\n * The id of the active page, if available.\n */\n public get activePageId(): string {\n return this.getPageId(this.activePageButton);\n }\n\n /**\n * Properties of the page links displayed in the paging component.\n */\n public get pageLinks(): SkyPagingFixtureButton[] {\n return this.pagingLinks.map((page: DebugElement) => {\n return {\n id: this.getPageId(page.nativeElement),\n isActive: page.nativeElement.classList.contains('sky-paging-current'),\n isEnabled: !page.nativeElement.disabled,\n };\n });\n }\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this._debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-paging'\n );\n\n this.waitForComponentInitialization();\n }\n\n /**\n * Selects the specified page by id, if it is enabled.\n */\n public async selectPage(id: string | number): Promise<void> {\n const pageButton = this.getPageLink(id.toString());\n\n if (pageButton !== undefined && !pageButton.disabled) {\n pageButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Clicks the next page button, if it is enabled.\n */\n public async selectNextPage(): Promise<void> {\n const nextButton = this.nextPageButton;\n\n if (nextButton !== undefined && !nextButton.disabled) {\n nextButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Clicks the previous page button, if it is enabled.\n */\n public async selectPreviousPage(): Promise<void> {\n const previousButton = this.previousPageButton;\n\n if (previousButton !== undefined && !previousButton.disabled) {\n previousButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n //#region helpers\n\n private get activePageButton(): HTMLButtonElement {\n return this._debugEl.query(\n By.css('.sky-list-paging-link .sky-paging-current')\n )?.nativeElement as HTMLButtonElement;\n }\n\n private get nextPageButton(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-paging-btn[sky-cmp-id=\"next\"]'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private get previousPageButton(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-paging-btn[sky-cmp-id=\"previous\"]'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private get pagingLinks(): DebugElement[] {\n return this._debugEl.queryAll(By.css('.sky-list-paging-link button'));\n }\n\n private getPageLink(id: string): HTMLButtonElement {\n return this._debugEl.query(\n By.css(`.sky-list-paging-link button[sky-cmp-id=\"${id}\"]`)\n )?.nativeElement as HTMLButtonElement;\n }\n\n private getPageId(page: HTMLButtonElement): string {\n return page?.getAttribute('sky-cmp-id');\n }\n\n private async waitForComponentInitialization(): Promise<void> {\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n //#endregion\n}\n","import { HarnessPredicate } from '@angular/cdk/testing';\nimport { SkyComponentHarness } from '@skyux/core/testing';\nimport { SkyCheckboxHarness } from '@skyux/forms/testing';\n\nimport { SkyRepeaterItemHarnessFilters } from './repeater-item-harness-filters';\n\n/**\n * Harness for interacting with a repeater item component in tests.\n * @internal\n */\nexport class SkyRepeaterItemHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-repeater-item';\n\n #getCheckbox = this.locatorForOptional(SkyCheckboxHarness);\n\n #getContent = this.locatorFor('.sky-repeater-item-content');\n\n #getTitle = this.locatorFor('.sky-repeater-item-title');\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyRepeaterItemHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyRepeaterItemHarnessFilters\n ): HarnessPredicate<SkyRepeaterItemHarness> {\n return SkyRepeaterItemHarness.getDataSkyIdPredicate(filters)\n .addOption('contentText', filters.contentText, async (harness, text) =>\n HarnessPredicate.stringMatches(await harness.getContentText(), text)\n )\n .addOption('titleText', filters.titleText, async (harness, text) =>\n HarnessPredicate.stringMatches(await harness.getTitleText(), text)\n );\n }\n\n /**\n * Whether the repeater item is selectable.\n */\n public async isSelectable(): Promise<boolean> {\n return !!(await this.#getCheckbox());\n }\n\n /**\n * Whether the repeater item is selected.\n */\n public async isSelected(): Promise<boolean> {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not determine if repeater item is selected because it is not selectable.'\n );\n }\n\n return (await this.#getCheckbox()).isChecked();\n }\n\n /**\n * Selects the repeater item.\n */\n public async select() {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not select the repeater item because it is not selectable.'\n );\n }\n\n await (await this.#getCheckbox()).check();\n }\n\n /**\n * Deselects the repeater item.\n */\n public async deselect(): Promise<void> {\n if (!(await this.isSelectable())) {\n throw new Error(\n 'Could not deselect the repeater item because it is not selectable.'\n );\n }\n\n await (await this.#getCheckbox()).uncheck();\n }\n\n /**\n * Gets the text of the repeater item content.\n */\n public async getContentText(): Promise<string> {\n return (await this.#getContent()).text();\n }\n\n /**\n * Gets the text of the repeater item title.\n */\n public async getTitleText(): Promise<string> {\n return (await this.#getTitle()).text();\n }\n}\n","import { HarnessPredicate } from '@angular/cdk/testing';\nimport { SkyComponentHarness } from '@skyux/core/testing';\n\nimport { SkyRepeaterHarnessFilters } from './repeater-harness-filters';\nimport { SkyRepeaterItemHarness } from './repeater-item-harness';\nimport { SkyRepeaterItemHarnessFilters } from './repeater-item-harness-filters';\n\n/**\n * Harness for interacting with a repeater component in tests.\n * @internal\n */\nexport class SkyRepeaterHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-repeater';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyRepeaterHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyRepeaterHarnessFilters\n ): HarnessPredicate<SkyRepeaterHarness> {\n return SkyRepeaterHarness.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Gets a list of child repeater items.\n */\n public async getRepeaterItems(\n filters?: SkyRepeaterItemHarnessFilters\n ): Promise<SkyRepeaterItemHarness[]> {\n return this.locatorForAll(SkyRepeaterItemHarness.with(filters || {}))();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { NoopAnimationsModule } from '@angular/platform-browser/animations';\nimport { SkySortModule } from '@skyux/lists';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [NoopAnimationsModule],\n exports: [SkySortModule],\n})\nexport class SkySortTestingModule {}\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 { SkySortFixtureMenu } from './sort-fixture-menu';\nimport { SkySortFixtureMenuItem } from './sort-fixture-menu-item';\n\n/**\n * Provides information for and interaction with a SKY UX sort 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 SkySortFixture {\n /**\n * The active sort menu item, if one exists. Menu items are only available when the menu dropdown\n * is open. If the menu dropdown is closed, this property will be undefined.\n */\n public get activeMenuItem(): SkySortFixtureMenuItem {\n return this.menuItems?.find((x) => x.isActive);\n }\n\n /**\n * The sort menu's properties.\n */\n public get menu(): SkySortFixtureMenu {\n return {\n buttonText: SkyAppTestUtility.getText(this.getSortButtonTextEl()),\n isOpen: this.getDropdownMenuEl() !== null,\n };\n }\n\n /**\n * The properties of each sort menu item. Menu items are only available when the menu dropdown\n * is open. If the menu dropdown is closed, this property will be undefined.\n */\n public get menuItems(): SkySortFixtureMenuItem[] {\n // Return undefined when we can't determine what the options are.\n // We do this to avoid any confusion with an empty set of options.\n if (!this.menu.isOpen) {\n return;\n }\n\n return this.getSortItems().map((item: HTMLElement, i: number) => {\n const itemButton = item.querySelector('button');\n\n return {\n index: i,\n isActive: item.classList.contains('sky-sort-item-selected'),\n text: SkyAppTestUtility.getText(itemButton),\n };\n });\n }\n\n private _debugEl: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this._debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-sort'\n );\n }\n\n /**\n * Closes the sort dropdown menu if it isn't closed already.\n */\n public async closeMenu(): Promise<void> {\n // if the menu is already closed, do nothing\n if (!this.menu.isOpen) {\n return;\n }\n\n const menu = this.getDropdownButtonEl();\n if (menu !== undefined && !menu.disabled) {\n menu.click();\n\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Opens the sort dropdown menu if it isn't open already.\n */\n public async openMenu(): Promise<void> {\n // if the menu is already open, do nothing\n if (this.menu.isOpen) {\n return;\n }\n\n const menu = this.getDropdownButtonEl();\n\n if (menu !== undefined && !menu.disabled) {\n menu.click();\n\n this.fixture.detectChanges();\n await this.fixture.whenStable();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item with the specified index, if it exists.\n * @param menuItemIndex The index of the menu item to select.\n */\n public async selectMenuItemByIndex(menuItemIndex: number): Promise<void> {\n return this.selectMenuItem((_item: HTMLElement, index: number) => {\n return index === menuItemIndex;\n });\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item with the specified text,\n * if a matching item is available.\n * @param menuItemText The text of the menu item to select.\n */\n public async selectMenuItemByText(menuItemText: string): Promise<void> {\n return this.selectMenuItem((item: HTMLElement) => {\n return SkyAppTestUtility.getText(item) === menuItemText;\n });\n }\n\n //#region helpers\n\n private getDropdownButtonEl(): HTMLButtonElement {\n return this._debugEl.query(By.css('.sky-dropdown-button'))\n ?.nativeElement as HTMLButtonElement;\n }\n\n private getDropdownMenuEl(): HTMLElement {\n return document.querySelector('sky-overlay .sky-dropdown-menu');\n }\n\n private getSortButtonTextEl(): HTMLElement {\n return this._debugEl.query(By.css('.sky-sort-btn-text'))\n ?.nativeElement as HTMLElement;\n }\n\n private getSortItems(): HTMLElement[] {\n const resultNodes = document.querySelectorAll('sky-overlay .sky-sort-item');\n return Array.prototype.slice.call(resultNodes);\n }\n\n /**\n * Ensures the sort menu is open and selects the menu item via a selection predicate,\n * if a matching item is available.\n * @param selectionPredicate The menu item selector method to use.\n */\n private async selectMenuItem(\n selectionPredicate: (item: HTMLElement, index: number) => boolean\n ): Promise<void> {\n // make sure the sort menu is open\n if (!this.menu.isOpen) {\n await this.openMenu();\n }\n\n // find the requested menu item using the selectionPredicate parameter\n const items = this.getSortItems();\n const targetItem = items.find((item: HTMLElement, index: number) =>\n selectionPredicate(item, index)\n );\n\n // if we found the item, select it\n if (targetItem) {\n // we've got the '.sky-sort-item' div, but we want to click it's child button element\n const targetButton = targetItem.querySelector('button');\n targetButton.click();\n\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n }\n\n //#endregion\n}\n","import { NgModule } from '@angular/core';\nimport { SkyInfiniteScrollModule } from '@skyux/lists';\n\n/**\n * @internal\n */\n@NgModule({\n exports: [SkyInfiniteScrollModule],\n})\nexport class SkyInfiniteScrollTestingModule {}\n","import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Provides information for and interaction with a SKY UX infinite scroll 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 * @deprecated Use `SkyInfiniteScrollHarness` instead.\n * @internal\n */\nexport class SkyInfiniteScrollFixture {\n private debugElement: DebugElement;\n\n constructor(private fixture: ComponentFixture<any>, skyTestId: string) {\n this.debugElement = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-infinite-scroll'\n );\n }\n\n public get loadMoreButtonIsVisible(): boolean {\n return this.getButton() instanceof HTMLButtonElement;\n }\n\n public async clickLoadMoreButton(): Promise<any> {\n const button = this.getButton();\n if (button instanceof HTMLButtonElement) {\n button.click();\n }\n this.fixture.detectChanges();\n return this.fixture.whenStable();\n }\n\n private getButton() {\n return this.debugElement.nativeElement.querySelector(\n '.sky-infinite-scroll .sky-btn'\n );\n }\n}\n","import { SkyComponentHarness } from '@skyux/core/testing';\n\nimport { SkyInfiniteScrollHarnessFilters } from './infinite-scroll-harness-filters';\n\n/**\n * Harness for interacting with an infinite scroll component in tests.\n * @internal\n */\nexport class SkyInfiniteScrollHarness extends SkyComponentHarness {\n public static hostSelector = 'sky-infinite-scroll';\n\n #showMoreButton = this.locatorForOptional(\n 'button.sky-infinite-scroll-load-more-button'\n );\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyInfiniteScrollHarness` that meets certain criteria.\n */\n public static with(filters: SkyInfiniteScrollHarnessFilters) {\n return this.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Whether the infinite scroll is enabled.\n */\n public async isEnabled(): Promise<boolean> {\n return (await this.locatorForOptional('.sky-infinite-scroll')()) !== null;\n }\n\n /**\n * Whether the infinite scroll is loading.\n */\n public async isLoading(): Promise<boolean> {\n return (await this.isEnabled()) && (await this.#showMoreButton()) === null;\n }\n\n /**\n * Clicks the \"Load more\" button.\n */\n public async loadMore(): Promise<void> {\n const button = await this.#showMoreButton();\n if (button) {\n await button.click();\n } else {\n if (!(await this.isEnabled())) {\n throw new Error(\n 'Unable to click the \"Load more\" button because the infinite scroll is not enabled.'\n );\n } else {\n throw new Error(\n 'Unable to click the \"Load more\" button because the infinite scroll is loading.'\n );\n }\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyux/lists",
3
- "version": "6.16.0",
3
+ "version": "6.17.0",
4
4
  "author": "Blackbaud, Inc.",
5
5
  "keywords": [
6
6
  "blackbaud",
@@ -44,15 +44,15 @@
44
44
  "@angular/common": "^13.3.2",
45
45
  "@angular/core": "^13.3.2",
46
46
  "@angular/platform-browser": "^13.3.2",
47
- "@skyux-sdk/testing": "6.16.0",
48
- "@skyux/animations": "6.16.0",
49
- "@skyux/core": "6.16.0",
50
- "@skyux/forms": "6.16.0",
51
- "@skyux/i18n": "6.16.0",
52
- "@skyux/indicators": "6.16.0",
53
- "@skyux/inline-form": "6.16.0",
54
- "@skyux/popovers": "6.16.0",
55
- "@skyux/theme": "6.16.0"
47
+ "@skyux-sdk/testing": "6.17.0",
48
+ "@skyux/animations": "6.17.0",
49
+ "@skyux/core": "6.17.0",
50
+ "@skyux/forms": "6.17.0",
51
+ "@skyux/i18n": "6.17.0",
52
+ "@skyux/indicators": "6.17.0",
53
+ "@skyux/inline-form": "6.17.0",
54
+ "@skyux/popovers": "6.17.0",
55
+ "@skyux/theme": "6.17.0"
56
56
  },
57
57
  "dependencies": {
58
58
  "dragula": "3.7.3",
@@ -4,6 +4,7 @@ import { SkyListsFilterFixtureButton } from './lists-filter-fixture-button';
4
4
  * Provides information for and interaction with a SKY UX filter button component.
5
5
  * By using the fixture API, a test insulates itself against updates to the internals
6
6
  * of a component, such as changing its DOM structure.
7
+ * @internal
7
8
  */
8
9
  export declare class SkyFilterFixtureButton {
9
10
  private fixture;
@@ -3,6 +3,7 @@ import { ComponentFixture } from '@angular/core/testing';
3
3
  * Provides information for and interaction with a SKY UX filter summary component.
4
4
  * By using the fixture API, a test insulates itself against updates to the internals
5
5
  * of a component, such as changing its DOM structure.
6
+ * @internal
6
7
  */
7
8
  export declare class SkyFilterFixtureSummary {
8
9
  private fixture;
@@ -1,5 +1,8 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "@skyux/lists";
3
+ /**
4
+ * @internal
5
+ */
3
6
  export declare class SkyFilterTestingModule {
4
7
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyFilterTestingModule, never>;
5
8
  static ɵmod: i0.ɵɵNgModuleDeclaration<SkyFilterTestingModule, never, never, [typeof i1.SkyFilterModule]>;
@@ -4,6 +4,7 @@ import { ComponentFixture } from '@angular/core/testing';
4
4
  * By using the fixture API, a test insulates itself against updates to the internals
5
5
  * of a component, such as changing its DOM structure.
6
6
  * @deprecated Use `SkyInfiniteScrollHarness` instead.
7
+ * @internal
7
8
  */
8
9
  export declare class SkyInfiniteScrollFixture {
9
10
  private fixture;
@@ -1,6 +1,7 @@
1
1
  import { SkyHarnessFilters } from '@skyux/core/testing';
2
2
  /**
3
3
  * A set of criteria that can be used to filter a list of `SkyInfiniteScrollHarness` instances.
4
+ * @internal
4
5
  */
5
6
  export interface SkyInfiniteScrollHarnessFilters extends SkyHarnessFilters {
6
7
  }
@@ -2,6 +2,7 @@ import { SkyComponentHarness } from '@skyux/core/testing';
2
2
  import { SkyInfiniteScrollHarnessFilters } from './infinite-scroll-harness-filters';
3
3
  /**
4
4
  * Harness for interacting with an infinite scroll component in tests.
5
+ * @internal
5
6
  */
6
7
  export declare class SkyInfiniteScrollHarness extends SkyComponentHarness {
7
8
  #private;
@@ -1,5 +1,8 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "@skyux/lists";
3
+ /**
4
+ * @internal
5
+ */
3
6
  export declare class SkyInfiniteScrollTestingModule {
4
7
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyInfiniteScrollTestingModule, never>;
5
8
  static ɵmod: i0.ɵɵNgModuleDeclaration<SkyInfiniteScrollTestingModule, never, never, [typeof i1.SkyInfiniteScrollModule]>;
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @internal
3
+ */
1
4
  export interface SkyPagingFixtureButton {
2
5
  id: string;
3
6
  isActive: boolean;
@@ -4,6 +4,7 @@ import { SkyPagingFixtureButton } from './paging-fixture-button';
4
4
  * Provides information for and interaction with a SKY UX paging component.
5
5
  * By using the fixture API, a test insulates itself against updates to the internals
6
6
  * of a component, such as changing its DOM structure.
7
+ * @internal
7
8
  */
8
9
  export declare class SkyPagingFixture {
9
10
  private fixture;
@@ -1,5 +1,8 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "@skyux/lists";
3
+ /**
4
+ * @internal
5
+ */
3
6
  export declare class SkyPagingTestingModule {
4
7
  static ɵfac: i0.ɵɵFactoryDeclaration<SkyPagingTestingModule, never>;
5
8
  static ɵmod: i0.ɵɵNgModuleDeclaration<SkyPagingTestingModule, never, never, [typeof i1.SkyPagingModule]>;
@@ -1,6 +1,7 @@
1
1
  import { SkyHarnessFilters } from '@skyux/core/testing';
2
2
  /**
3
3
  * A set of criteria that can be used to filter a list of `SkyRepeaterHarness` instances.
4
+ * @internal
4
5
  */
5
6
  export interface SkyRepeaterHarnessFilters extends SkyHarnessFilters {
6
7
  }
@@ -5,6 +5,7 @@ import { SkyRepeaterItemHarness } from './repeater-item-harness';
5
5
  import { SkyRepeaterItemHarnessFilters } from './repeater-item-harness-filters';
6
6
  /**
7
7
  * Harness for interacting with a repeater component in tests.
8
+ * @internal
8
9
  */
9
10
  export declare class SkyRepeaterHarness extends SkyComponentHarness {
10
11
  static hostSelector: string;