UNPKG

@nova-ui/bits

Version:

SolarWinds Nova Framework

85 lines (84 loc) 3.31 kB
import { Locator } from "@playwright/test"; import { Atom } from "../../atom"; import { CheckboxAtom } from "../checkbox/checkbox.atom"; import { IconAtom } from "../icon/icon.atom"; import { SelectorAtom } from "../selector/selector.atom"; export declare class TableAtom extends Atom { static CSS_CLASS: string; getColumn(name: string): Locator; /** * * @param {number} rowIndex = 0 stands for header row * @param {number} cellIndex * @returns {Locator} */ getCell(rowIndex: number, cellIndex: number): Locator; getRowContent(rowIndex: number): Promise<Array<string>>; getRow: (rowIndex: number) => Locator; getRowsCount(): Promise<number>; /** * Check whether a row is selected */ isRowSelected: (rowIndex: number) => Promise<void>; /** * Check whether any part of a row can be clicked to make a selection (not just the checkbox) */ isRowClickable: (rowIndex: number) => Promise<void>; /** * Check whether any part of a row can be clicked to make a selection (not just the checkbox) */ isNotRowClickable: (rowIndex: number) => Promise<void>; /** * * @deprecated * @param {number} rowIndex = 0 stands for header row * @param {number} cellIndex * @returns {Promise<string>} */ getCellText: (rowIndex: number, cellIndex: number) => Promise<string | null>; /** * Gets all the resizers of table * @returns {Locator} */ getResizers: () => Locator; /** * Gets all header cells of the table * @returns {Locator} */ getHeaderCells: () => Locator; getSortingIcon(headerCell: Locator): IconAtom; getHeaderCellsWithIcon: () => Locator; checkSortingIcons(expectedCellWithIconIndex: number): Promise<void>; getCheckbox: (element: Locator) => CheckboxAtom; getSelector: (element: Locator) => SelectorAtom; /** * Use this method to check whether selection is enabled or disabled for all rows including the header * * @param enabled Pass 'true' if you want to check whether selection is enabled for all rows including the header. * Pass 'false' to check whether selection is disabled for all rows including the header. * * @returns The aggregate selectability status for all rows */ checkSelectability(enabled: boolean): Promise<boolean>; /** * Use this method to check whether selection by clicking on a row is enabled or disabled for all body rows. * (When row clicking is enabled, the user doesn't have to specifically click the checkbox in order to select the row.) * @param checker * the function to check if the row has some expectation * Pass 'false' to check whether clicking to select is disabled for all body rows. * * @returns The aggregate clickability status for all body rows */ checkRow(checker?: (index: number) => Promise<void>): Promise<void>; checkRowClickability(all: boolean): Promise<void>; /** * Checks if all checkboxes in all rows selected */ isAllRowsSelected(): Promise<boolean>; /** * Checks if all checkboxes in all rows selected */ isAllRowsNotSelected(): Promise<boolean>; private isSortingIconDisplayed; private isNotSortingIconDisplayed; }