[EuiTableRow] isSelectable prop update

- `isSelectable` now indicates whether the checkbox is disabled or enabled; `hasSelection` (new prop) determines visual checkbox affordance
This commit is contained in:
Cee Chen 2024-04-09 14:07:12 -07:00
parent 5ac1913863
commit c180bc30af
3 changed files with 5 additions and 8 deletions

View file

@ -69,14 +69,10 @@ export class ListingTableService extends FtrService {
private async getAllSelectableItemsNamesOnCurrentPage(): Promise<string[]> {
const visualizationNames = [];
// TODO - use .euiTableRow-isSelectable when it's working again (https://github.com/elastic/eui/issues/7515)
const rows = await this.find.allByCssSelector('.euiTableRow');
const rows = await this.find.allByCssSelector('.euiTableRow-isSelectable');
for (let i = 0; i < rows.length; i++) {
const checkbox = await rows[i].findByCssSelector('.euiCheckbox__input');
if (await checkbox.isEnabled()) {
const link = await rows[i].findByCssSelector('.euiLink');
visualizationNames.push(await link.getVisibleText());
}
const link = await rows[i].findByCssSelector('.euiLink');
visualizationNames.push(await link.getVisibleText());
}
this.log.debug(`Found ${visualizationNames.length} selectable visualizations on current page`);
return visualizationNames;

View file

@ -437,6 +437,7 @@ export class IndexTable extends Component {
data-test-subj="indexTableRow"
isSelected={this.isItemSelected(name)}
isSelectable
hasSelection
key={`${name}-row`}
>
<EuiTableRowCellCheckbox key={`checkbox-${name}`}>

View file

@ -325,7 +325,7 @@ export function CustomSelectionTable({
<EuiTableRow
key={item[tableItemId]}
isSelected={isItemSelected(item[tableItemId])}
isSelectable={true}
hasSelection={true}
hasActions={true}
data-test-subj={`mlCustomSelectionTableRow row-${item[tableItemId]}`}
>