From f7e59a231afded67394e1a93a7f7bff40479fade Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Wed, 16 Sep 2020 10:37:57 -0400 Subject: [PATCH 01/29] table-light --- packages/react-core/package.json | 1 + .../src/components/SkipToContent/SkipToContent.tsx | 10 ++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/react-core/package.json b/packages/react-core/package.json index 73fdbb4e9db..9d94d4a2f5f 100644 --- a/packages/react-core/package.json +++ b/packages/react-core/package.json @@ -40,6 +40,7 @@ "@patternfly/react-tokens": "^4.9.7", "focus-trap": "4.0.2", "react-dropzone": "9.0.0", + "react-router-hash-link": "^2.1.0", "tippy.js": "5.1.2", "tslib": "^1.11.1" }, diff --git a/packages/react-core/src/components/SkipToContent/SkipToContent.tsx b/packages/react-core/src/components/SkipToContent/SkipToContent.tsx index fc65503ad54..374bf042982 100644 --- a/packages/react-core/src/components/SkipToContent/SkipToContent.tsx +++ b/packages/react-core/src/components/SkipToContent/SkipToContent.tsx @@ -6,7 +6,7 @@ import { PickOptional } from '../../helpers/typeUtils'; export interface SkipToContentProps extends React.HTMLProps { /** The skip to content link. */ - href: string; + href?: string; /** Content to display within the skip to content component, typically a string. */ children?: React.ReactNode; /** Additional styles to apply to the skip to content component. */ @@ -31,7 +31,7 @@ export class SkipToContent extends React.Component { render() { // eslint-disable-next-line @typescript-eslint/no-unused-vars const { children, className, href, show, type, ...rest } = this.props; - return ( + const renderDefaultLink = (): React.ReactNode => ( { {children} ); + const renderClonedChild = (child: React.ReactElement): React.ReactNode => + React.cloneElement(child, { + className: css(buttonStyles.button, buttonStyles.modifiers.primary, styles.skipToContent, className), + ref: this.componentRef + }); + return React.isValidElement(children) ? renderClonedChild(children as React.ReactElement) : renderDefaultLink(); } } From 8ddc4324014babfce2fbe1f621c39b6859fec8eb Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Wed, 16 Sep 2020 10:39:44 -0400 Subject: [PATCH 02/29] wip --- .../react-table/src/components/TableLight/TableLight.tsx | 0 yarn.lock | 7 +++++++ 2 files changed, 7 insertions(+) create mode 100644 packages/react-table/src/components/TableLight/TableLight.tsx diff --git a/packages/react-table/src/components/TableLight/TableLight.tsx b/packages/react-table/src/components/TableLight/TableLight.tsx new file mode 100644 index 00000000000..e69de29bb2d diff --git a/yarn.lock b/yarn.lock index 10df6aee8a6..1f6b6edebcb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -20540,6 +20540,13 @@ react-router-dom@^4.3.1: react-router "^4.3.1" warning "^4.0.1" +react-router-hash-link@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/react-router-hash-link/-/react-router-hash-link-2.1.0.tgz#69cc93df0945480adff14e9e501aea5f356896a8" + integrity sha512-U/WizkZwV2IoxLScRJX5CHJWreXjv/kCmjT/LpfYiFdXGnrKgPd0KqcA4KfmQbkwO411OwDmUKKz+bOKoMkzKg== + dependencies: + prop-types "^15.6.0" + react-router@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/react-router/-/react-router-4.3.1.tgz#aada4aef14c809cb2e686b05cee4742234506c4e" From df6d1a997a90e3261d0075631f2e0190710cd973 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Mon, 28 Sep 2020 10:35:24 -0400 Subject: [PATCH 03/29] wip --- packages/react-docs/os-config.js | 101 ++ packages/react-docs/package.json | 5 +- .../components/LightTable/LightBodyCell.tsx | 30 + .../components/LightTable/LightHeaderCell.tsx | 66 ++ .../src/components/LightTable/LightTable.tsx | 57 ++ .../components/LightTable/LightTableBody.tsx | 19 + .../LightTable/LightTableCaption.tsx | 19 + .../components/LightTable/LightTableHead.tsx | 19 + .../components/LightTable/LightTableRow.tsx | 19 + .../src/components/LightTable/index.ts | 7 + .../src/components/Table/examples/Table.md | 652 +++++++----- .../src/components/TableLight/TableLight.tsx | 0 packages/react-table/src/components/index.ts | 1 + yarn.lock | 948 +++++++++++++++--- 14 files changed, 1561 insertions(+), 382 deletions(-) create mode 100644 packages/react-docs/os-config.js create mode 100644 packages/react-table/src/components/LightTable/LightBodyCell.tsx create mode 100644 packages/react-table/src/components/LightTable/LightHeaderCell.tsx create mode 100644 packages/react-table/src/components/LightTable/LightTable.tsx create mode 100644 packages/react-table/src/components/LightTable/LightTableBody.tsx create mode 100644 packages/react-table/src/components/LightTable/LightTableCaption.tsx create mode 100644 packages/react-table/src/components/LightTable/LightTableHead.tsx create mode 100644 packages/react-table/src/components/LightTable/LightTableRow.tsx create mode 100644 packages/react-table/src/components/LightTable/index.ts delete mode 100644 packages/react-table/src/components/TableLight/TableLight.tsx diff --git a/packages/react-docs/os-config.js b/packages/react-docs/os-config.js new file mode 100644 index 00000000000..0aa8198c05f --- /dev/null +++ b/packages/react-docs/os-config.js @@ -0,0 +1,101 @@ +function delay(time) { + return new Promise(function (resolve) { + setTimeout(resolve, time); + }); +} + +async function loginOpenshift({ page, data }) { + const user = "kubeadmin"; + const pass = "ucuUZ-corPs-IJJ5X-viMTB"; + const url = data.prefix; + console.log(`nav to ${url}`); + await page.goto(`${url}`, { waitUntil: "load" }); + if (page.url().indexOf("oauth-openshift") > -1) { + console.log("have to auth first"); + await page.waitForSelector("#inputUsername"); + await page.type("#inputUsername", user); + await page.type("#inputPassword", pass); + await page.click("button.pf-c-button"); + await page.waitForNavigation(); + await delay(1000); + console.log("finished auth"); + } +} + +async function waitForOs(page) { + // there should be no loading spinner + await page.waitForSelector(".co-m-loader", { + hidden: true, + }); + + // there should be no skeleton text + await page.waitForSelector("[class*='skeleton']", { + hidden: true, + timeout: 60000, + }); + + // content should have something in it + await page.waitForSelector("#content-scrollable > *"); + + // if that content has a loading spinner wait for it as well + await page.waitForSelector(".co-m-loader", { + hidden: true, + }); +} + +module.exports = { + prefix: "https://console-openshift-console.apps.ocp4.patternfly.org", + auth: loginOpenshift, + waitFor: waitForOs, + crawl: false, + urls: [ + "/dashboards", + { + url: "/k8s/cluster/projects", + afterNav: async (page) => { + await page.waitForSelector(".co-m-resource-project"); + }, + }, + "/k8s/cluster/projects/default", + "/search/ns/default", + "/api-explorer", + "/api-resource/cluster/core~v1~Namespace", + "/api-resource/cluster/core~v1~Namespace/schema", + "/api-resource/cluster/core~v1~Namespace/instances", + "/api-resource/cluster/core~v1~Namespace/access", + "/k8s/ns/default/events", + "/operatorhub/ns/default", + "/operatorhub/ns/default?details-item=3scale-community-operator-community-operators-openshift-marketplace", + "/k8s/ns/default/operators.coreos.com~v1alpha1~ClusterServiceVersion", + "/k8s/ns/default/pods", + "/k8s/ns/default/pods/~new", + "/k8s/ns/default/deployments", + "/k8s/ns/default/deployments/~new", + "/k8s/ns/default/deploymentconfigs", + "/k8s/ns/default/deploymentconfigs/~new", + "/k8s/ns/default/statefulsets", + "/k8s/ns/default/statefulsets/~new", + "/k8s/ns/default/secrets", + "/k8s/ns/default/secrets/builder-token-pdzbp", + "/k8s/ns/default/secrets/builder-token-pdzbp/yaml", + "/k8s/ns/default/configmaps", + "/k8s/ns/default/configmaps/nginx-1-ca", + "/k8s/ns/default/configmaps/nginx-1-ca/yaml", + "/k8s/ns/default/cronjobs", + "/k8s/ns/default/cronjobs/~new", + "/k8s/ns/default/jobs", + "/k8s/ns/default/jobs/~new", + "/k8s/ns/default/daemonsets", + "/k8s/ns/default/daemonsets/~new", + "/k8s/ns/default/replicasets", + "/k8s/ns/default/replicasets/~new", + "/k8s/ns/default/replicationcontrollers", + "/k8s/ns/default/replicationcontrollers/~new", + "/k8s/ns/default/horizontalpodautoscalers", + "/k8s/ns/default/horizontalpodautoscalers/~new", + "/k8s/ns/default/services", + "/k8s/ns/default/services/kubernetes", + "/k8s/ns/default/services/kubernetes/yaml", + "/k8s/ns/default/services/kubernetes/pods", + ], +}; diff --git a/packages/react-docs/package.json b/packages/react-docs/package.json index d79e2b5cb50..268a59ae4ef 100644 --- a/packages/react-docs/package.json +++ b/packages/react-docs/package.json @@ -20,7 +20,8 @@ "clean:mdx": "rimraf .cache/caches/gatsby-mdx", "develop": "gatsby develop", "serve": "gatsby serve", - "test:a11y": "patternfly-a11y --file .cache/fullscreenPages.json --prefix http://localhost:9000 --aggregate --noIncomplete --ignore color-contrast,focusable-content,scrollable-region-focusable --skip \"charts|virtualizedtable/selectable\"" + "test:a11y": "patternfly-a11y .cache/fullscreenPages.json --prefix https://www.patternfly.org/2020.11 --aggregate --ignore-incomplete --ignore-rules color-contrast,scrollable-region-focusable --skip \"charts|virtualizedtable/selectable\"", + "test:os": "patternfly-a11y --config os-config.js" }, "dependencies": { "@patternfly/patternfly": "4.42.2", @@ -38,7 +39,7 @@ "devDependencies": { "@mdx-js/mdx": "^1.1.5", "@mdx-js/react": "^1.1.5", - "@patternfly/patternfly-a11y": "^0.0.17", + "@patternfly/patternfly-a11y": "^2.0.5", "@types/react": "^16.8.0", "@types/react-dom": "^16.8.0", "gatsby": "2.21.0", diff --git a/packages/react-table/src/components/LightTable/LightBodyCell.tsx b/packages/react-table/src/components/LightTable/LightBodyCell.tsx new file mode 100644 index 00000000000..eba7b5f7fab --- /dev/null +++ b/packages/react-table/src/components/LightTable/LightBodyCell.tsx @@ -0,0 +1,30 @@ +import * as React from 'react'; +import { css } from '@patternfly/react-styles'; +import styles from '@patternfly/react-styles/css/components/Table/table'; + +export interface LightBodyCellProps { + /** Content rendered inside the body cell */ + children?: React.ReactNode; + /** Additional classes added to the body cell */ + className?: string; + /** + * The column header the cell corresponds to. + * This attribute replaces table header in mobile viewport. It is rendered by ::before pseudo element. + */ + dataLabel?: string; + /** Modifies cell to center its contents. */ + textCenter?: boolean; +} + +export const LightBodyCell: React.FunctionComponent = ({ + children, + className, + dataLabel, + textCenter = false, + ...props +}: LightBodyCellProps) => ( + + {children} + +); +LightBodyCell.displayName = 'LightBodyCell'; diff --git a/packages/react-table/src/components/LightTable/LightHeaderCell.tsx b/packages/react-table/src/components/LightTable/LightHeaderCell.tsx new file mode 100644 index 00000000000..58e7de0165c --- /dev/null +++ b/packages/react-table/src/components/LightTable/LightHeaderCell.tsx @@ -0,0 +1,66 @@ +import * as React from 'react'; +import { css } from '@patternfly/react-styles'; +import styles from '@patternfly/react-styles/css/components/Table/table'; +import { SortByDirection, SortColumn } from '../Table'; + +export interface LightHeaderCellProps { + /** Content rendered inside the header cell */ + children?: React.ReactNode; + /** Additional classes added to the header cell */ + className?: string; + /** Modifies cell to center its contents. */ + textCenter?: boolean; + sortable?: boolean; + onSort?: Function; + sortDirection?: SortByDirection | 'none'; + active?: boolean; +} + +export const LightHeaderCell: React.FunctionComponent = ({ + children, + className, + textCenter = false, + sortable = false, + onSort, + sortDirection = 'none', + active, + ...props +}: LightHeaderCellProps) => { + const [sortDirectionState, setSortDirectionState] = React.useState(sortDirection); + const getAriaSort = () => { + if (sortDirection === 'asc') { + return 'ascending'; + } else if (sortDirection === 'desc') { + return 'descending'; + } else { + return 'none'; + } + }; + return ( + + {sortable ? ( + + {children} + + ) : ( + children + )} + + ); +}; +LightHeaderCell.displayName = 'LightHeaderCell'; diff --git a/packages/react-table/src/components/LightTable/LightTable.tsx b/packages/react-table/src/components/LightTable/LightTable.tsx new file mode 100644 index 00000000000..47f9b41af9d --- /dev/null +++ b/packages/react-table/src/components/LightTable/LightTable.tsx @@ -0,0 +1,57 @@ +import * as React from 'react'; +import styles from '@patternfly/react-styles/css/components/Table/table'; +import stylesGrid from '@patternfly/react-styles/css/components/Table/table-grid'; +import { css } from '@patternfly/react-styles'; +import { TableGridBreakpoint, TableVariant, toCamel } from '../Table'; + +export interface LightTableProps { + /** Content rendered inside the Table */ + children?: React.ReactNode; + /** Additional classes added to the Table */ + className?: string; + /** Style variant for the Table */ + variant?: 'compact'; + /** Render borders */ + borders?: boolean; + /** If set to true, the table header sticks to the top of its container */ + isStickyHeader?: boolean; + /** Specifies the grid breakpoints */ + gridBreakPoint?: '' | 'grid' | 'grid-md' | 'grid-lg' | 'grid-xl' | 'grid-2xl'; + /** + * Provides an accessible name for the table when a descriptive or is not available. + * Required in the absence of or + */ + 'aria-label'?: string; +} + +export const LightTable: React.FunctionComponent = ({ + children, + className, + variant, + borders = true, + isStickyHeader = false, + gridBreakPoint = TableGridBreakpoint.gridMd, + 'aria-label': ariaLabel, + ...props +}: LightTableProps) => ( + + {children} +
+); +LightTable.displayName = 'LightTable'; diff --git a/packages/react-table/src/components/LightTable/LightTableBody.tsx b/packages/react-table/src/components/LightTable/LightTableBody.tsx new file mode 100644 index 00000000000..7acde3025ea --- /dev/null +++ b/packages/react-table/src/components/LightTable/LightTableBody.tsx @@ -0,0 +1,19 @@ +import * as React from 'react'; + +export interface LightTableBodyProps { + /** Content rendered inside the row */ + children?: React.ReactNode; + /** Additional classes added to the row */ + className?: string; +} + +export const LightTableBody: React.FunctionComponent = ({ + children, + className, + ...props +}: LightTableBodyProps) => ( + + {children} + +); +LightTableBody.displayName = 'LightTableBody'; diff --git a/packages/react-table/src/components/LightTable/LightTableCaption.tsx b/packages/react-table/src/components/LightTable/LightTableCaption.tsx new file mode 100644 index 00000000000..ef3289cd506 --- /dev/null +++ b/packages/react-table/src/components/LightTable/LightTableCaption.tsx @@ -0,0 +1,19 @@ +import * as React from 'react'; + +export interface LightTableCaptionProps { + /** Content rendered inside the caption */ + children?: React.ReactNode; + /** Additional classes added to the caption */ + className?: string; +} + +export const LightTableCaption: React.FunctionComponent = ({ + children, + className, + ...props +}: LightTableCaptionProps) => ( + + {children} + +); +LightTableCaption.displayName = 'LightTableCaption'; diff --git a/packages/react-table/src/components/LightTable/LightTableHead.tsx b/packages/react-table/src/components/LightTable/LightTableHead.tsx new file mode 100644 index 00000000000..cc936f21fe9 --- /dev/null +++ b/packages/react-table/src/components/LightTable/LightTableHead.tsx @@ -0,0 +1,19 @@ +import * as React from 'react'; + +export interface LightTableHeadProps { + /** Content rendered inside the row */ + children?: React.ReactNode; + /** Additional classes added to the row */ + className?: string; +} + +export const LightTableHead: React.FunctionComponent = ({ + children, + className, + ...props +}: LightTableHeadProps) => ( + + {children} + +); +LightTableHead.displayName = 'LightTableHead'; diff --git a/packages/react-table/src/components/LightTable/LightTableRow.tsx b/packages/react-table/src/components/LightTable/LightTableRow.tsx new file mode 100644 index 00000000000..ef392f3b7d6 --- /dev/null +++ b/packages/react-table/src/components/LightTable/LightTableRow.tsx @@ -0,0 +1,19 @@ +import * as React from 'react'; + +export interface LightTableRowProps { + /** Content rendered inside the row */ + children?: React.ReactNode; + /** Additional classes added to the row */ + className?: string; +} + +export const LightTableRow: React.FunctionComponent = ({ + children, + className, + ...props +}: LightTableRowProps) => ( + + {children} + +); +LightTableRow.displayName = 'LightTableRow'; diff --git a/packages/react-table/src/components/LightTable/index.ts b/packages/react-table/src/components/LightTable/index.ts new file mode 100644 index 00000000000..c4869afec3e --- /dev/null +++ b/packages/react-table/src/components/LightTable/index.ts @@ -0,0 +1,7 @@ +export * from './LightTable'; +export * from './LightTableHead'; +export * from './LightTableBody'; +export * from './LightTableRow'; +export * from './LightHeaderCell'; +export * from './LightBodyCell'; +export * from './LightTableCaption'; diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index 3d7fdc4c620..31033479fe9 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -2,38 +2,65 @@ id: Table cssPrefix: pf-c-table section: components -propComponents: ['Table', 'TableHeader', 'TableBody', 'EditableSelectInputCell', 'EditableTextCell', 'RowErrors', 'IHeaderRow', 'IRowData', 'IColumn', 'IExtraRowData', 'IExtraColumnData', 'ISortBy', 'IAction', 'ISeparator', 'ICell', 'IRowCell', 'IValidatorDef', 'IRow'] +propComponents: + [ + 'Table', + 'TableHeader', + 'TableBody', + 'EditableSelectInputCell', + 'EditableTextCell', + 'RowErrors', + 'IHeaderRow', + 'IRowData', + 'IColumn', + 'IExtraRowData', + 'IExtraColumnData', + 'ISortBy', + 'IAction', + 'ISeparator', + 'ICell', + 'IRowCell', + 'IValidatorDef', + 'IRow', + ] ouia: true --- Note: Table lives in its own package at [@patternfly/react-table](https://www.npmjs.com/package/@patternfly/react-table)! import { - Table, - TableHeader, - TableBody, - TableText, - sortable, - SortByDirection, - headerCol, - TableVariant, - expandable, - compoundExpand, - cellWidth, - textCenter, - wrappable, - truncate, - nowrap, - breakWord, - fitContent, - classNames, - Visibility, - getErrorTextByValidator, - cancelCellEdits, - validateCellEdits, - applyCellEdits, - EditableTextCell, - EditableSelectInputCell +Table, +TableHeader, +TableBody, +TableText, +sortable, +SortByDirection, +headerCol, +TableVariant, +expandable, +compoundExpand, +cellWidth, +textCenter, +wrappable, +truncate, +nowrap, +breakWord, +fitContent, +classNames, +Visibility, +getErrorTextByValidator, +cancelCellEdits, +validateCellEdits, +applyCellEdits, +EditableTextCell, +EditableSelectInputCell, +LightTable, +LightTableCaption, +LightTableHead, +LightTableBody, +LightTableRow, +LightHeaderCell, +LightBodyCell } from '@patternfly/react-table'; import { EmptyStateIcon } from '@patternfly/react-core'; @@ -50,16 +77,102 @@ import DemoSortableTable from './DemoSortableTable'; ## Examples +### Composable Table + +```js +import React from 'react'; +import { LightTable, LightTableCaption, LightTableHead, LightTableBody, LightTableRow, LightHeaderCell, LightBodyCell } from '@patternfly/react-table'; + +ComposableTable = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['Repository 1', 10, 25, 5, '2 days ago'], + ['Repository 2', 11, 26, 4, '4 days ago'], + ['Repository 3', 12, 27, 3, '3 days ago'], + ['Repository 4', 13, 28, 2, '5 days ago'] + ]); + const [sortedBy, setSortedBy] = React.useState(-1); + const [sortDirection, setSortDirection] = React.useState([ + 'none', + 'none', + 'none', + 'none', + 'none' + ]); + const onSort = (index) => { + // changes the active selected style + setSortedBy(index); + // changes the sort direction + const updatedSortDirection = sortDirection.map((dir, sortIndex) => { + if (sortIndex === index) { + if (dir === 'asc') { + return 'desc'; + } else if (dir === 'desc') { + return 'asc'; + } + return 'asc'; + } else { + return 'none'; + } + }); + setSortDirection(updatedSortDirection); + // sorts the row data + const updatedData = data.sort((a, b) => { + if (typeof a[index] === 'number') { + // numeric sort + if (updatedSortDirection[index] === 'asc') { + return a[index] - b[index]; + } + return b[index] - a[index]; + } else { + // string sort + if (updatedSortDirection[index] === 'asc') { + return a[index].localeCompare(b[index]); + } + return b[index].localeCompare(a[index]); + } + }); + debugger; + setData(updatedData); + }; + return ( + + This is the table caption + + + onSort(0)}>{columns[0]} + onSort(1)}>{columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + {data.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + {cell} + ))} + + ))} + + + ); +} +``` + ### Basic + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - textCenter, -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, textCenter } from '@patternfly/react-table'; import styles from '@patternfly/react-styles/css/components/Table/table'; class SimpleTable extends React.Component { @@ -67,7 +180,7 @@ class SimpleTable extends React.Component { super(props); this.state = { columns: [ - { + { title: 'Repositories', header: { info: { @@ -80,11 +193,15 @@ class SimpleTable extends React.Component { } }, 'Branches', - { + { title: 'Pull requests', header: { info: { - popover:
More information on pull requests
, + popover: ( +
+ More information on pull requests +
+ ), ariaLabel: 'More information on pull requests', popoverProps: { headerContent: 'Pull requests', @@ -135,7 +252,7 @@ class SimpleTable extends React.Component { return ( - +
); @@ -143,26 +260,17 @@ class SimpleTable extends React.Component { } ``` - ### Row click handler + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody } from '@patternfly/react-table'; class RowClickTable extends React.Component { constructor(props) { super(props); this.state = { - columns: [ - { title: 'Repositories' }, - 'Branches', - { title: 'Pull requests' }, - 'Workspaces' - ], + columns: [{ title: 'Repositories' }, 'Branches', { title: 'Pull requests' }, 'Workspaces'], rows: [ { cells: ['Repositories one', 'Branches one', 'Pull requests one', 'Workspaces one'] @@ -177,7 +285,7 @@ class RowClickTable extends React.Component { }; this.rowClickHandler = (event, row) => { console.log('handle row click', row); - } + }; } render() { @@ -194,13 +302,10 @@ class RowClickTable extends React.Component { ``` ### Custom row wrapper + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody } from '@patternfly/react-table'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; @@ -208,12 +313,7 @@ class RowWrapperTable extends React.Component { constructor(props) { super(props); this.state = { - columns: [ - { title: 'Repositories' }, - 'Branches', - { title: 'Pull requests' }, - 'Workspaces' - ], + columns: [{ title: 'Repositories' }, 'Branches', { title: 'Pull requests' }, 'Workspaces'], rows: [ { cells: ['Repositories one', 'Branches one', 'Pull requests one', 'Workspaces one'] @@ -226,24 +326,18 @@ class RowWrapperTable extends React.Component { } ] }; - this.customRowWrapper = ({ - trRef, - className, - rowProps, - row: { isExpanded, isHeightAuto }, - ...props - }) => { + this.customRowWrapper = ({ trRef, className, rowProps, row: { isExpanded, isHeightAuto }, ...props }) => { const isOddRow = (rowProps.rowIndex + 1) % 2; const customStyle = { borderLeft: '3px solid var(--pf-global--primary-color--100)' - } + }; return ( ); - } + }; } render() { const { columns, rows } = this.state; return ( - +
@@ -270,15 +369,10 @@ class RowWrapperTable extends React.Component { ``` ### Sortable + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - sortable, - SortByDirection -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, sortable, SortByDirection } from '@patternfly/react-table'; class SortableTable extends React.Component { constructor(props) { @@ -322,16 +416,10 @@ class SortableTable extends React.Component { ``` ### Sortable with wrapping headers + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - sortable, - SortByDirection, - wrappable, -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, sortable, SortByDirection, wrappable } from '@patternfly/react-table'; class SortableWrappingHeaders extends React.Component { constructor(props) { @@ -348,7 +436,7 @@ class SortableWrappingHeaders extends React.Component { }, { title: 'This is a really long table header that goes on for a long time 3.', - transforms: [sortable,wrappable] + transforms: [sortable, wrappable] }, { title: 'This is a really long table header that goes on for a long time 4.', @@ -357,7 +445,7 @@ class SortableWrappingHeaders extends React.Component { { title: 'This is a really long table header that goes on for a long time 5.', transforms: [sortable, wrappable] - }, + } ], rows: [['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five']], sortBy: {} @@ -380,7 +468,13 @@ class SortableWrappingHeaders extends React.Component { const { columns, rows, sortBy } = this.state; return ( - +
@@ -390,6 +484,7 @@ class SortableWrappingHeaders extends React.Component { ``` ### Selectable + ```js import React from 'react'; import { @@ -403,9 +498,7 @@ import { expandable, cellWidth } from '@patternfly/react-table'; -import { - Checkbox -} from '@patternfly/react-core'; +import { Checkbox } from '@patternfly/react-core'; class SelectableTable extends React.Component { constructor(props) { @@ -424,7 +517,7 @@ class SelectableTable extends React.Component { }, { cells: ['a', 'two', 'k', 'four', 'five'], - disableCheckbox: true, + disableCheckbox: true }, { cells: ['p', 'two', 'b', 'four', 'five'] @@ -471,13 +564,14 @@ class SelectableTable extends React.Component { aria-label="toggle select all checkbox" id="toggle-select-all" name="toggle-select-all" - /> + /> + rows={rows} + >
@@ -488,14 +582,10 @@ class SelectableTable extends React.Component { ``` ### Simple actions + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - headerCol -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, headerCol } from '@patternfly/react-table'; class SimpleActionsTable extends React.Component { constructor(props) { @@ -552,14 +642,10 @@ class SimpleActionsTable extends React.Component { ``` ### Actions + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - headerCol -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, headerCol } from '@patternfly/react-table'; class ActionsTable extends React.Component { constructor(props) { @@ -655,14 +741,10 @@ class ActionsTable extends React.Component { ``` ### First cell as header + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - headerCol -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, headerCol } from '@patternfly/react-table'; class CellHeader extends React.Component { constructor(props) { @@ -693,14 +775,10 @@ class CellHeader extends React.Component { ``` ### Compact + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - TableVariant -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, TableVariant } from '@patternfly/react-table'; class CompactTable extends React.Component { constructor(props) { @@ -730,14 +808,10 @@ class CompactTable extends React.Component { ``` ### Compact borderless rows + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - TableVariant -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, TableVariant } from '@patternfly/react-table'; class CompactTableBorderlessRows extends React.Component { constructor(props) { @@ -773,15 +847,10 @@ class CompactTableBorderlessRows extends React.Component { ``` ### Compact expandable + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - TableVariant, - expandable -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, TableVariant, expandable } from '@patternfly/react-table'; class CompactExpandableTable extends React.Component { constructor(props) { @@ -864,14 +933,10 @@ class CompactExpandableTable extends React.Component { ``` ### With width modifiers + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - cellWidth -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, cellWidth } from '@patternfly/react-table'; class WidthTable extends React.Component { constructor(props) { @@ -905,16 +970,10 @@ class WidthTable extends React.Component { ``` ### Breakpoint modifiers + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - sortable, - classNames, - Visibility -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, sortable, classNames, Visibility } from '@patternfly/react-table'; class HiddenVisibleBreakpointTable extends React.Component { constructor(props) { @@ -923,7 +982,9 @@ class HiddenVisibleBreakpointTable extends React.Component { columns: [ { title: 'Repositories', - columnTransforms: [classNames(Visibility.hidden, Visibility.visibleOnMd, Visibility.hiddenOnLg, Visibility.visibleOn_2xl)] + columnTransforms: [ + classNames(Visibility.hidden, Visibility.visibleOnMd, Visibility.hiddenOnLg, Visibility.visibleOn_2xl) + ] }, 'Branches', { @@ -959,14 +1020,10 @@ class HiddenVisibleBreakpointTable extends React.Component { ``` ### Collapsible + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - expandable -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, expandable } from '@patternfly/react-table'; class CollapsibleTable extends React.Component { constructor(props) { @@ -1046,14 +1103,10 @@ class CollapsibleTable extends React.Component { ``` ### Compound expandable + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - compoundExpand -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, compoundExpand } from '@patternfly/react-table'; import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; @@ -1087,14 +1140,14 @@ class CompoundExpandableTable extends React.Component { { isOpen: true, cells: [ - { title: siemur/test-space, props: { component: 'th'} }, + { title: siemur/test-space, props: { component: 'th' } }, { title: ( 10 ), - props: { isOpen: true, ariaControls : 'compound-expansion-table-1' } + props: { isOpen: true, ariaControls: 'compound-expansion-table-1' } }, { title: ( @@ -1102,7 +1155,7 @@ class CompoundExpandableTable extends React.Component { 4 ), - props: { isOpen: false, ariaControls : 'compound-expansion-table-2' } + props: { isOpen: false, ariaControls: 'compound-expansion-table-2' } }, { title: ( @@ -1110,7 +1163,7 @@ class CompoundExpandableTable extends React.Component { 4 ), - props: { isOpen: false, ariaControls : 'compound-expansion-table-3' } + props: { isOpen: false, ariaControls: 'compound-expansion-table-3' } }, '20 minutes', { title: Open in Github } @@ -1121,7 +1174,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 1, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1131,7 +1189,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 2, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1141,7 +1204,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 3, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1149,14 +1217,14 @@ class CompoundExpandableTable extends React.Component { { isOpen: false, cells: [ - { title: siemur/test-space, props: { component: 'th'} }, + { title: siemur/test-space, props: { component: 'th' } }, { title: ( 3 ), - props: { isOpen: false, ariaControls : 'compound-expansion-table-4' } + props: { isOpen: false, ariaControls: 'compound-expansion-table-4' } }, { title: ( @@ -1164,7 +1232,7 @@ class CompoundExpandableTable extends React.Component { 4 ), - props: { isOpen: false, ariaControls : 'compound-expansion-table-5' } + props: { isOpen: false, ariaControls: 'compound-expansion-table-5' } }, { title: ( @@ -1172,7 +1240,7 @@ class CompoundExpandableTable extends React.Component { 2 ), - props: { isOpen: false, ariaControls : 'compound-expansion-table-6' } + props: { isOpen: false, ariaControls: 'compound-expansion-table-6' } }, '20 minutes', { title: Open in Github } @@ -1183,7 +1251,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 1, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1193,7 +1266,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 2, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1203,7 +1281,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 3, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1245,6 +1328,7 @@ class CompoundExpandableTable extends React.Component { ``` ### Controlling text + ```js import React from 'react'; import { @@ -1256,7 +1340,7 @@ import { nowrap, breakWord, cellWidth, - fitContent, + fitContent } from '@patternfly/react-table'; class ControllingText extends React.Component { @@ -1264,24 +1348,28 @@ class ControllingText extends React.Component { super(props); this.state = { columns: [ - {title: 'Truncate (width 20%)', transforms: [cellWidth(20)], cellTransforms: [truncate]}, - {title: 'Break word', cellTransforms: [breakWord]}, - {title: 'Wrapping table header text. This th text will wrap instead of truncate.', transforms: [wrappable]}, - {title: 'Fit content', transforms: [fitContent]}, - {title: '', cellTransforms: [nowrap]}, + { title: 'Truncate (width 20%)', transforms: [cellWidth(20)], cellTransforms: [truncate] }, + { title: 'Break word', cellTransforms: [breakWord] }, + { title: 'Wrapping table header text. This th text will wrap instead of truncate.', transforms: [wrappable] }, + { title: 'Fit content', transforms: [fitContent] }, + { title: '', cellTransforms: [nowrap] } ], rows: [ [ 'This text will truncate instead of wrap.', - {title: http://thisisaverylongurlthatneedstobreakusethebreakwordmodifier.org}, - {title:

By default, - thead cells will truncate and - tbody cells will wrap. Use - .pf-m-wrap on a - th to change its behavior.

+ { title: http://thisisaverylongurlthatneedstobreakusethebreakwordmodifier.org }, + { + title: ( +

+ By default, + thead cells will truncate and + tbody cells will wrap. Use + .pf-m-wrap on ath to change its behavior. +

+ ) }, - 'This cell\'s content will adjust itself to the parent th width. This modifier only affects table layouts.', - {title: No wrap} + "This cell's content will adjust itself to the parent th width. This modifier only affects table layouts.", + { title: No wrap } ] ] }; @@ -1301,6 +1389,7 @@ class ControllingText extends React.Component { ``` ### Modifiers with table text + ```js import React from 'react'; import { @@ -1313,7 +1402,7 @@ import { nowrap, breakWord, cellWidth, - fitContent, + fitContent } from '@patternfly/react-table'; class ModifiersWithTableText extends React.Component { @@ -1321,13 +1410,19 @@ class ModifiersWithTableText extends React.Component { super(props); this.state = { columns: [ - {title: 'Truncating text', transforms: [cellWidth(30)]}, - {title: 'Wrapping table header text. This th text will wrap instead of truncate.'}, + { title: 'Truncating text', transforms: [cellWidth(30)] }, + { title: 'Wrapping table header text. This th text will wrap instead of truncate.' } ], rows: [ [ - {title: This text will truncate instead of wrap.}, - {title: This is a link that needs to be on one line and fully readable.}, + { title: This text will truncate instead of wrap. }, + { + title: ( + + This is a link that needs to be on one line and fully readable. + + ) + } ] ] }; @@ -1347,37 +1442,47 @@ class ModifiersWithTableText extends React.Component { ``` ### Empty state + ```js import React from 'react'; import { Table, TableHeader, TableBody } from '@patternfly/react-table'; -import { Button, EmptyState, EmptyStateBody, EmptyStatePrimary, Bullseye, Title, EmptyStateIcon } from '@patternfly/react-core'; +import { + Button, + EmptyState, + EmptyStateBody, + EmptyStatePrimary, + Bullseye, + Title, + EmptyStateIcon +} from '@patternfly/react-core'; import SearchIcon from '@patternfly/react-icons/dist/js/icons/search-icon'; EmptyStateTable = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last Commit'] - const rows = [] + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last Commit']; + const rows = []; return ( - - - -
- - - - No results found - - - No results match the filter criteria. Remove all filters or clear all filters to show results. - - - + + + +
+ + + + No results found + + + No results match the filter criteria. Remove all filters or clear all filters to show results. + + +
); -} +}; ``` ### Editable rows + ```js isBeta import React from 'react'; import { TextInput, SelectOption } from '@patternfly/react-core'; @@ -1399,16 +1504,13 @@ class EditableRowsTable extends React.Component { super(props); this.state = { - columns: [ - 'Text input col 1', - 'Disabled text input col 2', - 'Text input col 3', - 'Text input col 4' + columns: ['Text input col 1', 'Disabled text input col 2', 'Text input col 3', 'Text input col 4'], + actions: [ + { + title: 'Some action', + onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) + } ], - actions: [{ - title: 'Some action', - onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) - }], rows: [ { rowEditBtnAriaLabel: idx => `Edit row ${idx}`, @@ -1430,7 +1532,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 1 cell 1 content" /> + inputAriaLabel="Row 1 cell 1 content" + /> ), props: { value: 'Row 1 cell 1 content', @@ -1446,7 +1549,8 @@ class EditableRowsTable extends React.Component { props={props} handleTextInputChange={this.handleTextInputChange} isDisabled - inputAriaLabel="Row 1 cell 2 content" /> + inputAriaLabel="Row 1 cell 2 content" + /> ), props: { value: 'Row 1 cell 2, disabled content', @@ -1461,7 +1565,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 1 cell 3 content" /> + inputAriaLabel="Row 1 cell 3 content" + /> ), props: { value: 'Row 1 cell 3 content', @@ -1485,7 +1590,9 @@ class EditableRowsTable extends React.Component { isPlaceholder={option.isPlaceholder} /> ))} - onToggle={(isOpen) => {this.onToggle(isOpen, rowIndex, cellIndex)}} + onToggle={isOpen => { + this.onToggle(isOpen, rowIndex, cellIndex); + }} selections={props.selected} /> ), @@ -1495,19 +1602,19 @@ class EditableRowsTable extends React.Component { isSelectOpen: props.isSelectOpen || false, selected: props.selected || ['Option 1'], options: [ - {value: 'Placeholder...', isPlaceholder: true}, - {value: 'Option 1'}, - {value: 'Option 2'}, - {value: 'Option 3'}, - {value: 'Option 4'}, - {value: 'Option 5'} + { value: 'Placeholder...', isPlaceholder: true }, + { value: 'Option 1' }, + { value: 'Option 2' }, + { value: 'Option 3' }, + { value: 'Option 4' }, + { value: 'Option 5' } ], editableSelectProps: { variant: 'single', - 'aria-label': "Row 1 cell 4 content", + 'aria-label': 'Row 1 cell 4 content' } } - }, + } ] }, { @@ -1520,7 +1627,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 2 cell 1 content" /> + inputAriaLabel="Row 2 cell 1 content" + /> ), props: { value: 'Row 2 cell 1 content', @@ -1536,7 +1644,8 @@ class EditableRowsTable extends React.Component { props={props} handleTextInputChange={this.handleTextInputChange} isDisabled - inputAriaLabel="Row 2 cell 2 content" /> + inputAriaLabel="Row 2 cell 2 content" + /> ), props: { value: 'Row 2 cell 2, disabled content', @@ -1551,7 +1660,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 2 cell 3 content" /> + inputAriaLabel="Row 2 cell 3 content" + /> ), props: { value: 'Row 2 cell 3 content', @@ -1570,17 +1680,19 @@ class EditableRowsTable extends React.Component { isOpen={props.isSelectOpen} options={props.options.map((option, index) => { return ( - - ) + + ); })} - onToggle={(isOpen) => {this.onToggle(isOpen, rowIndex, cellIndex)}} + onToggle={isOpen => { + this.onToggle(isOpen, rowIndex, cellIndex); + }} selections={props.selected} - /> + /> ), props: { value: ['Placeholder...'], @@ -1588,20 +1700,20 @@ class EditableRowsTable extends React.Component { isSelectOpen: props.isSelectOpen || false, selected: props.selected || [], options: [ - {value: 'Placeholder...', isPlaceholder: true}, - {value: 'Option 1'}, - {value: 'Option 2'}, - {value: 'Option 3'}, - {value: 'Option 4'}, - {value: 'Option 5'} + { value: 'Placeholder...', isPlaceholder: true }, + { value: 'Option 1' }, + { value: 'Option 2' }, + { value: 'Option 3' }, + { value: 'Option 4' }, + { value: 'Option 5' } ], editableSelectProps: { variant: 'typeaheadmulti', - 'aria-label': "Row 2 cell 4 content", + 'aria-label': 'Row 2 cell 4 content', toggleId: 'editable-toggle' } } - }, + } ] }, { @@ -1636,7 +1748,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 3 cell 1 content" /> + inputAriaLabel="Row 3 cell 1 content" + /> ), props: { value: 'Row 3 cell 1 content', @@ -1652,7 +1765,8 @@ class EditableRowsTable extends React.Component { props={props} handleTextInputChange={this.handleTextInputChange} isDisabled - inputAriaLabel="Row 3 cell 2 content" /> + inputAriaLabel="Row 3 cell 2 content" + /> ), props: { value: 'Row 3 cell 2, disabled content', @@ -1667,7 +1781,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 3 cell 3 content" /> + inputAriaLabel="Row 3 cell 3 content" + /> ), props: { value: 'Row 3 cell 3 content', @@ -1692,9 +1807,11 @@ class EditableRowsTable extends React.Component { isPlaceholder={option.isPlaceholder} /> ))} - onToggle={(isOpen) => {this.onToggle(isOpen, rowIndex, cellIndex)}} + onToggle={isOpen => { + this.onToggle(isOpen, rowIndex, cellIndex); + }} selections={props.selected} - /> + /> ), props: { value: ['Option 3'], @@ -1702,16 +1819,16 @@ class EditableRowsTable extends React.Component { isSelectOpen: props.isSelectOpen || false, selected: props.selected || ['Option 3'], options: [ - {value: 'Placeholder...', isPlaceholder: true}, - {value: 'Option 1'}, - {value: 'Option 2'}, - {value: 'Option 3'}, - {value: 'Option 4'}, - {value: 'Option 5'} + { value: 'Placeholder...', isPlaceholder: true }, + { value: 'Option 1' }, + { value: 'Option 2' }, + { value: 'Option 3' }, + { value: 'Option 4' }, + { value: 'Option 5' } ], editableSelectProps: { variant: 'checkbox', - 'aria-label': "Row 3 cell 4 content", + 'aria-label': 'Row 3 cell 4 content' } } } @@ -1785,7 +1902,7 @@ class EditableRowsTable extends React.Component { rows: newRows }); }; - + this.clearSelection = (rowIndex, cellIndex) => { const newRows = Array.from(this.state.rows); const newCellProps = newRows[rowIndex].cells[cellIndex].props; @@ -1815,9 +1932,10 @@ class EditableRowsTable extends React.Component { aria-label="Editable Rows Table" variant={TableVariant.compact} cells={columns} - rows={rows}> - - + rows={rows} + > + + ); } diff --git a/packages/react-table/src/components/TableLight/TableLight.tsx b/packages/react-table/src/components/TableLight/TableLight.tsx deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/packages/react-table/src/components/index.ts b/packages/react-table/src/components/index.ts index 75193adc339..ac14d412632 100644 --- a/packages/react-table/src/components/index.ts +++ b/packages/react-table/src/components/index.ts @@ -1 +1,2 @@ export * from './Table'; +export * from './LightTable'; diff --git a/yarn.lock b/yarn.lock index f89331fdd79..31118db5dad 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3557,6 +3557,13 @@ "@nodelib/fs.scandir" "2.1.3" fastq "^1.6.0" +"@npmcli/move-file@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.0.1.tgz#de103070dac0f48ce49cf6693c23af59c0f70464" + integrity sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw== + dependencies: + mkdirp "^1.0.4" + "@octokit/auth-token@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.4.0.tgz#b64178975218b99e4dfe948253f0673cbbb59d9f" @@ -3662,15 +3669,35 @@ dependencies: "@types/node" ">= 8" -"@patternfly/patternfly-a11y@^0.0.17": - version "0.0.17" - resolved "https://registry.yarnpkg.com/@patternfly/patternfly-a11y/-/patternfly-a11y-0.0.17.tgz#bf029d20ae326c328d2dec5d0df5bad52beec12f" - dependencies: - axe-webdriverjs "^2.3.0" +"@patternfly/patternfly-a11y@^2.0.4": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@patternfly/patternfly-a11y/-/patternfly-a11y-2.0.4.tgz#541d30e7e6fa5542bce7129bc48808dded600f7f" + integrity sha512-5uL7qKyjA2nTpvTVjDvRTkkDDmikh6iY5Y3HssxLeeDU29KF/lLptDo7/R3bql7q6Kq99lsQtXU67PxZibC+IA== + dependencies: + "@patternfly/react-charts" "^6.9.6" + "@patternfly/react-core" "^4.18.5" + "@reach/router" "^1.2.1" + "@types/react" "^16.9.11" + "@types/react-dom" "^16.9.4" + "@welldone-software/why-did-you-render" "^4.3.2" + axe-core "^3.5.5" + chromedriver "^78.0.1" + commander "^5.1.0" + copy-webpack-plugin "^6.1.0" + css-loader "^3.5.3" + file-loader "^6.0.0" + html-webpack-plugin "^4.3.0" junit-xml "^1.2.0" - selenium-webdriver "^4.0.0-alpha.5" + mini-css-extract-plugin "^0.9.0" + puppeteer "^3.3.0" + puppeteer-cluster "^0.21.0" + ts-loader "^7.0.5" + typescript "^3.9.5" + url-loader "^4.1.0" + webpack "^4.43.0" + webpack-cli "^3.3.11" + webpack-dev-server "^3.11.0" xmldoc "^1.1.2" - yargs "^15.0.2" "@patternfly/patternfly@4.42.2": version "4.42.2" @@ -3696,6 +3723,16 @@ lodash.debounce "^4.0.8" react-dev-utils "^9.1.0" +"@reach/router@^1.2.1": + version "1.3.4" + resolved "https://registry.yarnpkg.com/@reach/router/-/router-1.3.4.tgz#d2574b19370a70c80480ed91f3da840136d10f8c" + integrity sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA== + dependencies: + create-react-context "0.3.0" + invariant "^2.2.3" + prop-types "^15.6.1" + react-lifecycles-compat "^3.0.4" + "@reach/router@^1.3.3": version "1.3.3" resolved "https://registry.yarnpkg.com/@reach/router/-/router-1.3.3.tgz#58162860dce6c9449d49be86b0561b5ef46d80db" @@ -3777,6 +3814,11 @@ dependencies: defer-to-connect "^1.0.1" +"@types/anymatch@*": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" + integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== + "@types/babel__core@^7.1.0": version "7.1.3" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.3.tgz#e441ea7df63cd080dfcd02ab199e6d16a735fc30" @@ -4136,6 +4178,11 @@ version "4.7.3" resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.3.tgz#856c99cdc1551d22c22b18b5402719affec9839a" +"@types/html-minifier-terser@^5.0.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.0.tgz#551a4589b6ee2cc9c1dff08056128aec29b94880" + integrity sha512-iYCgjm1dGPRuo12+BStjd1HiVQqhlRhWDOQigNxn023HcjnhsiFz9pc6CzJj4HwDCSQca9bxTL4PxJDbkdm3PA== + "@types/inquirer@6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/@types/inquirer/-/inquirer-6.0.1.tgz#ea9b483a81f16f4f0d27d5c8d9d081dfa36c4ee9" @@ -4174,6 +4221,11 @@ version "7.0.3" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.3.tgz#bdfd69d61e464dcc81b25159c270d75a73c1a636" +"@types/json-schema@^7.0.5": + version "7.0.6" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0" + integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw== + "@types/lodash@^4.14.157": version "4.14.157" resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.157.tgz#fdac1c52448861dfde1a2e1515dbc46e54926dc8" @@ -4233,6 +4285,13 @@ dependencies: "@types/react" "*" +"@types/react-dom@^16.9.4": + version "16.9.8" + resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.8.tgz#fe4c1e11dfc67155733dfa6aa65108b4971cb423" + integrity sha512-ykkPQ+5nFknnlU6lDd947WbQ6TE3NNzbQAkInC2EKY1qeYdTKp7onFusmYZb+ityzx2YviqT6BXSu+LyWWJwcA== + dependencies: + "@types/react" "*" + "@types/react-router-dom@^4.3.1": version "4.3.5" resolved "https://registry.yarnpkg.com/@types/react-router-dom/-/react-router-dom-4.3.5.tgz#72f229967690c890d00f96e6b85e9ee5780db31f" @@ -4264,6 +4323,14 @@ "@types/prop-types" "*" csstype "^2.2.0" +"@types/react@^16.9.11": + version "16.9.49" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.49.tgz#09db021cf8089aba0cdb12a49f8021a69cce4872" + integrity sha512-DtLFjSj0OYAdVLBbyjhuV9CdGVHCkHn2R+xr3XkBvK2rS1Y1tkc14XSGjYgm5Fjjr90AxH9tiSzc1pCFMGO06g== + dependencies: + "@types/prop-types" "*" + csstype "^3.0.2" + "@types/resolve@0.0.8": version "0.0.8" resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-0.0.8.tgz#f26074d238e02659e323ce1a13d041eee280e194" @@ -4281,10 +4348,20 @@ version "2.3.2" resolved "https://registry.yarnpkg.com/@types/sizzle/-/sizzle-2.3.2.tgz#a811b8c18e2babab7d542b3365887ae2e4d9de47" +"@types/source-list-map@*": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" + integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA== + "@types/stack-utils@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-1.0.1.tgz#0a851d3bd96498fa25c33ab7278ed3bd65f06c3e" +"@types/tapable@*", "@types/tapable@^1.0.5": + version "1.0.6" + resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.6.tgz#a9ca4b70a18b270ccb2bc0aaafefd1d486b7ea74" + integrity sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA== + "@types/tapable@1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.2.tgz#e13182e1b69871a422d7863e11a4a6f5b814a4bd" @@ -4300,6 +4377,13 @@ version "0.0.33" resolved "https://registry.yarnpkg.com/@types/tmp/-/tmp-0.0.33.tgz#1073c4bc824754ae3d10cfab88ab0237ba964e4d" +"@types/uglify-js@*": + version "3.9.3" + resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.9.3.tgz#d94ed608e295bc5424c9600e6b8565407b6b4b6b" + integrity sha512-KswB5C7Kwduwjj04Ykz+AjvPcfgv/37Za24O2EDzYNbwyzOo8+ydtvzUfZ5UMguiVu29Gx44l1A6VsPPcmYu9w== + dependencies: + source-map "^0.6.1" + "@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2", "@types/unist@^2.0.3": version "2.0.3" resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e" @@ -4325,6 +4409,27 @@ dependencies: webcola "*" +"@types/webpack-sources@*": + version "1.4.2" + resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-1.4.2.tgz#5d3d4dea04008a779a90135ff96fb5c0c9e6292c" + integrity sha512-77T++JyKow4BQB/m9O96n9d/UUHWLQHlcqXb9Vsf4F1+wKNrrlWNFPDLKNT92RJnCSL6CieTc+NDXtCVZswdTw== + dependencies: + "@types/node" "*" + "@types/source-list-map" "*" + source-map "^0.7.3" + +"@types/webpack@^4.41.8": + version "4.41.22" + resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.22.tgz#ff9758a17c6bd499e459b91e78539848c32d0731" + integrity sha512-JQDJK6pj8OMV9gWOnN1dcLCyU9Hzs6lux0wBO4lr1+gyEhIBR9U3FMrz12t2GPkg110XAxEAw2WHF6g7nZIbRQ== + dependencies: + "@types/anymatch" "*" + "@types/node" "*" + "@types/tapable" "*" + "@types/uglify-js" "*" + "@types/webpack-sources" "*" + source-map "^0.6.0" + "@types/yargs-parser@*": version "13.1.0" resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-13.1.0.tgz#c563aa192f39350a1d18da36c5a8da382bbd8228" @@ -4341,6 +4446,13 @@ dependencies: "@types/yargs-parser" "*" +"@types/yauzl@^2.9.1": + version "2.9.1" + resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.9.1.tgz#d10f69f9f522eef3cf98e30afb684a1e1ec923af" + integrity sha512-A1b8SU4D10uoPjwb0lnHmmu8wZhR9d+9o2PKBQT2jU5YPTKsxac6M2qGAdY7VcL+dHHhARVUDmeg0rOrcd9EjA== + dependencies: + "@types/node" "*" + "@typescript-eslint/eslint-plugin@^2.18.0": version "2.18.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.18.0.tgz#f8cf272dfb057ecf1ea000fea1e0b3f06a32f9cb" @@ -4827,6 +4939,13 @@ "@webassemblyjs/wast-parser" "1.9.0" "@xtuc/long" "4.2.2" +"@welldone-software/why-did-you-render@^4.3.2": + version "4.3.2" + resolved "https://registry.yarnpkg.com/@welldone-software/why-did-you-render/-/why-did-you-render-4.3.2.tgz#db1c700df1729402f2ceacf05cebd72dca30f1af" + integrity sha512-pzaFmUUH+FjbsDgcMB1xNPncIaxibvo0FLbGySLIh+v+7Bp5pqSJFO6zlqo4orPLm3nAdYEgL2vrlj8befoypg== + dependencies: + lodash "^4" + "@xtuc/ieee754@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" @@ -4961,6 +5080,11 @@ agent-base@4, agent-base@^4.1.0, agent-base@^4.3.0: dependencies: es6-promisify "^5.0.0" +agent-base@5: + version "5.1.1" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-5.1.1.tgz#e8fb3f242959db44d63be665db7a8e739537a32c" + integrity sha512-TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g== + agent-base@~4.2.1: version "4.2.1" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9" @@ -5003,6 +5127,11 @@ ajv-keywords@^3.0.0, ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: version "3.4.1" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.1.tgz#ef916e271c64ac12171fd8384eaae6b2345854da" +ajv-keywords@^3.5.2: + version "3.5.2" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" + integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== + ajv@^6.0.1, ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.3, ajv@^6.5.5: version "6.10.2" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" @@ -5021,7 +5150,7 @@ ajv@^6.12.0: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^6.12.3: +ajv@^6.12.3, ajv@^6.12.4: version "6.12.5" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.5.tgz#19b0e8bae8f476e5ba666300387775fb1a00a4da" integrity sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag== @@ -5532,17 +5661,10 @@ aws4@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" -axe-core@^3.3.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-3.4.1.tgz#e42623918bb85b5ef674633852cb9029db0309c5" - -axe-webdriverjs@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/axe-webdriverjs/-/axe-webdriverjs-2.3.0.tgz#92511fbce38624a57e1aa861dd8a3c73c6a3a972" - dependencies: - axe-core "^3.3.1" - babel-runtime "^6.26.0" - depd "^2.0.0" +axe-core@^3.5.5: + version "3.5.5" + resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-3.5.5.tgz#84315073b53fa3c0c51676c588d59da09a192227" + integrity sha512-5P0QZ6J5xGikH780pghEdbEKijCTrruK9KxtPZCFWUpef0f6GipO+xEZ5GKCb020mmqgbiNO6TcA55CriL784Q== axios@^0.16.2: version "0.16.2" @@ -6816,6 +6938,14 @@ buffer@^4.3.0: ieee754 "^1.1.4" isarray "^1.0.0" +buffer@^5.2.1: + version "5.6.0" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.6.0.tgz#a31749dc7d81d84db08abf937b6b8c4033f62786" + integrity sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw== + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + builtin-modules@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" @@ -6924,6 +7054,29 @@ cacache@^12.0.0, cacache@^12.0.2, cacache@^12.0.3: unique-filename "^1.1.1" y18n "^4.0.0" +cacache@^15.0.5: + version "15.0.5" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.0.5.tgz#69162833da29170d6732334643c60e005f5f17d0" + integrity sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A== + dependencies: + "@npmcli/move-file" "^1.0.1" + chownr "^2.0.0" + fs-minipass "^2.0.0" + glob "^7.1.4" + infer-owner "^1.0.4" + lru-cache "^6.0.0" + minipass "^3.1.1" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.2" + mkdirp "^1.0.3" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^8.0.0" + tar "^6.0.2" + unique-filename "^1.1.1" + cacache@^9.2.9: version "9.3.0" resolved "https://registry.yarnpkg.com/cacache/-/cacache-9.3.0.tgz#9cd58f2dd0b8c8cacf685b7067b416d6d3cf9db1" @@ -7056,6 +7209,14 @@ camel-case@3.0.x, camel-case@^3.0.0: no-case "^2.2.0" upper-case "^1.1.1" +camel-case@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.1.tgz#1fc41c854f00e2f7d0139dfeba1542d6896fe547" + integrity sha512-7fa2WcG4fYFkclIvEmxBbTvmibwF2/agfEBc6q3lOpVu0A13ltLsA+Hr/8Hp6kp5f+G7hKi6t8lys6XxP+1K6Q== + dependencies: + pascal-case "^3.1.1" + tslib "^1.10.0" + camelcase-css@2.0.1, camelcase-css@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" @@ -7342,12 +7503,28 @@ chownr@^1.0.1, chownr@^1.1.1, chownr@^1.1.2, chownr@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142" +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + chrome-trace-event@^1.0.0, chrome-trace-event@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" dependencies: tslib "^1.9.0" +chromedriver@^78.0.1: + version "78.0.1" + resolved "https://registry.yarnpkg.com/chromedriver/-/chromedriver-78.0.1.tgz#2db3425a2cba6fcaf1a41d9538b16c3d06fa74a8" + integrity sha512-eOsyFk4xb9EECs1VMrDbxO713qN+Bu1XUE8K9AuePc3839TPdAegg72kpXSzkeNqRNZiHbnJUItIVCLFkDqceA== + dependencies: + del "^4.1.1" + extract-zip "^1.6.7" + mkdirp "^0.5.1" + request "^2.88.0" + tcp-port-used "^1.0.1" + ci-info@2.0.0, ci-info@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" @@ -7380,7 +7557,7 @@ classnames@^2.2.5: version "2.2.6" resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce" -clean-css@4.2.x: +clean-css@4.2.x, clean-css@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78" integrity sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA== @@ -7514,14 +7691,6 @@ cliui@^5.0.0: strip-ansi "^5.2.0" wrap-ansi "^5.1.0" -cliui@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^6.2.0" - clone-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" @@ -7796,6 +7965,16 @@ commander@2.6.0: version "2.6.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.6.0.tgz#9df7e52fb2a0cb0fb89058ee80c3104225f37e1d" +commander@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" + integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== + +commander@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" + integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== + commander@~2.13.0: version "2.13.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" @@ -7899,7 +8078,7 @@ concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" -concat-stream@1.6.2, concat-stream@^1.4.7, concat-stream@^1.5.0: +concat-stream@1.6.2, concat-stream@^1.4.7, concat-stream@^1.5.0, concat-stream@^1.6.2: version "1.6.2" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" dependencies: @@ -8158,6 +8337,23 @@ copy-to@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/copy-to/-/copy-to-2.0.1.tgz#2680fbb8068a48d08656b6098092bdafc906f4a5" +copy-webpack-plugin@^6.1.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-6.1.1.tgz#737a3ba21c16cc6ddca972f5cf8de25568ca0616" + integrity sha512-4TlkHFYkrZ3WppLA5XkPmBLI5lnEpFsXvpeqxCf5PzkratZiVklNXsvoQkLhUU43q7ZL3AOXtaHAd9jLNJoU0w== + dependencies: + cacache "^15.0.5" + fast-glob "^3.2.4" + find-cache-dir "^3.3.1" + glob-parent "^5.1.1" + globby "^11.0.1" + loader-utils "^2.0.0" + normalize-path "^3.0.0" + p-limit "^3.0.2" + schema-utils "^2.7.1" + serialize-javascript "^5.0.1" + webpack-sources "^1.4.3" + copyfiles@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/copyfiles/-/copyfiles-2.2.0.tgz#d9fc6c06f299337fb7eeb7ea5887e9d7188d9d47" @@ -8411,6 +8607,25 @@ css-loader@^1.0.1: postcss-value-parser "^3.3.0" source-list-map "^2.0.0" +css-loader@^3.5.3: + version "3.6.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.6.0.tgz#2e4b2c7e6e2d27f8c8f28f61bffcd2e6c91ef645" + integrity sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ== + dependencies: + camelcase "^5.3.1" + cssesc "^3.0.0" + icss-utils "^4.1.1" + loader-utils "^1.2.3" + normalize-path "^3.0.0" + postcss "^7.0.32" + postcss-modules-extract-imports "^2.0.0" + postcss-modules-local-by-default "^3.0.2" + postcss-modules-scope "^2.2.0" + postcss-modules-values "^3.0.0" + postcss-value-parser "^4.1.0" + schema-utils "^2.7.0" + semver "^6.3.0" + css-select-base-adapter@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" @@ -8617,6 +8832,11 @@ csstype@^2.2.0: version "2.6.7" resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.7.tgz#20b0024c20b6718f4eda3853a1f5a1cce7f5e4a5" +csstype@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.3.tgz#2b410bbeba38ba9633353aff34b05d9755d065f8" + integrity sha512-jPl+wbWPOWJ7SXsWyqGRk3lGecbar0Cb0OvZF/r/ZU011R4YqiRehgkQ9p4eQfo9DSDLqLL3wHwfxeJiuIsNag== + currently-unhandled@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" @@ -9066,6 +9286,20 @@ debug@3.2.6, debug@^3.0.0, debug@^3.1.0, debug@^3.1.1, debug@^3.2.5, debug@^3.2. dependencies: ms "^2.1.1" +debug@4: + version "4.2.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.2.0.tgz#7f150f93920e94c58f5574c2fd01a3110effe7f1" + integrity sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg== + dependencies: + ms "2.1.2" + +debug@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.0.tgz#373687bffa678b38b1cd91f861b63850035ddc87" + integrity sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg== + dependencies: + ms "^2.1.1" + debuglog@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" @@ -9149,7 +9383,7 @@ deep-extend@^0.6.0, deep-extend@~0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" -deep-is@~0.1.3: +deep-is@^0.1.3, deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" @@ -9288,7 +9522,7 @@ depd@^1.1.2, depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" -depd@^2.0.0, depd@~2.0.0: +depd@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" @@ -9583,6 +9817,14 @@ dot-case@^2.1.0: dependencies: no-case "^2.2.0" +dot-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.3.tgz#21d3b52efaaba2ea5fda875bb1aa8124521cf4aa" + integrity sha512-7hwEmg6RiSQfm/GwPL4AAWXKy3YNNZA3oFv2Pdiey0mwkRCPZ9x6SZbkLcn8Ma5PYeVokzoD4Twv2n7LKp5WeA== + dependencies: + no-case "^3.0.3" + tslib "^1.10.0" + dot-prop@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177" @@ -9797,6 +10039,15 @@ enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.0: memory-fs "^0.5.0" tapable "^1.0.0" +enhanced-resolve@^4.1.1, enhanced-resolve@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz#3b806f3bfafc1ec7de69551ef93cca46c1704126" + integrity sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ== + dependencies: + graceful-fs "^4.1.2" + memory-fs "^0.5.0" + tapable "^1.0.0" + entities@^1.1.1, entities@~1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" @@ -10842,6 +11093,27 @@ extract-zip@1.6.7: mkdirp "0.5.1" yauzl "2.4.1" +extract-zip@^1.6.7: + version "1.7.0" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.7.0.tgz#556cc3ae9df7f452c493a0cfb51cc30277940927" + integrity sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA== + dependencies: + concat-stream "^1.6.2" + debug "^2.6.9" + mkdirp "^0.5.4" + yauzl "^2.10.0" + +extract-zip@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" + integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== + dependencies: + debug "^4.1.1" + get-stream "^5.1.0" + yauzl "^2.10.0" + optionalDependencies: + "@types/yauzl" "^2.9.1" + extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" @@ -10896,6 +11168,18 @@ fast-glob@^3.0.3: merge2 "^1.3.0" micromatch "^4.0.2" +fast-glob@^3.1.1, fast-glob@^3.2.4: + version "3.2.4" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.4.tgz#d20aefbf99579383e7f3cc66529158c9b98554d3" + integrity sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.0" + merge2 "^1.3.0" + micromatch "^4.0.2" + picomatch "^2.2.1" + fast-json-stable-stringify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" @@ -11022,6 +11306,14 @@ file-loader@^1.1.11: loader-utils "^1.0.2" schema-utils "^0.4.5" +file-loader@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.1.0.tgz#65b9fcfb0ea7f65a234a1f10cdd7f1ab9a33f253" + integrity sha512-26qPdHyTsArQ6gU4P1HJbAbnFTyT2r0pG7czh1GFAd9TZbj0n94wWbupgixZH/ET/meqi2/5+F7DhW4OAXD+Lg== + dependencies: + loader-utils "^2.0.0" + schema-utils "^2.7.1" + file-name@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/file-name/-/file-name-0.1.0.tgz#12b122f120f9c34dbc176c1ab81a548aced6def7" @@ -11132,7 +11424,7 @@ find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: make-dir "^2.0.0" pkg-dir "^3.0.0" -find-cache-dir@^3.2.0: +find-cache-dir@^3.2.0, find-cache-dir@^3.3.1: version "3.3.1" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" dependencies: @@ -12286,6 +12578,13 @@ glob-parent@^5.0.0, glob-parent@^5.1.0, glob-parent@~5.1.0: dependencies: is-glob "^4.0.1" +glob-parent@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" + integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== + dependencies: + is-glob "^4.0.1" + glob-to-regexp@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" @@ -12349,7 +12648,7 @@ global-modules@1.0.0, global-modules@^1.0.0: is-windows "^1.0.1" resolve-dir "^1.0.0" -global-modules@2.0.0: +global-modules@2.0.0, global-modules@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" dependencies: @@ -12450,6 +12749,18 @@ globby@8.0.2, globby@^8.0.1: pify "^3.0.0" slash "^1.0.0" +globby@^11.0.1: + version "11.0.1" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.1.tgz#9a2bf107a068f3ffeabc49ad702c79ede8cfd357" + integrity sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.1.1" + ignore "^5.1.4" + merge2 "^1.3.0" + slash "^3.0.0" + globby@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" @@ -12950,7 +13261,7 @@ hastscript@^5.0.0: property-information "^5.0.1" space-separated-tokens "^1.0.0" -he@1.2.x: +he@1.2.x, he@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== @@ -13074,10 +13385,28 @@ html-entities@^1.2.0, html-entities@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" +html-entities@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.3.1.tgz#fb9a1a4b5b14c5daba82d3e34c6ae4fe701a0e44" + integrity sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA== + html-formatter@0.1.9: version "0.1.9" resolved "https://registry.yarnpkg.com/html-formatter/-/html-formatter-0.1.9.tgz#58e8859712f3d4d9e7094027517c4c46f4c336b8" +html-minifier-terser@^5.0.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" + integrity sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg== + dependencies: + camel-case "^4.1.1" + clean-css "^4.2.3" + commander "^4.1.1" + he "^1.2.0" + param-case "^3.0.3" + relateurl "^0.2.7" + terser "^4.6.3" + html-minifier@^3.2.3: version "3.5.21" resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.21.tgz#d0040e054730e354db008463593194015212d20c" @@ -13116,6 +13445,21 @@ html-webpack-plugin@4.0.0-alpha.2: tapable "^1.0.0" util.promisify "1.0.0" +html-webpack-plugin@^4.3.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz#625097650886b97ea5dae331c320e3238f6c121c" + integrity sha512-MouoXEYSjTzCrjIxWwg8gxL5fE2X2WZJLmBYXlaJhQUH5K/b5OrqmV7T4dB7iu0xkmJ6JlUuV6fFVtnqbPopZw== + dependencies: + "@types/html-minifier-terser" "^5.0.0" + "@types/tapable" "^1.0.5" + "@types/webpack" "^4.41.8" + html-minifier-terser "^5.0.1" + loader-utils "^1.2.3" + lodash "^4.17.15" + pretty-error "^2.1.1" + tapable "^1.1.3" + util.promisify "1.0.0" + htmlparser2@^3.3.0, htmlparser2@^3.9.1: version "3.10.1" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" @@ -13248,6 +13592,14 @@ https-proxy-agent@^2.1.0, https-proxy-agent@^2.2.1, https-proxy-agent@^2.2.3: agent-base "^4.3.0" debug "^3.1.0" +https-proxy-agent@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz#702b71fb5520a132a66de1f67541d9e62154d82b" + integrity sha512-zoDhWrkR3of1l9QAL8/scJZyLu8j/gBkcwcaQOZh7Gyh/+uJQzGVETdgT30akuwkpL8HTRfssqI3BZuV18teDg== + dependencies: + agent-base "5" + debug "4" + human-signals@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" @@ -13292,6 +13644,13 @@ icss-utils@^2.1.0: dependencies: postcss "^6.0.1" +icss-utils@^4.0.0, icss-utils@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" + integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== + dependencies: + postcss "^7.0.14" + identity-obj-proxy@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz#94d2bda96084453ef36fbc5aaec37e0f79f1fc14" @@ -13325,14 +13684,15 @@ ignore@^5.1.1: version "5.1.4" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.4.tgz#84b7b3dbe64552b6ef0eca99f6743dbec6d97adf" +ignore@^5.1.4: + version "5.1.8" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" + integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== + image-size@^0.6.2: version "0.6.3" resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.6.3.tgz#e7e5c65bb534bd7cdcedd6cb5166272a85f75fb2" -immediate@~3.0.5: - version "3.0.6" - resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" - immer@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/immer/-/immer-1.10.0.tgz#bad67605ba9c810275d91e1c2a47d4582e98286d" @@ -13704,6 +14064,11 @@ interpret@^1.0.0, interpret@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296" +interpret@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" + integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== + into-stream@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/into-stream/-/into-stream-3.1.0.tgz#96fb0a936c12babd6ff1752a17d05616abd094c6" @@ -14305,7 +14670,7 @@ is-upper-case@^1.1.0: dependencies: upper-case "^1.1.0" -is-url@^1.2.4: +is-url@^1.2.2, is-url@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.4.tgz#04a4df46d28c4cff3d73d01ff06abeb318a1aa52" @@ -14359,6 +14724,15 @@ is-yarn-global@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232" +is2@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is2/-/is2-2.0.1.tgz#8ac355644840921ce435d94f05d3a94634d3481a" + integrity sha512-+WaJvnaA7aJySz2q/8sLjMb2Mw14KTplHmSwcSpZ/fWJPkUmqw3YTzSWbPJ7OAwRvdYTWF2Wg+yYJ1AdP5Z8CA== + dependencies: + deep-is "^0.1.3" + ip-regex "^2.1.0" + is-url "^1.2.2" + isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" @@ -15629,15 +16003,6 @@ jsx-ast-utils@^2.2.3: array-includes "^3.0.3" object.assign "^4.1.0" -jszip@^3.1.5: - version "3.2.2" - resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.2.2.tgz#b143816df7e106a9597a94c77493385adca5bd1d" - dependencies: - lie "~3.3.0" - pako "~1.0.2" - readable-stream "~2.3.6" - set-immediate-shim "~1.0.1" - junit-merge@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/junit-merge/-/junit-merge-2.0.0.tgz#5f67c2bd837cd491c83a17614925d16c781a83d2" @@ -16033,12 +16398,6 @@ libnpmteam@^1.0.2: get-stream "^4.0.0" npm-registry-fetch "^4.0.0" -lie@~3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/lie/-/lie-3.3.0.tgz#dcf82dee545f46074daf200c7c1c5a08e0f40f6a" - dependencies: - immediate "~3.0.5" - liftoff@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-2.5.0.tgz#2009291bb31cea861bbf10a7c15a28caf75c31ec" @@ -16178,6 +16537,15 @@ loader-utils@^1.0.1, loader-utils@^1.4.0: emojis-list "^3.0.0" json5 "^1.0.1" +loader-utils@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0" + integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^2.1.2" + local-web-server@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/local-web-server/-/local-web-server-2.6.1.tgz#6c96bc3193edb00b5ba1d483607a71af6d5509e7" @@ -16403,7 +16771,7 @@ lodash@4.17.15, lodash@^4.0.0, lodash@^4.11.1, lodash@^4.15.0, lodash@^4.17.10, version "4.17.15" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" -"lodash@>=3.5 <5": +"lodash@>=3.5 <5", lodash@^4: version "4.17.20" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== @@ -16439,7 +16807,7 @@ log-update@^3.0.0: cli-cursor "^2.1.0" wrap-ansi "^5.0.0" -loglevel@^1.4.1: +loglevel@^1.4.1, loglevel@^1.6.8: version "1.7.0" resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.7.0.tgz#728166855a740d59d38db01cf46f042caa041bb0" integrity sha512-i2sY04nal5jDcagM3FMfG++T69GEEM8CYuOfeOIvmXzOIcwE9a/CJPR0MFM97pYMj/u10lzz7/zd7+qwhrBTqQ== @@ -16490,6 +16858,13 @@ lower-case@^1.1.0, lower-case@^1.1.1, lower-case@^1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" +lower-case@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.1.tgz#39eeb36e396115cc05e29422eaea9e692c9408c7" + integrity sha512-LiWgfDLLb1dwbFQZsSglpRj+1ctGnayXz3Uv0/WO8n558JycT5fg6zkNcnW0G68Nn0aEldTFeEfmjCfmqry/rQ== + dependencies: + tslib "^1.10.0" + lowercase-keys@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" @@ -16522,6 +16897,13 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + lws-basic-auth@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/lws-basic-auth/-/lws-basic-auth-0.1.1.tgz#d28856060572695b3811941d9f038517c4dbb34d" @@ -17096,7 +17478,7 @@ micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8, mic snapdragon "^0.8.1" to-regex "^3.0.2" -micromatch@^4.0.2: +micromatch@^4.0.0, micromatch@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" dependencies: @@ -17114,6 +17496,11 @@ mime-db@1.40.0: version "1.40.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32" +mime-db@1.44.0: + version "1.44.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" + integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg== + "mime-db@>= 1.40.0 < 2": version "1.42.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.42.0.tgz#3e252907b4c7adb906597b4b65636272cf9e7bac" @@ -17124,6 +17511,13 @@ mime-types@^2.1.12, mime-types@^2.1.18, mime-types@~2.1.17, mime-types@~2.1.18, dependencies: mime-db "1.40.0" +mime-types@^2.1.26: + version "2.1.27" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" + integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w== + dependencies: + mime-db "1.44.0" + mime@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" @@ -17185,6 +17579,16 @@ mini-css-extract-plugin@^0.8.2: schema-utils "^1.0.0" webpack-sources "^1.1.0" +mini-css-extract-plugin@^0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz#47f2cf07aa165ab35733b1fc97d4c46c0564339e" + integrity sha512-lp3GeY7ygcgAmVIcRPBVhIkf8Us7FZjA+ILpal44qLdSu11wmjKQ3d9k15lfD7pO4esu9eUIAW7qiYIBppv40A== + dependencies: + loader-utils "^1.1.0" + normalize-url "1.9.1" + schema-utils "^1.0.0" + webpack-sources "^1.1.0" + minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" @@ -17232,6 +17636,27 @@ minimist@~0.0.1: version "0.0.10" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== + dependencies: + minipass "^3.0.0" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-pipeline@^1.2.2: + version "1.2.4" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== + dependencies: + minipass "^3.0.0" + minipass@^2.3.5, minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" @@ -17245,6 +17670,13 @@ minipass@^3.0.0: dependencies: yallist "^4.0.0" +minipass@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" + integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== + dependencies: + yallist "^4.0.0" + minizlib@^1.2.1: version "1.3.3" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" @@ -17258,6 +17690,14 @@ minizlib@^2.1.0: minipass "^3.0.0" yallist "^4.0.0" +minizlib@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + mississippi@^1.2.0, mississippi@^1.3.0: version "1.3.1" resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-1.3.1.tgz#2a8bb465e86550ac8b36a7b6f45599171d78671e" @@ -17334,12 +17774,17 @@ mkdirp@*, mkdirp@0.5.1, mkdirp@0.x.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0 dependencies: minimist "0.0.8" -mkdirp@^0.5.3, mkdirp@^0.5.5: +mkdirp@^0.5.3, mkdirp@^0.5.4, mkdirp@^0.5.5: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" dependencies: minimist "^1.2.5" +mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + mobx-react-lite@2: version "2.0.6" resolved "https://registry.yarnpkg.com/mobx-react-lite/-/mobx-react-lite-2.0.6.tgz#e1307a2b271c6a6016c8ad815a25014b7f95997d" @@ -17405,7 +17850,7 @@ ms@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" -ms@^2.0.0, ms@^2.1.1: +ms@2.1.2, ms@^2.0.0, ms@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" @@ -17556,6 +18001,14 @@ no-case@^2.2.0, no-case@^2.3.2: dependencies: lower-case "^1.1.1" +no-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.3.tgz#c21b434c1ffe48b39087e86cfb4d2582e9df18f8" + integrity sha512-ehY/mVQCf9BL0gKfsJBvFJen+1V//U+0HQMPrWct40ixE4jnv0bfvxDbWtAHL9EcaPEOJHVVYKoQn1TlZUB8Tw== + dependencies: + lower-case "^2.0.1" + tslib "^1.10.0" + node-abi@^2.7.0: version "2.12.0" resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.12.0.tgz#40e9cfabdda1837863fa825e7dfa0b15686adf6f" @@ -18498,6 +18951,13 @@ p-limit@^2.0.0, p-limit@^2.2.0: dependencies: p-try "^2.0.0" +p-limit@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.0.2.tgz#1664e010af3cadc681baafd3e2a437be7b0fb5fe" + integrity sha512-iwqZSOoWIW+Ew4kAGUlN16J4M7OB3ysMLSZtnhmqx7njIHFPlxWBX8xo3lVTyFVq6mI/lL9qt2IsN1sHwaxJkg== + dependencies: + p-try "^2.0.0" + p-locate@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" @@ -18536,6 +18996,13 @@ p-map@^3.0.0: dependencies: aggregate-error "^3.0.0" +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + p-pipe@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-1.2.0.tgz#4b1a11399a11520a67790ee5a0c1d5881d6befe9" @@ -18687,7 +19154,7 @@ pad-component@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/pad-component/-/pad-component-0.0.1.tgz#ad1f22ce1bf0fdc0d6ddd908af17f351a404b8ac" -pako@~1.0.2, pako@~1.0.5: +pako@~1.0.5: version "1.0.10" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.10.tgz#4328badb5086a426aa90f541977d4955da5c9732" @@ -18705,6 +19172,14 @@ param-case@2.1.x, param-case@^2.1.0: dependencies: no-case "^2.2.0" +param-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.3.tgz#4be41f8399eff621c56eebb829a5e451d9801238" + integrity sha512-VWBVyimc1+QrzappRs7waeN2YmoZFCGXWASRYX1/rGHtXqEcrGEIDm+jqIwFa2fRXNgQEwrxaYuIrX0WcAguTA== + dependencies: + dot-case "^3.0.3" + tslib "^1.10.0" + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -18892,6 +19367,14 @@ pascal-case@^2.0.0: camel-case "^3.0.0" upper-case-first "^1.1.0" +pascal-case@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.1.tgz#5ac1975133ed619281e88920973d2cd1f279de5f" + integrity sha512-XIeHKqIrsquVTQL2crjq3NfJUxmdLasn3TYOU0VBM+UX2a6ztAWBlJQBePLGY7VHW8+2dRadeIPK5+KImwTxQA== + dependencies: + no-case "^3.0.3" + tslib "^1.10.0" + pascalcase@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" @@ -19221,7 +19704,7 @@ portfinder@^1.0.25: debug "^3.1.1" mkdirp "^0.5.1" -portfinder@^1.0.9: +portfinder@^1.0.26, portfinder@^1.0.9: version "1.0.28" resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.28.tgz#67c4622852bd5374dd1dd900f779f53462fac778" integrity sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA== @@ -19539,6 +20022,13 @@ postcss-modules-extract-imports@^1.2.0: dependencies: postcss "^6.0.1" +postcss-modules-extract-imports@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" + integrity sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ== + dependencies: + postcss "^7.0.5" + postcss-modules-local-by-default@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" @@ -19546,6 +20036,16 @@ postcss-modules-local-by-default@^1.2.0: css-selector-tokenizer "^0.7.0" postcss "^6.0.1" +postcss-modules-local-by-default@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz#bb14e0cc78279d504dbdcbfd7e0ca28993ffbbb0" + integrity sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw== + dependencies: + icss-utils "^4.1.1" + postcss "^7.0.32" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.1.0" + postcss-modules-scope@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" @@ -19553,6 +20053,14 @@ postcss-modules-scope@^1.1.0: css-selector-tokenizer "^0.7.0" postcss "^6.0.1" +postcss-modules-scope@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee" + integrity sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ== + dependencies: + postcss "^7.0.6" + postcss-selector-parser "^6.0.0" + postcss-modules-values@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" @@ -19560,6 +20068,14 @@ postcss-modules-values@^1.3.0: icss-replace-symbols "^1.1.0" postcss "^6.0.1" +postcss-modules-values@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" + integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== + dependencies: + icss-utils "^4.0.0" + postcss "^7.0.6" + postcss-nesting@^7.0.0: version "7.0.1" resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-7.0.1.tgz#b50ad7b7f0173e5b5e3880c3501344703e04c052" @@ -19781,6 +20297,16 @@ postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: indexes-of "^1.0.1" uniq "^1.0.1" +postcss-selector-parser@^6.0.0: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.3.tgz#766d77728728817cc140fa1ac6da5e77f9fada98" + integrity sha512-0ClFaY4X1ra21LRqbW6y3rUbWcxnSVkDFG57R7Nxus9J9myPFlv+jYDMohzpkBx0RrjjiqjtycpchQ+PLGmZ9w== + dependencies: + cssesc "^3.0.0" + indexes-of "^1.0.1" + uniq "^1.0.1" + util-deprecate "^1.0.2" + postcss-selector-parser@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c" @@ -19845,7 +20371,7 @@ postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.5: source-map "^0.6.1" supports-color "^6.1.0" -postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.32: +postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.32, postcss@^7.0.6: version "7.0.34" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.34.tgz#f2baf57c36010df7de4009940f21532c16d65c20" integrity sha512-H/7V2VeNScX9KE83GDrDZNiGT1m2H+UTnlinIzhjlLX9hfMUn1mHNnGeX81a1c8JSBdBvqk7c2ZOG6ZPn5itGw== @@ -19994,7 +20520,7 @@ progress@1.1.8: version "1.1.8" resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" -progress@^2.0.0, progress@^2.0.3: +progress@^2.0.0, progress@^2.0.1, progress@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" @@ -20116,6 +20642,11 @@ proxy-addr@~2.0.5: forwarded "~0.1.2" ipaddr.js "1.9.0" +proxy-from-env@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + prr@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" @@ -20180,6 +20711,29 @@ punycode@^1.2.4, punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" +puppeteer-cluster@^0.21.0: + version "0.21.0" + resolved "https://registry.yarnpkg.com/puppeteer-cluster/-/puppeteer-cluster-0.21.0.tgz#79071aa9830312446b18ec9d99fe41f6d80ee103" + integrity sha512-/x5mei0vXxFPpJ7iUS+xJ3rOcxxYUa2YeEyuWI9m0M5e8ammPiCXjvOsTcni+4ZAop3L2gpZFkxafPvXWOoRfg== + dependencies: + debug "^4.1.1" + +puppeteer@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/puppeteer/-/puppeteer-3.3.0.tgz#95839af9fdc0aa4de7e5ee073a4c0adeb9e2d3d7" + integrity sha512-23zNqRltZ1PPoK28uRefWJ/zKb5Jhnzbbwbpcna2o5+QMn17F0khq5s1bdH3vPlyj+J36pubccR8wiNA/VE0Vw== + dependencies: + debug "^4.1.0" + extract-zip "^2.0.0" + https-proxy-agent "^4.0.0" + mime "^2.0.3" + progress "^2.0.1" + proxy-from-env "^1.0.0" + rimraf "^3.0.2" + tar-fs "^2.0.0" + unbzip2-stream "^1.3.3" + ws "^7.2.3" + q@^1.1.2, q@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" @@ -20257,7 +20811,7 @@ randomatic@^3.0.0: kind-of "^6.0.0" math-random "^1.0.1" -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: +randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" dependencies: @@ -21063,7 +21617,7 @@ regjsparser@^0.6.4: dependencies: jsesc "~0.5.0" -relateurl@0.2.x: +relateurl@0.2.x, relateurl@^0.2.7: version "0.2.7" resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= @@ -21590,6 +22144,13 @@ rimraf@^3.0.0: dependencies: glob "^7.1.3" +rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + ripemd160@^2.0.0, ripemd160@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" @@ -21779,7 +22340,7 @@ sass-loader@7.1.0: pify "^3.0.0" semver "^5.5.0" -sax@>=0.6.0, sax@^1.2.1, sax@^1.2.4, sax@~1.2.4: +sax@^1.2.1, sax@^1.2.4, sax@~1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" @@ -21836,6 +22397,15 @@ schema-utils@^2.6.5: ajv "^6.12.0" ajv-keywords "^3.4.1" +schema-utils@^2.7.0, schema-utils@^2.7.1: + version "2.7.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" + integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== + dependencies: + "@types/json-schema" "^7.0.5" + ajv "^6.12.4" + ajv-keywords "^3.5.2" + scoped-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/scoped-regex/-/scoped-regex-1.0.0.tgz#a346bb1acd4207ae70bd7c0c7ca9e566b6baddb8" @@ -21870,15 +22440,6 @@ select@^1.1.2: resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" integrity sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0= -selenium-webdriver@^4.0.0-alpha.5: - version "4.0.0-alpha.5" - resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-4.0.0-alpha.5.tgz#e4683b3dbf827d70df09a7e43bf02ebad20fa7c1" - dependencies: - jszip "^3.1.5" - rimraf "^2.6.3" - tmp "0.0.30" - xml2js "^0.4.19" - selfsigned@^1.10.7: version "1.10.7" resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.7.tgz#da5819fd049d5574f28e88a9bcc6dbc6e6f3906b" @@ -21979,6 +22540,13 @@ serialize-javascript@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61" +serialize-javascript@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" + integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== + dependencies: + randombytes "^2.1.0" + serve-index-75lb@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/serve-index-75lb/-/serve-index-75lb-2.0.1.tgz#f07da6462df4cdcd49d8a14bba8f2b4b8a8dce1a" @@ -22016,10 +22584,6 @@ set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" -set-immediate-shim@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" - set-value@^2.0.0, set-value@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" @@ -22390,6 +22954,15 @@ sockjs@0.3.19: faye-websocket "^0.10.0" uuid "^3.0.1" +sockjs@0.3.20: + version "0.3.20" + resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.20.tgz#b26a283ec562ef8b2687b44033a4eeceac75d855" + integrity sha512-SpmVOVpdq0DJc0qArhF3E5xsxvaiqGNb73XfgBpK1y3UD5gs8DSo8aCTsuT5pX8rssdc2NDIzANwP9eCAiSdTA== + dependencies: + faye-websocket "^0.10.0" + uuid "^3.4.0" + websocket-driver "0.6.5" + socks-proxy-agent@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-3.0.1.tgz#2eae7cf8e2a82d34565761539a7f9718c5617659" @@ -22550,7 +23123,7 @@ spdy-transport@^3.0.0: readable-stream "^3.0.6" wbuf "^1.7.3" -spdy@^4.0.0: +spdy@^4.0.0, spdy@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.2.tgz#b74f466203a3eda452c02492b91fb9e84a27677b" integrity sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA== @@ -22635,6 +23208,13 @@ ssri@^6.0.0, ssri@^6.0.1: dependencies: figgy-pudding "^3.5.1" +ssri@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.0.tgz#79ca74e21f8ceaeddfcb4b90143c458b8d988808" + integrity sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA== + dependencies: + minipass "^3.1.1" + stable@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" @@ -23334,6 +23914,18 @@ tar@^5.0.5: mkdirp "^0.5.0" yallist "^4.0.0" +tar@^6.0.2: + version "6.0.5" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.0.5.tgz#bde815086e10b39f1dcd298e89d596e1535e200f" + integrity sha512-0b4HOimQHj9nXNEAA7zWwMM91Zhhba3pspja6sQbgTpynOJf+bkjBnfybNYzbpLbnwXnbyB4LOREvlyXLkCHSg== + dependencies: + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^3.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" + tarr@1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/tarr/-/tarr-1.1.0.tgz#d7a9532ce97f08f5200b78ae0a82a6883173c8c8" @@ -23342,6 +23934,14 @@ tarr@1.1.0: fstream ">=1.0.12" inherits "2" +tcp-port-used@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/tcp-port-used/-/tcp-port-used-1.0.1.tgz#46061078e2d38c73979a2c2c12b5a674e6689d70" + integrity sha512-rwi5xJeU6utXoEIiMvVBMc9eJ2/ofzB+7nLOdnZuFTmNCLqRiQh2sMG9MqCxHU/69VC/Fwp5dV9306Qd54ll1Q== + dependencies: + debug "4.1.0" + is2 "2.0.1" + teeny-request@^3.11.3: version "3.11.3" resolved "https://registry.yarnpkg.com/teeny-request/-/teeny-request-3.11.3.tgz#335c629f7645e5d6599362df2f3230c4cbc23a55" @@ -23449,6 +24049,15 @@ terser@^4.6.2: source-map "~0.6.1" source-map-support "~0.5.12" +terser@^4.6.3: + version "4.8.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" + integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw== + dependencies: + commander "^2.20.0" + source-map "~0.6.1" + source-map-support "~0.5.12" + test-exclude@^4.2.1: version "4.2.3" resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.3.tgz#a9a5e64474e4398339245a0a769ad7c2f4a97c20" @@ -23526,7 +24135,7 @@ through2@^3.0.0, through2@^3.0.1: dependencies: readable-stream "2 || 3" -through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6: +through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6, through@^2.3.8: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" @@ -23584,12 +24193,6 @@ titleize@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/titleize/-/titleize-1.0.1.tgz#21bc24fcca658eadc6d3bd3c38f2bd173769b4c5" -tmp@0.0.30: - version "0.0.30" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.30.tgz#72419d4a8be7d6ce75148fd8b324e593a711c2ed" - dependencies: - os-tmpdir "~1.0.1" - tmp@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.1.0.tgz#ee434a4e22543082e294ba6201dcc6eafefa2877" @@ -23771,6 +24374,17 @@ ts-loader@^5.3.3: micromatch "^3.1.4" semver "^5.0.1" +ts-loader@^7.0.5: + version "7.0.5" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-7.0.5.tgz#789338fb01cb5dc0a33c54e50558b34a73c9c4c5" + integrity sha512-zXypEIT6k3oTc+OZNx/cqElrsbBtYqDknf48OZos0NQ3RTt045fBIU8RRSu+suObBzYB355aIPGOe/3kj9h7Ig== + dependencies: + chalk "^2.3.0" + enhanced-resolve "^4.0.0" + loader-utils "^1.0.2" + micromatch "^4.0.0" + semver "^6.0.0" + ts-pnp@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.6.tgz#389a24396d425a0d3162e96d2b4638900fdc289a" @@ -23909,6 +24523,11 @@ typescript@^3.8.3: version "3.8.3" resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.8.3.tgz#409eb8544ea0335711205869ec458ab109ee1061" +typescript@^3.9.5: + version "3.9.7" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.7.tgz#98d600a5ebdc38f40cb277522f12dc800e9e25fa" + integrity sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw== + typical@^2.6.0, typical@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/typical/-/typical-2.6.1.tgz#5c080e5d661cbbe38259d2e70a3c7253e873881d" @@ -23970,6 +24589,14 @@ umask@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" +unbzip2-stream@^1.3.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz#b0da04c4371311df771cdc215e87f2130991ace7" + integrity sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg== + dependencies: + buffer "^5.2.1" + through "^2.3.8" + unc-path-regex@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" @@ -24336,6 +24963,15 @@ url-loader@^1.1.2: mime "^2.0.3" schema-utils "^1.0.0" +url-loader@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.0.tgz#c7d6b0d6b0fccd51ab3ffc58a78d32b8d89a7be2" + integrity sha512-IzgAAIC8wRrg6NYkFIJY09vtktQcsvU8V6HhtQj9PTefbYImzLB1hufqo4m+RyM5N3mLx5BqJKccgxJS+W3kqw== + dependencies: + loader-utils "^2.0.0" + mime-types "^2.1.26" + schema-utils "^2.6.5" + url-parse-as-address@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/url-parse-as-address/-/url-parse-as-address-1.0.0.tgz#fb80901883f338b3cbed3538f5faa26adaf7f2e7" @@ -24474,6 +25110,11 @@ v8-compile-cache@^2.0.3: version "2.1.0" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" +v8-compile-cache@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz#54bc3cdd43317bca91e35dcaf305b1a7237de745" + integrity sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ== + v8flags@^2.0.10: version "2.1.1" resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4" @@ -24948,7 +25589,7 @@ watchpack-chokidar2@^2.0.0: dependencies: chokidar "^2.1.8" -watchpack@^1.5.0: +watchpack@^1.5.0, watchpack@^1.7.4: version "1.7.4" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.4.tgz#6e9da53b3c80bb2d6508188f5b200410866cd30b" integrity sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg== @@ -25014,6 +25655,23 @@ webidl-conversions@^6.1.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== +webpack-cli@^3.3.11: + version "3.3.12" + resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.12.tgz#94e9ada081453cd0aa609c99e500012fd3ad2d4a" + integrity sha512-NVWBaz9k839ZH/sinurM+HcDvJOTXwSjYp1ku+5XKeOC03z8v5QitnK/x+lAxGXFyhdayoIf/GOpv85z3/xPag== + dependencies: + chalk "^2.4.2" + cross-spawn "^6.0.5" + enhanced-resolve "^4.1.1" + findup-sync "^3.0.0" + global-modules "^2.0.0" + import-local "^2.0.0" + interpret "^1.4.0" + loader-utils "^1.4.0" + supports-color "^6.1.0" + v8-compile-cache "^2.1.1" + yargs "^13.3.2" + webpack-dev-middleware@3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz#1132fecc9026fd90f0ecedac5cbff75d1fb45890" @@ -25108,6 +25766,45 @@ webpack-dev-server@^3.10.3: ws "^6.2.1" yargs "12.0.5" +webpack-dev-server@^3.11.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.11.0.tgz#8f154a3bce1bcfd1cc618ef4e703278855e7ff8c" + integrity sha512-PUxZ+oSTxogFQgkTtFndEtJIPNmml7ExwufBZ9L2/Xyyd5PnOL5UreWe5ZT7IU25DSdykL9p1MLQzmLh2ljSeg== + dependencies: + ansi-html "0.0.7" + bonjour "^3.5.0" + chokidar "^2.1.8" + compression "^1.7.4" + connect-history-api-fallback "^1.6.0" + debug "^4.1.1" + del "^4.1.1" + express "^4.17.1" + html-entities "^1.3.1" + http-proxy-middleware "0.19.1" + import-local "^2.0.0" + internal-ip "^4.3.0" + ip "^1.1.5" + is-absolute-url "^3.0.3" + killable "^1.0.1" + loglevel "^1.6.8" + opn "^5.5.0" + p-retry "^3.0.1" + portfinder "^1.0.26" + schema-utils "^1.0.0" + selfsigned "^1.10.7" + semver "^6.3.0" + serve-index "^1.9.1" + sockjs "0.3.20" + sockjs-client "1.4.0" + spdy "^4.0.2" + strip-ansi "^3.0.1" + supports-color "^6.1.0" + url "^0.11.0" + webpack-dev-middleware "^3.7.2" + webpack-log "^2.0.0" + ws "^6.2.1" + yargs "^13.3.2" + webpack-hot-middleware@^2.25.0: version "2.25.0" resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.25.0.tgz#4528a0a63ec37f8f8ef565cf9e534d57d09fe706" @@ -25146,7 +25843,7 @@ webpack-sources@^0.2.0: source-list-map "^1.1.1" source-map "~0.5.3" -webpack-sources@^1.1.0, webpack-sources@^1.2.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1: +webpack-sources@^1.1.0, webpack-sources@^1.2.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" dependencies: @@ -25215,6 +25912,35 @@ webpack@^4.25.1: watchpack "^1.6.0" webpack-sources "^1.4.1" +webpack@^4.43.0: + version "4.44.2" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.44.2.tgz#6bfe2b0af055c8b2d1e90ed2cd9363f841266b72" + integrity sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-module-context" "1.9.0" + "@webassemblyjs/wasm-edit" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + acorn "^6.4.1" + ajv "^6.10.2" + ajv-keywords "^3.4.1" + chrome-trace-event "^1.0.2" + enhanced-resolve "^4.3.0" + eslint-scope "^4.0.3" + json-parse-better-errors "^1.0.2" + loader-runner "^2.4.0" + loader-utils "^1.2.3" + memory-fs "^0.4.1" + micromatch "^3.1.10" + mkdirp "^0.5.3" + neo-async "^2.6.1" + node-libs-browser "^2.2.1" + schema-utils "^1.0.0" + tapable "^1.1.3" + terser-webpack-plugin "^1.4.3" + watchpack "^1.7.4" + webpack-sources "^1.4.1" + webpack@~4.43.0: version "4.43.0" resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.43.0.tgz#c48547b11d563224c561dad1172c8aa0b8a678e6" @@ -25243,6 +25969,13 @@ webpack@~4.43.0: watchpack "^1.6.1" webpack-sources "^1.4.1" +websocket-driver@0.6.5: + version "0.6.5" + resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.6.5.tgz#5cb2556ceb85f4373c6d8238aa691c8454e13a36" + integrity sha1-XLJVbOuF9Dc8bYI4qmkchFThOjY= + dependencies: + websocket-extensions ">=0.1.1" + websocket-driver@>=0.5.1: version "0.7.3" resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.3.tgz#a2d4e0d4f4f116f1e6297eba58b05d430100e9f9" @@ -25689,22 +26422,10 @@ xml-name-validator@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" -xml2js@^0.4.19: - version "0.4.22" - resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.22.tgz#4fa2d846ec803237de86f30aa9b5f70b6600de02" - dependencies: - sax ">=0.6.0" - util.promisify "~1.0.0" - xmlbuilder "~11.0.0" - xml@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/xml/-/xml-1.0.1.tgz#78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5" -xmlbuilder@~11.0.0: - version "11.0.1" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" - xmlchars@^2.1.1, xmlchars@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" @@ -25808,9 +26529,10 @@ yargs-parser@^13.1.1: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^16.1.0: - version "16.1.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-16.1.0.tgz#73747d53ae187e7b8dbe333f95714c76ea00ecf1" +yargs-parser@^13.1.2: + version "13.1.2" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" + integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== dependencies: camelcase "^5.0.0" decamelize "^1.2.0" @@ -25902,21 +26624,21 @@ yargs@^13.2.4, yargs@^13.3.0: y18n "^4.0.0" yargs-parser "^13.1.1" -yargs@^15.0.2: - version "15.0.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.0.2.tgz#4248bf218ef050385c4f7e14ebdf425653d13bd3" +yargs@^13.3.2: + version "13.3.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" + integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== dependencies: - cliui "^6.0.0" - decamelize "^1.2.0" - find-up "^4.1.0" + cliui "^5.0.0" + find-up "^3.0.0" get-caller-file "^2.0.1" require-directory "^2.1.1" require-main-filename "^2.0.0" set-blocking "^2.0.0" - string-width "^4.2.0" + string-width "^3.0.0" which-module "^2.0.0" y18n "^4.0.0" - yargs-parser "^16.1.0" + yargs-parser "^13.1.2" yargs@^7.0.0: version "7.1.0" @@ -25954,7 +26676,7 @@ yargs@^8.0.2: y18n "^3.2.1" yargs-parser "^7.0.0" -yauzl@2.10.0: +yauzl@2.10.0, yauzl@^2.10.0: version "2.10.0" resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" dependencies: From 738fb5d357e1042f2e6cf8817547d54b41bc03ff Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Mon, 5 Oct 2020 18:41:34 -0400 Subject: [PATCH 04/29] wip --- .../src/components/BaseTable/BaseBodyCell.tsx | 53 +++ .../BaseHeaderCell.tsx} | 40 +- .../src/components/BaseTable/BaseTable.tsx | 72 +++ .../components/BaseTable/BaseTableBody.tsx | 28 ++ .../components/BaseTable/BaseTableBodyRow.tsx | 34 ++ .../BaseTableCaption.tsx} | 8 +- .../components/BaseTable/BaseTableHead.tsx | 31 ++ .../BaseTable/BaseTableHeaderRow.tsx | 28 ++ .../src/components/BaseTable/index.ts | 8 + .../components/LightTable/LightBodyCell.tsx | 30 -- .../src/components/LightTable/LightTable.tsx | 57 --- .../components/LightTable/LightTableBody.tsx | 19 - .../components/LightTable/LightTableHead.tsx | 19 - .../components/LightTable/LightTableRow.tsx | 19 - .../src/components/LightTable/index.ts | 7 - .../src/components/Table/BodyWrapper.tsx | 7 +- .../src/components/Table/HeaderCell.tsx | 28 +- .../src/components/Table/RowWrapper.tsx | 3 +- .../src/components/Table/Table.tsx | 18 +- .../src/components/Table/base/types.tsx | 21 +- .../src/components/Table/examples/Table.md | 434 ++++++++++++------ .../src/components/Table/examples/new.html | 90 ++++ .../src/components/Table/examples/old.html | 93 ++++ .../components/Table/examples/original.html | 103 +++++ .../react-table/src/components/Table/index.ts | 1 + packages/react-table/src/components/index.ts | 2 +- 26 files changed, 916 insertions(+), 337 deletions(-) create mode 100644 packages/react-table/src/components/BaseTable/BaseBodyCell.tsx rename packages/react-table/src/components/{LightTable/LightHeaderCell.tsx => BaseTable/BaseHeaderCell.tsx} (51%) create mode 100644 packages/react-table/src/components/BaseTable/BaseTable.tsx create mode 100644 packages/react-table/src/components/BaseTable/BaseTableBody.tsx create mode 100644 packages/react-table/src/components/BaseTable/BaseTableBodyRow.tsx rename packages/react-table/src/components/{LightTable/LightTableCaption.tsx => BaseTable/BaseTableCaption.tsx} (59%) create mode 100644 packages/react-table/src/components/BaseTable/BaseTableHead.tsx create mode 100644 packages/react-table/src/components/BaseTable/BaseTableHeaderRow.tsx create mode 100644 packages/react-table/src/components/BaseTable/index.ts delete mode 100644 packages/react-table/src/components/LightTable/LightBodyCell.tsx delete mode 100644 packages/react-table/src/components/LightTable/LightTable.tsx delete mode 100644 packages/react-table/src/components/LightTable/LightTableBody.tsx delete mode 100644 packages/react-table/src/components/LightTable/LightTableHead.tsx delete mode 100644 packages/react-table/src/components/LightTable/LightTableRow.tsx delete mode 100644 packages/react-table/src/components/LightTable/index.ts create mode 100644 packages/react-table/src/components/Table/examples/new.html create mode 100644 packages/react-table/src/components/Table/examples/old.html create mode 100644 packages/react-table/src/components/Table/examples/original.html diff --git a/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx b/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx new file mode 100644 index 00000000000..4ef0a15754d --- /dev/null +++ b/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx @@ -0,0 +1,53 @@ +import * as React from 'react'; +import { css } from '@patternfly/react-styles'; +import styles from '@patternfly/react-styles/css/components/Table/table'; + +export interface BaseBodyCellProps extends React.HTMLProps { + /** Content rendered inside the body cell */ + children?: React.ReactNode; + /** Additional classes added to the body cell */ + className?: string; + /** + * The column header the cell corresponds to. + * This attribute replaces table header in mobile viewport. It is rendered by ::before pseudo element. + */ + dataLabel?: string; + /** Cell key */ + dataKey?: number; + /** Modifies cell to center its contents. */ + textCenter?: boolean; + /** Style modifier to apply */ + modifier?: 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'; + /** Forwarded ref */ + innerRef?: React.Ref; +} + +const BaseBodyCellBase: React.FunctionComponent = ({ + children, + className, + dataLabel, + dataKey, + textCenter = false, + modifier, + innerRef, + ...props +}: BaseBodyCellProps) => ( + + {children} + +); + +export const BaseBodyCell = React.forwardRef((props: BaseBodyCellProps, ref: React.Ref) => ( + +)); +BaseBodyCell.displayName = 'BaseBodyCell'; diff --git a/packages/react-table/src/components/LightTable/LightHeaderCell.tsx b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx similarity index 51% rename from packages/react-table/src/components/LightTable/LightHeaderCell.tsx rename to packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx index 58e7de0165c..b1f18816792 100644 --- a/packages/react-table/src/components/LightTable/LightHeaderCell.tsx +++ b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx @@ -3,20 +3,32 @@ import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; import { SortByDirection, SortColumn } from '../Table'; -export interface LightHeaderCellProps { +export interface BaseHeaderCellProps extends React.HTMLProps { /** Content rendered inside the header cell */ children?: React.ReactNode; /** Additional classes added to the header cell */ className?: string; /** Modifies cell to center its contents. */ textCenter?: boolean; + /** Wraps the content in a button and adds a sort icon */ sortable?: boolean; + /** Req. sortable={true} - Click callback on the sortable cell */ onSort?: Function; + /** Req. sortable={true} - Determines the sort icon direction */ sortDirection?: SortByDirection | 'none'; + /** Gives the cell an active styling */ active?: boolean; + /** Adds data-label attribute */ + dataLabel?: string; + /** Cell key */ + dataKey?: number; + /** Style modifier to apply */ + modifier?: 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'; + /** Forwarded ref */ + innerRef?: React.Ref; } -export const LightHeaderCell: React.FunctionComponent = ({ +const BaseHeaderCellBase: React.FunctionComponent = ({ children, className, textCenter = false, @@ -24,9 +36,12 @@ export const LightHeaderCell: React.FunctionComponent = ({ onSort, sortDirection = 'none', active, + dataLabel, + dataKey, + modifier, + innerRef, ...props -}: LightHeaderCellProps) => { - const [sortDirectionState, setSortDirectionState] = React.useState(sortDirection); +}: BaseHeaderCellProps) => { const getAriaSort = () => { if (sortDirection === 'asc') { return 'ascending'; @@ -38,15 +53,18 @@ export const LightHeaderCell: React.FunctionComponent = ({ }; return ( {sortable ? ( @@ -63,4 +81,10 @@ export const LightHeaderCell: React.FunctionComponent = ({ ); }; -LightHeaderCell.displayName = 'LightHeaderCell'; + +export const BaseHeaderCell = React.forwardRef( + (props: BaseHeaderCellProps, ref: React.Ref) => ( + + ) +); +BaseHeaderCell.displayName = 'BaseHeaderCell'; diff --git a/packages/react-table/src/components/BaseTable/BaseTable.tsx b/packages/react-table/src/components/BaseTable/BaseTable.tsx new file mode 100644 index 00000000000..f2dd1b7d552 --- /dev/null +++ b/packages/react-table/src/components/BaseTable/BaseTable.tsx @@ -0,0 +1,72 @@ +import * as React from 'react'; +import styles from '@patternfly/react-styles/css/components/Table/table'; +import stylesGrid from '@patternfly/react-styles/css/components/Table/table-grid'; +import { css } from '@patternfly/react-styles'; +import { TableGridBreakpoint, TableVariant, toCamel } from '../Table'; +import { useOUIAProps, OUIAProps } from '@patternfly/react-core'; + +export interface BaseTableProps extends React.HTMLProps, OUIAProps { + /** Adds an accessible name for the Table */ + 'aria-label'?: string; + /** Content rendered inside the Table */ + children?: React.ReactNode; + /** Additional classes added to the Table */ + className?: string; + /** Style variant for the Table */ + variant?: 'compact'; + /** Render borders */ + borders?: boolean; + /** Specifies the grid breakpoints */ + gridBreakPoint?: '' | 'grid' | 'grid-md' | 'grid-lg' | 'grid-xl' | 'grid-2xl'; + /** A valid WAI-ARIA role to be applied to the table element */ + role?: string; + /** If set to true, the table header sticks to the top of its container */ + isStickyHeader?: boolean; + /** Forwarded ref */ + innerRef?: React.Ref; +} + +const BaseTableBase: React.FunctionComponent = ({ + children, + className, + variant, + borders = true, + isStickyHeader = false, + gridBreakPoint = TableGridBreakpoint.gridMd, + 'aria-label': ariaLabel, + role = 'grid', + innerRef, + ouiaId, + ouiaSafe = true, + ...props +}: BaseTableProps) => { + const ouiaProps = useOUIAProps('Table', ouiaId, ouiaSafe); + return ( + + {children} +
+ ); +}; + +export const BaseTable = React.forwardRef((props: BaseTableProps, ref: React.Ref) => ( + +)); +BaseTable.displayName = 'BaseTable'; diff --git a/packages/react-table/src/components/BaseTable/BaseTableBody.tsx b/packages/react-table/src/components/BaseTable/BaseTableBody.tsx new file mode 100644 index 00000000000..8b52398aedd --- /dev/null +++ b/packages/react-table/src/components/BaseTable/BaseTableBody.tsx @@ -0,0 +1,28 @@ +import * as React from 'react'; + +export interface BaseTableBodyProps extends React.HTMLProps { + /** Content rendered inside the row */ + children?: React.ReactNode; + /** Additional classes added to the row */ + className?: string; + /** Forwarded ref */ + innerRef?: React.Ref; +} + +const BaseTableBodyBase: React.FunctionComponent = ({ + children, + className, + innerRef, + ...props +}: BaseTableBodyProps) => ( + + {children} + +); + +export const BaseTableBody = React.forwardRef( + (props: BaseTableBodyProps, ref: React.Ref) => ( + + ) +); +BaseTableBody.displayName = 'BaseTableBody'; diff --git a/packages/react-table/src/components/BaseTable/BaseTableBodyRow.tsx b/packages/react-table/src/components/BaseTable/BaseTableBodyRow.tsx new file mode 100644 index 00000000000..f15a8bb1026 --- /dev/null +++ b/packages/react-table/src/components/BaseTable/BaseTableBodyRow.tsx @@ -0,0 +1,34 @@ +import * as React from 'react'; +import { useOUIAProps, OUIAProps } from '@patternfly/react-core'; + +export interface BaseTableBodyRowProps extends React.HTMLProps, OUIAProps { + /** Content rendered inside the row */ + children?: React.ReactNode; + /** Additional classes added to the row */ + className?: string; + /** Forwarded ref */ + innerRef?: React.Ref; +} + +const BaseTableBodyRowBase: React.FunctionComponent = ({ + children, + className, + innerRef, + ouiaId, + ouiaSafe = true, + ...props +}: BaseTableBodyRowProps) => { + const ouiaProps = useOUIAProps('TableRow', ouiaId, ouiaSafe); + return ( + + {children} + + ); +}; + +export const BaseTableBodyRow = React.forwardRef( + (props: BaseTableBodyRowProps, ref: React.Ref) => ( + + ) +); +BaseTableBodyRow.displayName = 'BaseTableBodyRow'; diff --git a/packages/react-table/src/components/LightTable/LightTableCaption.tsx b/packages/react-table/src/components/BaseTable/BaseTableCaption.tsx similarity index 59% rename from packages/react-table/src/components/LightTable/LightTableCaption.tsx rename to packages/react-table/src/components/BaseTable/BaseTableCaption.tsx index ef3289cd506..5d84b68a50c 100644 --- a/packages/react-table/src/components/LightTable/LightTableCaption.tsx +++ b/packages/react-table/src/components/BaseTable/BaseTableCaption.tsx @@ -1,19 +1,19 @@ import * as React from 'react'; -export interface LightTableCaptionProps { +export interface BaseTableCaptionProps { /** Content rendered inside the caption */ children?: React.ReactNode; /** Additional classes added to the caption */ className?: string; } -export const LightTableCaption: React.FunctionComponent = ({ +export const BaseTableCaption: React.FunctionComponent = ({ children, className, ...props -}: LightTableCaptionProps) => ( +}: BaseTableCaptionProps) => ( {children} ); -LightTableCaption.displayName = 'LightTableCaption'; +BaseTableCaption.displayName = 'BaseTableCaption'; diff --git a/packages/react-table/src/components/BaseTable/BaseTableHead.tsx b/packages/react-table/src/components/BaseTable/BaseTableHead.tsx new file mode 100644 index 00000000000..dca3c0f5a62 --- /dev/null +++ b/packages/react-table/src/components/BaseTable/BaseTableHead.tsx @@ -0,0 +1,31 @@ +import * as React from 'react'; +import { css } from '@patternfly/react-styles'; +import styles from '@patternfly/react-styles/css/components/Table/table'; + +export interface BaseTableHeadProps extends React.HTMLProps { + /** Content rendered inside the row */ + children?: React.ReactNode; + /** Additional classes added to the row */ + className?: string; + /** Won't wrap the table head if true */ + noWrap?: boolean; + /** Forwarded ref */ + innerRef?: React.Ref; +} + +const BaseTableHeadBase: React.FunctionComponent = ({ + children, + className, + noWrap = false, + innerRef, + ...props +}: BaseTableHeadProps) => ( + + {children} + +); + +export const BaseTableHead = React.forwardRef((props: BaseTableHeadProps, ref: React.Ref) => ( + +)); +BaseTableHead.displayName = 'BaseTableHead'; diff --git a/packages/react-table/src/components/BaseTable/BaseTableHeaderRow.tsx b/packages/react-table/src/components/BaseTable/BaseTableHeaderRow.tsx new file mode 100644 index 00000000000..dd436a30d68 --- /dev/null +++ b/packages/react-table/src/components/BaseTable/BaseTableHeaderRow.tsx @@ -0,0 +1,28 @@ +import * as React from 'react'; + +export interface BaseTableHeaderRowProps extends React.HTMLProps { + /** Content rendered inside the row */ + children?: React.ReactNode; + /** Additional classes added to the row */ + className?: string; + /** Forwarded ref */ + innerRef?: React.Ref; +} + +const BaseTableHeaderRowBase: React.FunctionComponent = ({ + children, + className, + innerRef, + ...props +}: BaseTableHeaderRowProps) => ( + + {children} + +); + +export const BaseTableHeaderRow = React.forwardRef( + (props: BaseTableHeaderRowProps, ref: React.Ref) => ( + + ) +); +BaseTableHeaderRow.displayName = 'BaseTableHeaderRow'; diff --git a/packages/react-table/src/components/BaseTable/index.ts b/packages/react-table/src/components/BaseTable/index.ts new file mode 100644 index 00000000000..6dff92041a5 --- /dev/null +++ b/packages/react-table/src/components/BaseTable/index.ts @@ -0,0 +1,8 @@ +export * from './BaseTable'; +export * from './BaseTableHead'; +export * from './BaseTableHeaderRow'; +export * from './BaseTableBody'; +export * from './BaseTableBodyRow'; +export * from './BaseHeaderCell'; +export * from './BaseBodyCell'; +export * from './BaseTableCaption'; diff --git a/packages/react-table/src/components/LightTable/LightBodyCell.tsx b/packages/react-table/src/components/LightTable/LightBodyCell.tsx deleted file mode 100644 index eba7b5f7fab..00000000000 --- a/packages/react-table/src/components/LightTable/LightBodyCell.tsx +++ /dev/null @@ -1,30 +0,0 @@ -import * as React from 'react'; -import { css } from '@patternfly/react-styles'; -import styles from '@patternfly/react-styles/css/components/Table/table'; - -export interface LightBodyCellProps { - /** Content rendered inside the body cell */ - children?: React.ReactNode; - /** Additional classes added to the body cell */ - className?: string; - /** - * The column header the cell corresponds to. - * This attribute replaces table header in mobile viewport. It is rendered by ::before pseudo element. - */ - dataLabel?: string; - /** Modifies cell to center its contents. */ - textCenter?: boolean; -} - -export const LightBodyCell: React.FunctionComponent = ({ - children, - className, - dataLabel, - textCenter = false, - ...props -}: LightBodyCellProps) => ( - - {children} - -); -LightBodyCell.displayName = 'LightBodyCell'; diff --git a/packages/react-table/src/components/LightTable/LightTable.tsx b/packages/react-table/src/components/LightTable/LightTable.tsx deleted file mode 100644 index 47f9b41af9d..00000000000 --- a/packages/react-table/src/components/LightTable/LightTable.tsx +++ /dev/null @@ -1,57 +0,0 @@ -import * as React from 'react'; -import styles from '@patternfly/react-styles/css/components/Table/table'; -import stylesGrid from '@patternfly/react-styles/css/components/Table/table-grid'; -import { css } from '@patternfly/react-styles'; -import { TableGridBreakpoint, TableVariant, toCamel } from '../Table'; - -export interface LightTableProps { - /** Content rendered inside the Table */ - children?: React.ReactNode; - /** Additional classes added to the Table */ - className?: string; - /** Style variant for the Table */ - variant?: 'compact'; - /** Render borders */ - borders?: boolean; - /** If set to true, the table header sticks to the top of its container */ - isStickyHeader?: boolean; - /** Specifies the grid breakpoints */ - gridBreakPoint?: '' | 'grid' | 'grid-md' | 'grid-lg' | 'grid-xl' | 'grid-2xl'; - /** - * Provides an accessible name for the table when a descriptive or is not available. - * Required in the absence of or - */ - 'aria-label'?: string; -} - -export const LightTable: React.FunctionComponent = ({ - children, - className, - variant, - borders = true, - isStickyHeader = false, - gridBreakPoint = TableGridBreakpoint.gridMd, - 'aria-label': ariaLabel, - ...props -}: LightTableProps) => ( - - {children} -
-); -LightTable.displayName = 'LightTable'; diff --git a/packages/react-table/src/components/LightTable/LightTableBody.tsx b/packages/react-table/src/components/LightTable/LightTableBody.tsx deleted file mode 100644 index 7acde3025ea..00000000000 --- a/packages/react-table/src/components/LightTable/LightTableBody.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import * as React from 'react'; - -export interface LightTableBodyProps { - /** Content rendered inside the row */ - children?: React.ReactNode; - /** Additional classes added to the row */ - className?: string; -} - -export const LightTableBody: React.FunctionComponent = ({ - children, - className, - ...props -}: LightTableBodyProps) => ( - - {children} - -); -LightTableBody.displayName = 'LightTableBody'; diff --git a/packages/react-table/src/components/LightTable/LightTableHead.tsx b/packages/react-table/src/components/LightTable/LightTableHead.tsx deleted file mode 100644 index cc936f21fe9..00000000000 --- a/packages/react-table/src/components/LightTable/LightTableHead.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import * as React from 'react'; - -export interface LightTableHeadProps { - /** Content rendered inside the row */ - children?: React.ReactNode; - /** Additional classes added to the row */ - className?: string; -} - -export const LightTableHead: React.FunctionComponent = ({ - children, - className, - ...props -}: LightTableHeadProps) => ( - - {children} - -); -LightTableHead.displayName = 'LightTableHead'; diff --git a/packages/react-table/src/components/LightTable/LightTableRow.tsx b/packages/react-table/src/components/LightTable/LightTableRow.tsx deleted file mode 100644 index ef392f3b7d6..00000000000 --- a/packages/react-table/src/components/LightTable/LightTableRow.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import * as React from 'react'; - -export interface LightTableRowProps { - /** Content rendered inside the row */ - children?: React.ReactNode; - /** Additional classes added to the row */ - className?: string; -} - -export const LightTableRow: React.FunctionComponent = ({ - children, - className, - ...props -}: LightTableRowProps) => ( - - {children} - -); -LightTableRow.displayName = 'LightTableRow'; diff --git a/packages/react-table/src/components/LightTable/index.ts b/packages/react-table/src/components/LightTable/index.ts deleted file mode 100644 index c4869afec3e..00000000000 --- a/packages/react-table/src/components/LightTable/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -export * from './LightTable'; -export * from './LightTableHead'; -export * from './LightTableBody'; -export * from './LightTableRow'; -export * from './LightHeaderCell'; -export * from './LightBodyCell'; -export * from './LightTableCaption'; diff --git a/packages/react-table/src/components/Table/BodyWrapper.tsx b/packages/react-table/src/components/Table/BodyWrapper.tsx index 33a108959a5..56e609caf74 100644 --- a/packages/react-table/src/components/Table/BodyWrapper.tsx +++ b/packages/react-table/src/components/Table/BodyWrapper.tsx @@ -3,6 +3,7 @@ import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; import { IRow, IRowData, IExtraData, IHeaderRow } from './Table'; import { mapOpenedRows } from './utils/headerUtils'; +import { BaseTableBody } from '../BaseTable/BaseTableBody'; export interface BodyWrapperProps { children?: React.ReactNode; @@ -33,18 +34,18 @@ export const BodyWrapper: React.FunctionComponent = ({ return ( {mapOpenedRows(mappedRows, props.children).map((oneRow, key) => ( - } > {oneRow.rows} - + ))} ); } - return } />; + return } />; }; BodyWrapper.displayName = 'BodyWrapper'; diff --git a/packages/react-table/src/components/Table/HeaderCell.tsx b/packages/react-table/src/components/Table/HeaderCell.tsx index 3758fc72445..7195cdf1495 100644 --- a/packages/react-table/src/components/Table/HeaderCell.tsx +++ b/packages/react-table/src/components/Table/HeaderCell.tsx @@ -2,6 +2,7 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; +import { BaseHeaderCell } from '../BaseTable/BaseHeaderCell'; export interface HeaderCellProps { 'data-label'?: string; @@ -50,15 +51,24 @@ export const HeaderCell: React.FunctionComponent = ({ }; const Component = component as any; - const cell = ( - - {children} - - ); + const cell = + Component === 'th' ? ( + + {children} + + ) : ( + + {children} + + ); return tooltip !== '' ? ( diff --git a/packages/react-table/src/components/Table/RowWrapper.tsx b/packages/react-table/src/components/Table/RowWrapper.tsx index 7de60da948c..940456cebf2 100644 --- a/packages/react-table/src/components/Table/RowWrapper.tsx +++ b/packages/react-table/src/components/Table/RowWrapper.tsx @@ -4,6 +4,7 @@ import { debounce } from '@patternfly/react-core/dist/js/helpers/util'; import styles from '@patternfly/react-styles/css/components/Table/table'; import inlineStyles from '@patternfly/react-styles/css/components/InlineEdit/inline-edit'; import { css } from '@patternfly/react-styles'; +import { BaseTableBodyRow } from '../BaseTable/BaseTableBodyRow'; // legacy export now, RowWrapperRow can simply be typed as IRow in the future export interface RowWrapperRow { @@ -102,7 +103,7 @@ export class RowWrapper extends React.Component} className={css( diff --git a/packages/react-table/src/components/Table/Table.tsx b/packages/react-table/src/components/Table/Table.tsx index 2a96c9226db..3c4ae5894d5 100644 --- a/packages/react-table/src/components/Table/Table.tsx +++ b/packages/react-table/src/components/Table/Table.tsx @@ -1,7 +1,6 @@ import * as React from 'react'; import styles from '@patternfly/react-styles/css/components/Table/table'; -import stylesGrid from '@patternfly/react-styles/css/components/Table/table-grid'; -import { getOUIAProps, OUIAProps, getDefaultOUIAId } from '@patternfly/react-core'; +import { OUIAProps, getDefaultOUIAId } from '@patternfly/react-core'; import { DropdownDirection, DropdownPosition @@ -14,7 +13,6 @@ import { BodyCell } from './BodyCell'; import { HeaderCell } from './HeaderCell'; import { RowWrapper, RowWrapperProps } from './RowWrapper'; import { BodyWrapper } from './BodyWrapper'; -import { toCamel } from './utils'; import { calculateColumns } from './utils/headerUtils'; import { formatterValueType, ColumnType, RowType, RowKeyType, ColumnsType } from './base'; @@ -375,7 +373,6 @@ export class Table extends React.Component { caption, header, className, - gridBreakPoint, onSort, onSelect, canSelectAll, @@ -398,11 +395,7 @@ export class Table extends React.Component { cells, bodyWrapper, rowWrapper, - borders, role, - ouiaId, - ouiaSafe, - isStickyHeader, ...props } = this.props; @@ -457,18 +450,9 @@ export class Table extends React.Component { columns={headerData} role={role} className={css( - styles.table, - gridBreakPoint && - stylesGrid.modifiers[ - toCamel(gridBreakPoint).replace(/-?2xl/, '_2xl') as 'grid' | 'gridMd' | 'gridLg' | 'gridXl' | 'grid_2xl' - ], - styles.modifiers[variant], ((onCollapse && variant === TableVariant.compact) || onExpand) && styles.modifiers.expandable, - variant === TableVariant.compact && borders === false ? styles.modifiers.noBorderRows : null, - isStickyHeader && styles.modifiers.stickyHeader, className )} - {...getOUIAProps(Table.displayName, ouiaId !== undefined ? ouiaId : this.state.ouiaStateId, ouiaSafe)} > {caption && {caption}} {children} diff --git a/packages/react-table/src/components/Table/base/types.tsx b/packages/react-table/src/components/Table/base/types.tsx index b724c7e1352..fa7a84918bf 100644 --- a/packages/react-table/src/components/Table/base/types.tsx +++ b/packages/react-table/src/components/Table/base/types.tsx @@ -7,6 +7,13 @@ import * as React from 'react'; import { TooltipProps, PopoverProps } from '@patternfly/react-core'; +import { BaseTable } from '../../BaseTable/BaseTable'; +import { BaseTableHead } from '../../BaseTable/BaseTableHead'; +import { BaseTableHeaderRow } from '../../BaseTable/BaseTableHeaderRow'; +import { BaseTableBody } from '../../BaseTable/BaseTableBody'; +import { BaseTableBodyRow } from '../../BaseTable/BaseTableBodyRow'; +import { BaseHeaderCell } from '../../BaseTable/BaseHeaderCell'; +import { BaseBodyCell } from '../../BaseTable/BaseBodyCell'; // Cell Type export interface CellType { @@ -54,16 +61,16 @@ export interface RowType { // Table Defaults export const TableDefaults = { renderers: { - table: 'table', + table: BaseTable, header: { - wrapper: 'thead', - row: 'tr', - cell: 'th' + wrapper: BaseTableHead, + row: BaseTableHeaderRow, + cell: BaseHeaderCell }, body: { - wrapper: 'tbody', - row: 'tr', - cell: 'td' + wrapper: BaseTableBody, + row: BaseTableBodyRow, + cell: BaseBodyCell } } }; diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index 0b5ed9c6523..0c27550b103 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -54,13 +54,15 @@ validateCellEdits, applyCellEdits, EditableTextCell, EditableSelectInputCell, -LightTable, -LightTableCaption, -LightTableHead, -LightTableBody, -LightTableRow, -LightHeaderCell, -LightBodyCell +BaseTable, +BaseTableCaption, +BaseTableHead, +BaseTableBody, +BaseTableHeaderRow, +BaseTableBodyRow, +BaseHeaderCell, +BaseBodyCell, +HeaderCellInfoWrapper } from '@patternfly/react-table'; import { EmptyStateIcon } from '@patternfly/react-core'; @@ -77,96 +79,6 @@ import DemoSortableTable from './DemoSortableTable'; ## Examples -### Composable Table - -```js -import React from 'react'; -import { LightTable, LightTableCaption, LightTableHead, LightTableBody, LightTableRow, LightHeaderCell, LightBodyCell } from '@patternfly/react-table'; - -ComposableTable = () => { - const [columns, setColumns] = React.useState([ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]); - const [data, setData] = React.useState([ - ['Repository 1', 10, 25, 5, '2 days ago'], - ['Repository 2', 11, 26, 4, '4 days ago'], - ['Repository 3', 12, 27, 3, '3 days ago'], - ['Repository 4', 13, 28, 2, '5 days ago'] - ]); - const [sortedBy, setSortedBy] = React.useState(-1); - const [sortDirection, setSortDirection] = React.useState([ - 'none', - 'none', - 'none', - 'none', - 'none' - ]); - const onSort = (index) => { - // changes the active selected style - setSortedBy(index); - // changes the sort direction - const updatedSortDirection = sortDirection.map((dir, sortIndex) => { - if (sortIndex === index) { - if (dir === 'asc') { - return 'desc'; - } else if (dir === 'desc') { - return 'asc'; - } - return 'asc'; - } else { - return 'none'; - } - }); - setSortDirection(updatedSortDirection); - // sorts the row data - const updatedData = data.sort((a, b) => { - if (typeof a[index] === 'number') { - // numeric sort - if (updatedSortDirection[index] === 'asc') { - return a[index] - b[index]; - } - return b[index] - a[index]; - } else { - // string sort - if (updatedSortDirection[index] === 'asc') { - return a[index].localeCompare(b[index]); - } - return b[index].localeCompare(a[index]); - } - }); - debugger; - setData(updatedData); - }; - return ( - - This is the table caption - - - onSort(0)}>{columns[0]} - onSort(1)}>{columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - - {data.map((row, rowIndex) => ( - - {row.map((cell, cellIndex) => ( - {cell} - ))} - - ))} - - - ); -} -``` - ### Basic ```js @@ -212,7 +124,7 @@ class SimpleTable extends React.Component { }, 'Workspaces', { - title: 'Last Commit', + title: 'Last commit', transforms: [textCenter], cellTransforms: [textCenter] } @@ -368,6 +280,131 @@ class RowWrapperTable extends React.Component { } ``` +### Composable: Basic, Row click handler, Custom row wrapper + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; + +ComposableTableBasic = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'three', 'four', 'five'], + ['one - 2', null, null, 'four - 2', 'five - 2'], + ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3 (not centered)'] + ]); + // map additional configuration to the data + // key: row_column + const dataConfig = { + '1_0': { + title: text =>
{text}
, + props: { title: 'hover title', colSpan: 3 } + }, + '2_4': { + props: { textCenter: false } + } + }; + const onRowClick = (event, rowIndex, row) => { + console.log(`handle row click ${rowIndex}`, row); + }; + return ( + + + + + + {columns[0]} + + + + {columns[1]} + + + + More information on pull requests + + } + ariaLabel="More information on pull requests" + popoverProps={{ + headerContent: 'Pull requests', + footerContent: Click here for even more info + }} + > + {columns[2]} + + + + {columns[3]} + + + {columns[4]} + + + + + {data.map((row, rowIndex) => { + const isOddRow = (rowIndex + 1) % 2; + const customStyle = { + borderLeft: '3px solid var(--pf-global--primary-color--100)' + }; + return ( + onRowClick(event, rowIndex, row)} + className={isOddRow ? 'odd-row-class' : 'even-row-class'} + style={isOddRow ? customStyle : {}} + > + {row.map((cell, cellIndex) => { + if (!cell) { + return null; + } + const cellConfig = dataConfig[`${rowIndex}_${cellIndex}`]; + return ( + + {cellConfig && cellConfig.title ? cellConfig.title(cell) : cell} + + ); + })} + + ); + })} + + + ); +}; +``` + ### Sortable ```js @@ -383,9 +420,13 @@ class SortableTable extends React.Component { 'Branches', { title: 'Pull requests', transforms: [sortable] }, 'Workspaces', - 'Last Commit' + 'Last commit' + ], + rows: [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] ], - rows: [['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five']], sortBy: {} }; this.onSort = this.onSort.bind(this); @@ -447,7 +488,11 @@ class SortableWrappingHeaders extends React.Component { transforms: [sortable, wrappable] } ], - rows: [['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five']], + rows: [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ], sortBy: {} }; this.onSort = this.onSort.bind(this); @@ -483,6 +528,120 @@ class SortableWrappingHeaders extends React.Component { } ``` +### Composable: Sortable, Sortable with wrapping headers + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; + +ComposableTableSortable = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'This is a really long table header that goes on for a long time 4.', + 'This is a really long table header that goes on for a long time 5.' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]); + const [sortedBy, setSortedBy] = React.useState(-1); + const [sortDirection, setSortDirection] = React.useState(['none', 'none', 'none', 'none', 'none']); + const onSort = index => { + // changes the active selected style + setSortedBy(index); + // changes the sort direction + const updatedSortDirection = sortDirection.map((dir, sortIndex) => { + if (sortIndex === index) { + if (dir === 'asc') { + return 'desc'; + } else if (dir === 'desc') { + return 'asc'; + } + return 'asc'; + } else { + return 'none'; + } + }); + setSortDirection(updatedSortDirection); + // sorts the row data + const updatedData = data.sort((a, b) => { + if (typeof a[index] === 'number') { + // numeric sort + if (updatedSortDirection[index] === 'asc') { + return a[index] - b[index]; + } + return b[index] - a[index]; + } else { + // string sort + if (updatedSortDirection[index] === 'asc') { + return a[index].localeCompare(b[index]); + } + return b[index].localeCompare(a[index]); + } + }); + setData(updatedData); + }; + return ( + + + + onSort(0)} + > + {columns[0]} + + + {columns[1]} + + onSort(2)} + > + {columns[2]} + + {columns[3]} + + {columns[4]} + + + + + {data.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + ))} + + + ); +}; +``` + ### Selectable ```js @@ -509,7 +668,7 @@ class SelectableTable extends React.Component { 'Branches', { title: 'Pull requests' }, 'Workspaces', - 'Last Commit' + 'Last commit' ], rows: [ { @@ -517,7 +676,7 @@ class SelectableTable extends React.Component { }, { cells: ['a', 'two', 'k', 'four', 'five'], - disableSelection: true, + disableSelection: true }, { cells: ['p', 'two', 'b', 'four', 'five'] @@ -582,6 +741,7 @@ class SelectableTable extends React.Component { ``` ### Selectable radio input + ```js import React from 'react'; import { @@ -606,7 +766,7 @@ class SelectableTable extends React.Component { 'Branches', { title: 'Pull requests' }, 'Workspaces', - 'Last Commit' + 'Last commit' ], rows: [ { @@ -614,12 +774,12 @@ class SelectableTable extends React.Component { }, { cells: ['a', 'two', 'k', 'four', 'five'], - disableSelection: true, + disableSelection: true }, { cells: ['p', 'two', 'b', 'four', 'five'] } - ], + ] }; this.onSelect = this.onSelect.bind(this); this.toggleSelect = this.toggleSelect.bind(this); @@ -650,7 +810,8 @@ class SelectableTable extends React.Component { selectVariant={RowSelectVariant.radio} aria-label="Selectable Table" cells={columns} - rows={rows}> + rows={rows} + > @@ -674,7 +835,7 @@ class SimpleActionsTable extends React.Component { 'Branches', { title: 'Pull requests' }, 'Workspaces', - 'Last Commit' + 'Last commit' ], rows: [ { @@ -734,12 +895,12 @@ class ActionsTable extends React.Component { 'Branches', { title: 'Pull requests' }, 'Workspaces', - 'Last Commit' + 'Last commit' ], rows: [ { cells: ['one', 'two', 'a', 'four', 'five'], - type: 'green', + type: 'green' }, { cells: ['a', 'two', 'k', 'four', 'five'], @@ -805,8 +966,8 @@ class ActionsTable extends React.Component { rows={rows} actionResolver={this.actionResolver} areActionsDisabled={this.areActionsDisabled} - dropdownPosition='right' - dropdownDirection='up' + dropdownPosition="right" + dropdownDirection="up" > @@ -831,7 +992,7 @@ class CellHeader extends React.Component { 'Branches', { title: 'Pull requests' }, 'Workspaces', - 'Last Commit' + 'Last commit' ], rows: [['one', 'two', 'three', 'four', 'five']] }; @@ -866,7 +1027,11 @@ class CompactTable extends React.Component { { title: 'Pull requests', props: { className: 'pf-u-text-align-center' } }, '' // deliberately empty ], - rows: [['one', 'two', 'three', 'four'], ['one', 'two', 'three', 'four'], ['one', 'two', 'three', 'four']] + rows: [ + ['one', 'two', 'three', 'four'], + ['one', 'two', 'three', 'four'], + ['one', 'two', 'three', 'four'] + ] }; } @@ -899,7 +1064,11 @@ class CompactTableBorderlessRows extends React.Component { { title: 'Pull requests', props: { className: 'pf-u-text-align-center' } }, '' // deliberately empty ], - rows: [['one', 'two', 'three', 'four'], ['one', 'two', 'three', 'four'], ['one', 'two', 'three', 'four']] + rows: [ + ['one', 'two', 'three', 'four'], + ['one', 'two', 'three', 'four'], + ['one', 'two', 'three', 'four'] + ] }; } @@ -1022,7 +1191,7 @@ class CompactExpandableTable extends React.Component { colSpan: 2 } }, - "fullWidth, spans the empty column" + 'fullWidth, spans the empty column' ] } ] @@ -1062,6 +1231,7 @@ class CompactExpandableTable extends React.Component { ``` ### Expandable + ```js import React from 'react'; import { Table, TableHeader, TableBody, expandable } from '@patternfly/react-table'; @@ -1079,7 +1249,7 @@ class ExpandableTable extends React.Component { { title: 'Pull requests' }, 'Workspaces', { - title: 'Last Commit' + title: 'Last commit' } ], rows: [ @@ -1174,7 +1344,7 @@ class CompoundExpandableTable extends React.Component { title: 'Workspaces', cellTransforms: [compoundExpand] }, - 'Last Commit', + 'Last commit', '' ], rows: [ @@ -1369,14 +1539,10 @@ class CompoundExpandableTable extends React.Component { ``` ### With width modifiers + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - cellWidth -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, cellWidth } from '@patternfly/react-table'; class WidthTable extends React.Component { constructor(props) { @@ -1388,7 +1554,7 @@ class WidthTable extends React.Component { { title: 'Pull requests', transforms: [cellWidth(30)] }, 'Workspaces', { - title: 'Last Commit', + title: 'Last commit', transforms: [cellWidth('max')] } ], @@ -1410,16 +1576,10 @@ class WidthTable extends React.Component { ``` ### Breakpoint modifiers + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - sortable, - classNames, - Visibility -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, sortable, classNames, Visibility } from '@patternfly/react-table'; class HiddenVisibleBreakpointTable extends React.Component { constructor(props) { @@ -1428,7 +1588,9 @@ class HiddenVisibleBreakpointTable extends React.Component { columns: [ { title: 'Repositories', - columnTransforms: [classNames(Visibility.hidden, Visibility.visibleOnMd, Visibility.hiddenOnLg, Visibility.visibleOn_2xl)] + columnTransforms: [ + classNames(Visibility.hidden, Visibility.visibleOnMd, Visibility.hiddenOnLg, Visibility.visibleOn_2xl) + ] }, 'Branches', { @@ -1437,7 +1599,7 @@ class HiddenVisibleBreakpointTable extends React.Component { }, 'Workspaces', { - title: 'Last Commit', + title: 'Last commit', columnTransforms: [classNames(Visibility.hidden, Visibility.visibleOnSm)] } ], @@ -1594,7 +1756,7 @@ import { import SearchIcon from '@patternfly/react-icons/dist/js/icons/search-icon'; EmptyStateTable = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last Commit']; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; const rows = []; return ( diff --git a/packages/react-table/src/components/Table/examples/new.html b/packages/react-table/src/components/Table/examples/new.html new file mode 100644 index 00000000000..2fbcc3dbeef --- /dev/null +++ b/packages/react-table/src/components/Table/examples/new.html @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ Repositories +
+
Branches +
+ Pull requests +
+
WorkspacesLast commit
onetwothreefourfive
one - 2
four - 2five - 2
one - 3two - 3three - 3four - 3five - 3 (not centered)
diff --git a/packages/react-table/src/components/Table/examples/old.html b/packages/react-table/src/components/Table/examples/old.html new file mode 100644 index 00000000000..460b23d6dcb --- /dev/null +++ b/packages/react-table/src/components/Table/examples/old.html @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ Repositories +
+
Branches +
+ Pull requests +
+
WorkspacesLast commit
onetwothreefourfive
one - 2
four - 2five - 2
one - 3two - 3three - 3four - 3five - 3 (not centered)
diff --git a/packages/react-table/src/components/Table/examples/original.html b/packages/react-table/src/components/Table/examples/original.html new file mode 100644 index 00000000000..309af912e1f --- /dev/null +++ b/packages/react-table/src/components/Table/examples/original.html @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ Repositories +
+
Branches +
+ Pull requests +
+
+ Workspaces + + Last Commit +
onetwothreefourfive
+
one - 2
+
four - 2 + five - 2 +
one - 3two - 3three - 3four - 3 + five - 3 (not centered) +
diff --git a/packages/react-table/src/components/Table/index.ts b/packages/react-table/src/components/Table/index.ts index 3b115a1281e..b8842c472d6 100644 --- a/packages/react-table/src/components/Table/index.ts +++ b/packages/react-table/src/components/Table/index.ts @@ -9,6 +9,7 @@ export * from './EditableTextCell'; export * from './ExpandableRowContent'; export * from './Header'; export * from './HeaderCell'; +export * from './HeaderCellInfoWrapper'; export * from './RowWrapper'; export * from './SelectColumn'; export * from './SortColumn'; diff --git a/packages/react-table/src/components/index.ts b/packages/react-table/src/components/index.ts index ac14d412632..6089b1a01e7 100644 --- a/packages/react-table/src/components/index.ts +++ b/packages/react-table/src/components/index.ts @@ -1,2 +1,2 @@ export * from './Table'; -export * from './LightTable'; +export * from './BaseTable'; From ad16ec5f0580b3100241b13e0db302b12d5a200f Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Mon, 5 Oct 2020 23:40:19 -0400 Subject: [PATCH 05/29] wip --- .../src/components/BaseTable/BaseBodyCell.tsx | 121 +- .../components/BaseTable/BaseHeaderCell.tsx | 107 +- .../components/BaseTable/BaseTableBody.tsx | 8 +- .../__snapshots__/RowWrapper.test.tsx.snap | 63 +- .../Table/__snapshots__/Table.test.tsx.snap | 304829 ++++++++------- .../src/components/Table/examples/Table.md | 351 +- .../src/components/Table/examples/new.html | 90 - .../src/components/Table/examples/old.html | 93 - .../components/Table/examples/original.html | 103 - 9 files changed, 156902 insertions(+), 148863 deletions(-) delete mode 100644 packages/react-table/src/components/Table/examples/new.html delete mode 100644 packages/react-table/src/components/Table/examples/old.html delete mode 100644 packages/react-table/src/components/Table/examples/original.html diff --git a/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx b/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx index 4ef0a15754d..dfbabf8816e 100644 --- a/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx +++ b/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx @@ -1,8 +1,21 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; +import { + OnSelect, + selectable, + cellActions, + IAreActionsDisabled, + IActionsResolver, + IActions, + IFormatterValueType +} from '../Table'; +import { + DropdownDirection, + DropdownPosition +} from '@patternfly/react-core/dist/js/components/Dropdown/dropdownConstants'; -export interface BaseBodyCellProps extends React.HTMLProps { +export interface BaseBodyCellProps extends Omit, 'onSelect'> { /** Content rendered inside the body cell */ children?: React.ReactNode; /** Additional classes added to the body cell */ @@ -12,12 +25,32 @@ export interface BaseBodyCellProps extends React.HTMLProps; } @@ -26,26 +59,76 @@ const BaseBodyCellBase: React.FunctionComponent = ({ children, className, dataLabel, - dataKey, + columnIndex, + rowIndex, textCenter = false, modifier, + onSelect, + isSelected = false, + selectVariant = 'checkbox', + allRowsSelected, + disableSelection = false, + actions, + actionsDisabled, + actionsDropdownPosition, + actionsDropdownDirection, innerRef, ...props -}: BaseBodyCellProps) => ( - - {children} - -); +}: BaseBodyCellProps) => { + const selectParams = onSelect + ? selectable(children as IFormatterValueType, { + columnIndex, + rowIndex, + rowData: { + selected: isSelected, + disableSelection + }, + column: { + extraParams: { + onSelect: onSelect as OnSelect, + selectVariant: selectVariant as 'checkbox' | 'radio', + allRowsSelected + } + } + }) + : null; + const actionParamsFunc = actions ? cellActions(actions, null, null) : null; + const actionParams = actionParamsFunc + ? actionParamsFunc(null, { + rowIndex, + columnIndex, + rowData: { + disableActions: actionsDisabled + }, + column: { + extraParams: { + dropdownPosition: actionsDropdownPosition, + dropdownDirection: actionsDropdownDirection + } + } + }) + : null; + const Component: any = (selectParams && selectParams.component) || 'td'; + const transformedChildren = + (selectParams && selectParams.children) || (actionParams && actionParams.children) || children; + return ( + + {transformedChildren} + + ); +}; export const BaseBodyCell = React.forwardRef((props: BaseBodyCellProps, ref: React.Ref) => ( diff --git a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx index b1f18816792..59b26ef28d4 100644 --- a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx +++ b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx @@ -1,29 +1,42 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -import { SortByDirection, SortColumn } from '../Table'; +import { + SortByDirection, + sortable, + selectable, + OnSelect, + IFormatterValueType, + IColumn, + ISortBy, + OnSort +} from '../Table'; -export interface BaseHeaderCellProps extends React.HTMLProps { +export interface BaseHeaderCellProps extends Omit, 'onSelect'> { /** Content rendered inside the header cell */ children?: React.ReactNode; /** Additional classes added to the header cell */ className?: string; /** Modifies cell to center its contents. */ textCenter?: boolean; - /** Wraps the content in a button and adds a sort icon */ - sortable?: boolean; - /** Req. sortable={true} - Click callback on the sortable cell */ + /** Wraps the content in a button and adds a sort icon - Click callback on the sortable cell */ onSort?: Function; - /** Req. sortable={true} - Determines the sort icon direction */ - sortDirection?: SortByDirection | 'none'; - /** Gives the cell an active styling */ - active?: boolean; + /** Sort direction of the currently sorted column */ + activeSortDirection?: SortByDirection | 'asc' | 'desc' | 'none'; + /** Index of the currently sorted column */ + activeSortIndex?: number; /** Adds data-label attribute */ dataLabel?: string; - /** Cell key */ - dataKey?: number; + /** The column index */ + columnIndex?: number; /** Style modifier to apply */ modifier?: 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'; + /** Transforms the cell into a selectable cell - Click callback on select */ + onSelect?: OnSelect; + /** The selectable variant */ + selectVariant?: 'checkbox' | 'radio'; + /** Whether all rows are selected */ + allRowsSelected?: boolean; /** Forwarded ref */ innerRef?: React.Ref; } @@ -32,53 +45,65 @@ const BaseHeaderCellBase: React.FunctionComponent = ({ children, className, textCenter = false, - sortable = false, onSort, - sortDirection = 'none', - active, + activeSortDirection = 'none', + activeSortIndex, dataLabel, - dataKey, + columnIndex, modifier, + onSelect, + selectVariant = 'checkbox', + allRowsSelected, innerRef, ...props }: BaseHeaderCellProps) => { - const getAriaSort = () => { - if (sortDirection === 'asc') { - return 'ascending'; - } else if (sortDirection === 'desc') { - return 'descending'; - } else { - return 'none'; - } - }; + const sortParams = onSort + ? sortable(children as IFormatterValueType, { + columnIndex, + column: { + extraParams: { + sortBy: { + index: activeSortIndex, + direction: activeSortDirection + } as ISortBy, + onSort: onSort as OnSort + } + } as IColumn + }) + : null; + const selectParams = onSelect + ? selectable(children as IFormatterValueType, { + columnIndex, + column: { + extraParams: { + onSelect: onSelect as OnSelect, + selectVariant: selectVariant as 'checkbox' | 'radio', + allRowsSelected + } + } + }) + : null; + const Component: any = (sortParams && sortParams.component) || (selectParams && selectParams.component) || 'th'; + const transformedChildren = + (sortParams && sortParams.children) || (selectParams && selectParams.children) || children; return ( - - {sortable ? ( - - {children} - - ) : ( - children - )} - + {transformedChildren} + ); }; diff --git a/packages/react-table/src/components/BaseTable/BaseTableBody.tsx b/packages/react-table/src/components/BaseTable/BaseTableBody.tsx index 8b52398aedd..f7ced7ca81d 100644 --- a/packages/react-table/src/components/BaseTable/BaseTableBody.tsx +++ b/packages/react-table/src/components/BaseTable/BaseTableBody.tsx @@ -20,9 +20,7 @@ const BaseTableBodyBase: React.FunctionComponent = ({ ); -export const BaseTableBody = React.forwardRef( - (props: BaseTableBodyProps, ref: React.Ref) => ( - - ) -); +export const BaseTableBody = React.forwardRef((props: BaseTableBodyProps, ref: React.Ref) => ( + +)); BaseTableBody.displayName = 'BaseTableBody'; diff --git a/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap b/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap index f2c0c1cedec..9703ff1caca 100644 --- a/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap +++ b/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap @@ -37,13 +37,49 @@ exports[`RowWrapper renders correctly 1`] = ` } } > - + > + + @@ -61,13 +97,30 @@ exports[`RowWrapper renders expanded correctly 1`] = ` } rowProps={null} > - + > + + diff --git a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap index f7c100ba941..e10aebb929d 100644 --- a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap +++ b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap @@ -125,7 +125,8 @@ exports[`Actions table 1`] = ` > - - - +
-
- + -
- - - + - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - + - Some action - , - + one + + + -
- Another action -
- , - + two + +
+ , - + + + - Third action - , - ] - } - isOpen={false} - isPlain={true} - position="right" - toggle={ - - } - > - - Some action - , - + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + - Another action - , + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "isSeparator": true, - "onClick": null, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title": "Third action", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ] + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, } - rowData={ + } + rowIndex={1} + rowKey="1-row" + > + - + - Some action - , - + one + + + -
- Another action -
- , - , - + two + +
+ + + + - Third action - , - ] + + + + + + + + + + + + + + + + } + rowProps={ + Object { + "rowIndex": 2, + "rowKey": "2-row", } + } + > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - -
- - + + + + - Branches - - Pull requests - - Workspaces - - Last Commit - - -
+ Branches + + Pull requests + + Workspaces + + Last Commit + + +
-
- -`; - -exports[`Cell header table 1`] = ` - + + + , + } + } + > + + + , + } + } + > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +`; + +exports[`Cell header table 1`] = ` + -
- - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
- two - - three - - four - - five -
- two - - three - - four - - five -
- two -
+
+
+ + + + + + + + + + + +
+ + + `; @@ -19989,7 +20671,8 @@ exports[`Collapsible nested table 1`] = ` > - - - +
-
- + -
- - - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - -
- - - - - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
- two - - three - - four - - five -
- four -
- five -
+ + + + + + + + + + + +
+ + + `; @@ -29247,7 +30320,8 @@ exports[`Collapsible table 1`] = ` > - - - +
-
- + -
- - - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - -
- - - - - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
-
- one -
-
- two - - three - - four - - five -
- five -
+ + + + + + + + + + + + + + +
`; @@ -38382,7 +39856,8 @@ exports[`Compound Expandable table 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + + + + + + + + - expanded - - - - - - - - - - - - -
- col1 - - col2 -
+ col1 + + col2 +
+ + + + + + + + + + + + + + +
`; @@ -40883,7 +42558,8 @@ exports[`Control text table 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - -
- Header cell - - new object column - - Pull requests - - new object column - - Last Commit -
+ Header cell + + new object column + + Pull requests + + new object column + + Last Commit +
+ + + + + + + + + + + + + +
`; @@ -48444,7 +50509,8 @@ exports[`Editable table 1`] = ` className="pf-c-inline-edit" > - - - - -
- + + +
- Editable Table -
+ + + - - - - - - - - - - - - - - - - - - - - - - - - - - , - }, - "id": 0, - "isEditable": true, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell1", - "value": "Row 1 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell3", - "value": "Row 1 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", - }, - "title": , - }, - }, - Object { - "cells": Array [ - Object { - "props": Object { - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": [Function], - }, - ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": , - }, - "id": 1, - "isEditable": false, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": , - }, - }, - ] - } - onRow={[Function]} - rowKey="id" - rows={ - Array [ - Object { - "cells": Array [ - Object { - "props": Object { - "name": "uniqueIdRow1Cell1", - "value": "Row 1 cell 1 content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow1Cell2", - "value": "Row 1 cell 2, disabled content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow1Cell3", - "value": "Row 1 cell 3 content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": [Function], + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Text input col 3", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "text-input-col-3", + "props": Object { + "data-key": 2, + "data-label": "Text input col 3", + }, }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": [Function], + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Text input col 4", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "text-input-col-4", + "props": Object { + "data-key": 3, + "data-label": "Text input col 4", + }, }, - "title": [Function], - }, - ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell2", - "value": "Row 1 cell 2, disabled content", - }, - "title": , - }, - "id": 0, - "isEditable": true, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell1", - "value": "Row 1 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell3", - "value": "Row 1 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", - }, - "title": , - }, - }, - Object { - "cells": Array [ - Object { - "props": Object { - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": [Function], + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "column-4", + "props": Object { + "data-key": 4, + "data-label": "", + }, }, - "title": [Function], - }, + ] + } + headerRows={null} + renderers={ Object { - "props": Object { - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", + "body": Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", + "header": Object { + "cell": [Function], + "row": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHeaderRow", + "render": [Function], + }, + "wrapper": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHead", + "render": [Function], + }, }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", + "table": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTable", + "render": [Function], }, - "title": [Function], - }, - ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": , - }, - "id": 1, - "isEditable": false, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": , - }, - }, - ] - } - > - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + , - }, - "id": 0, - "isEditable": true, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell1", - "value": "Row 1 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell3", - "value": "Row 1 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", - }, - "title": , - }, - }, - Object { - "cells": Array [ - Object { - "props": Object { - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": [Function], - }, - ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": , - }, - "id": 1, - "isEditable": false, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": , - }, - }, - ] - } onRow={[Function]} - renderers={ - Object { - "body": Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - }, - "header": Object { - "cell": [Function], - "row": "tr", - "wrapper": "thead", - }, - "table": "table", - } - } + onRowClick={[Function]} rowKey="id" rows={ Array [ @@ -50609,112 +51732,20 @@ exports[`Editable table 1`] = ` }, Object { "props": Object { - "name": "uniqueIdRow1Cell3", - "value": "Row 1 cell 3 content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", - }, - "title": [Function], - }, - ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell2", - "value": "Row 1 cell 2, disabled content", - }, - "title": , - }, - "id": 0, - "isEditable": true, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell1", - "value": "Row 1 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell3", - "value": "Row 1 cell 3 content", + "name": "uniqueIdRow1Cell3", + "value": "Row 1 cell 3 content", + }, + "title": [Function], }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", + Object { + "props": Object { + "name": "uniqueIdRow1Cell4", + "value": "Row 1 cell 4 content", + }, + "title": [Function], }, - "title": , - }, + ], + "isEditable": true, }, Object { "cells": Array [ @@ -50747,104 +51778,12 @@ exports[`Editable table 1`] = ` "title": [Function], }, ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": , - }, - "id": 1, "isEditable": false, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": , - }, }, ] } > - - - , + }, + "id": 0, + "isEditable": true, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell1", + "value": "Row 1 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell3", + "value": "Row 1 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell4", + "value": "Row 1 cell 4 content", + }, + "title": , + }, + }, + Object { + "cells": Array [ + Object { + "props": Object { + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", }, - "property": "disabled-text-input-col-2", + "title": [Function], + }, + Object { + "props": Object { + "name": "uniqueIdRow2Cell2", + "value": "Row 2 cell 2, disabled content", + }, + "title": [Function], + }, + Object { + "props": Object { + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": [Function], + }, + Object { "props": Object { - "data-key": 1, - "data-label": "Disabled text input col 2", + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", }, + "title": [Function], + }, + ], + "disabled-text-input-col-2": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell2", + "value": "Row 2 cell 2, disabled content", + }, + "title": , + }, + "id": 1, + "isEditable": false, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", + }, + "title": , + }, + }, + ] + } + > + , }, - } - } - rowIndex={0} - rowKey="0-row" - > - , + } + rowIndex={1} + value="Row 2 cell 2, disabled content" + />, + }, + "id": 1, + "isEditable": false, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", }, - "id": 0, - "isEditable": true, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "text-input-col-1": Object { - "formatters": Array [], + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", + }, + "title": , + }, + }, + ] + } + onRow={[Function]} + renderers={ + Object { + "body": Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + }, + "header": Object { + "cell": [Function], + "row": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHeaderRow", + "render": [Function], + }, + "wrapper": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHead", + "render": [Function], + }, + }, + "table": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTable", + "render": [Function], + }, + } + } + rowKey="id" + rows={ + Array [ + Object { + "cells": Array [ + Object { "props": Object { - "isVisible": true, "name": "uniqueIdRow1Cell1", "value": "Row 1 cell 1 content", }, - "title": , + "title": [Function], }, - "text-input-col-3": Object { - "formatters": Array [], + Object { + "props": Object { + "name": "uniqueIdRow1Cell2", + "value": "Row 1 cell 2, disabled content", + }, + "title": [Function], + }, + Object { "props": Object { - "isVisible": true, "name": "uniqueIdRow1Cell3", "value": "Row 1 cell 3 content", }, - "title": , + "title": [Function], }, - "text-input-col-4": Object { - "formatters": Array [], + Object { "props": Object { - "isVisible": true, "name": "uniqueIdRow1Cell4", "value": "Row 1 cell 4 content", }, - "title": , - }, - } - } - rowProps={ - Object { - "rowIndex": 0, - "rowKey": "0-row", - } - } - > - - - - - - - - - - - - - - - - - - - - , }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": undefined, - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": [Function], - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Text input col 3", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "text-input-col-3", + "id": 0, + "isEditable": true, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "text-input-col-1": Object { + "formatters": Array [], "props": Object { - "data-key": 2, - "data-label": "Text input col 3", + "isVisible": true, + "name": "uniqueIdRow1Cell1", + "value": "Row 1 cell 1 content", }, + "title": , }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": undefined, - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": [Function], - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Text input col 4", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "text-input-col-4", + "text-input-col-3": Object { + "formatters": Array [], "props": Object { - "data-key": 3, - "data-label": "Text input col 4", + "isVisible": true, + "name": "uniqueIdRow1Cell3", + "value": "Row 1 cell 3 content", }, + "title": , }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": undefined, - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": [Function], - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "column-4", + "text-input-col-4": Object { + "formatters": Array [], "props": Object { - "data-key": 4, - "data-label": "", + "isVisible": true, + "name": "uniqueIdRow1Cell4", + "value": "Row 1 cell 4 content", }, + "title": , }, - ] - } - key="1-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ + }, Object { "cells": Array [ Object { @@ -52463,15 +53059,140 @@ exports[`Editable table 1`] = ` value="Row 2 cell 4 content" />, }, - } - } - rowIndex={1} - rowKey="1-row" - > - + , + }, + "id": 0, + "isEditable": true, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell1", + "value": "Row 1 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell3", + "value": "Row 1 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell4", + "value": "Row 1 cell 4 content", + }, + "title": , + }, + }, Object { "cells": Array [ Object { @@ -52596,518 +53317,2066 @@ exports[`Editable table 1`] = ` value="Row 2 cell 4 content" />, }, - } - } - rowProps={ - Object { - "rowIndex": 1, - "rowKey": "1-row", - } - } + }, + ] + } + > + - - - - - - + + + + + + + + + + + + + + + + + + + -
- Row 2 cell 2, disabled content -
-
- - - - - -
-
- - - - -
- - - - - - + + + + + + + + + - - - - - - - - - - -
+ Editable Table +
- Text input col 1 - - Disabled text input col 2 - - Text input col 3 - - Text input col 4 - - -
+ Text input col 1 + + Disabled text input col 2 + + Text input col 3 + + Text input col 4 + + + + +
, + }, + "id": 1, + "isEditable": false, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", + }, + "title": , + }, + } + } + rowIndex={1} + rowKey="1-row" > - , + }, + "id": 1, + "isEditable": false, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", + }, + "title": , + }, } } - rowIndex={1} - value="Row 2 cell 3 content" - > -
- Row 2 cell 3 content -
-
- - - - - -
-
- -
- -
- Row 2 cell 4 content -
-
- -
-
-
- - - - - - - -
-
+
+ + + + + +
+
+ +
- - - - - - - - -
-
+
+ + + + + +
+
+ +
+ +
+ Row 2 cell 3 content +
+
+ + + + + +
+
+ +
- - - - - - - -
+ +
+ Row 2 cell 4 content +
+
+ + + + + +
+
+ + + + + + +
+
+ + +
+
+ + +
+
+
+ + +
+
+ +
+ + + + + + + + + + + + + + + + @@ -53254,7 +55523,8 @@ exports[`Header width table 1`] = ` > - - - -
- -
- + + +
+ + +
+ -
- - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - -
- Header cell - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Header cell + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + + + + + + + + + + + + +
`; @@ -61248,7 +63907,8 @@ exports[`Row click table 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+
+
+
+
+ + + + + + + + + + + + + + +
`; @@ -69132,7 +72132,8 @@ exports[`Selectable table 1`] = ` > - - - +
-
- + -
- - - - - - + - + + - Header cell - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - -
- - - - - - + + + + + + + + - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Branches + + Pull requests + + Workspaces + + Last Commit +
- two - - three - - four - - five -
-
- one -
-
- two - - three -
- four -
- five -
+ + + + + + + + + + + + + + +
`; @@ -78056,7 +81447,8 @@ exports[`Selectable table with Radio 1`] = ` > - - - -
- + + +
+ + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - + + + + - - - - - - - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
-
- one -
-
- two - - three - - four -
-
- one -
-
- two - - three - - four - - five -
+ + + + + + + + + + + + + +
`; @@ -86966,7 +90765,8 @@ exports[`Simple Actions table 1`] = ` > - - - +
-
- - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, - }, - ] - } + + -
- + - - - - - - - - - - - - - - + - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, - }, - ] - } - headerRows={null} - onRow={[Function]} - onRowClick={[Function]} - rowKey="id" - rows={ - Array [ - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "disableActions": true, - }, - ] - } - > - - + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + rowIndex={0} + > + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, + onRow={[Function]} + rowKey="id" + rows={ + Array [ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, + "title": "one", + }, + "id": 0, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ] - } - key="0-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ - Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "id": 0, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "five", + "title": "one", + }, + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "three", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "four", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - } - } - rowIndex={0} - rowKey="0-row" - > - -
- - - - - - - - - - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, + "title": "one", + }, + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "disableActions": true, + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 9, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + ] + } + > + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], }, - ] - } - key="1-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, }, - "id": 1, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { + "header": Object { "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "five", + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "three", + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "four", + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], }, - } - } - rowIndex={1} - rowKey="1-row" - > - + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", }, - "title": "two", - }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", }, - "title": "one", - }, - "id": 1, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + Object { + "onClick": [Function], + "title":
+ Another action +
, }, - "title": "five", - }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + Object { + "isSeparator": true, + "onClick": null, }, - "title": "three", - }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + Object { + "onClick": [Function], + "title": "Third action", }, - "title": "four", - }, - } - } - rowProps={ - Object { - "rowIndex": 1, - "rowKey": "1-row", - } - } - > -
- - - - - - - - - - - - - - - - - - - - - - + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + headerRows={null} + mappedRows={ + Array [ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "title": "one", + }, + "id": 0, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "header-cell", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], "props": Object { - "data-key": 0, - "data-label": "Header cell", + "isVisible": true, }, + "title": "three", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "branches", + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], "props": Object { - "data-key": 1, - "data-label": "Branches", + "isVisible": true, }, + "title": "five", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "pull-requests", + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], "props": Object { - "data-key": 2, - "data-label": "Pull requests", + "isVisible": true, }, + "title": "one", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "workspaces", + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], "props": Object { - "data-key": 3, - "data-label": "Workspaces", + "isVisible": true, }, + "title": "two", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "last-commit", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], "props": Object { - "data-key": 4, - "data-label": "Last Commit", + "isVisible": true, }, + "title": "four", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "title": "one", + }, + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "column-5", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], "props": Object { - "data-key": 5, - "data-label": "", + "isVisible": true, }, + "title": "four", }, - ] - } - key="2-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ + }, Object { "branches": Object { "formatters": Array [], @@ -94227,7 +94479,7 @@ exports[`Simple Actions table 1`] = ` }, "title": "one", }, - "id": 2, + "id": 5, "isExpanded": undefined, "isFirst": false, "isFirstVisible": false, @@ -94255,948 +94507,245 @@ exports[`Simple Actions table 1`] = ` }, "title": "four", }, - } - } - rowIndex={2} - rowKey="2-row" - > - -
- - - - - - - - - - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", + }, + Object { + "branches": Object { + "formatters": Array [], "props": Object { - "data-key": 0, - "data-label": "Header cell", + "isVisible": true, }, + "title": "two", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], "props": Object { - "data-key": 1, - "data-label": "Branches", + "isVisible": true, }, + "title": "one", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "pull-requests", + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], "props": Object { - "data-key": 2, - "data-label": "Pull requests", + "isVisible": true, }, + "title": "two", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "one", + }, + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "workspaces", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], "props": Object { - "data-key": 3, - "data-label": "Workspaces", + "isVisible": true, }, + "title": "four", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], + "title": "one", + }, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "last-commit", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], "props": Object { - "data-key": 4, - "data-label": "Last Commit", + "isVisible": true, }, + "title": "three", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "disableActions": true, + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 9, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "column-5", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], "props": Object { - "data-key": 5, - "data-label": "", + "isVisible": true, }, + "title": "three", }, - ] - } - key="3-row" - onRow={[Function]} - renderers={ - Object { + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + ] + } + onRow={[Function]} + renderers={ + Object { + "body": Object { "cell": [Function], "row": [Function], "wrapper": [Function], - } + }, + "header": Object { + "cell": [Function], + "row": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHeaderRow", + "render": [Function], + }, + "wrapper": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHead", + "render": [Function], + }, + }, + "table": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTable", + "render": [Function], + }, } - rowData={ + } + rowKey="id" + rows={ + Array [ Object { "branches": Object { "formatters": Array [], @@ -95219,10 +94768,10 @@ exports[`Simple Actions table 1`] = ` }, "title": "one", }, - "id": 3, + "id": 0, "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, + "isFirst": true, + "isFirstVisible": true, "isHeightAuto": false, "isLast": false, "isLastVisible": false, @@ -95247,948 +94796,313 @@ exports[`Simple Actions table 1`] = ` }, "title": "four", }, - } - } - rowIndex={3} - rowKey="3-row" - > - -
- - - - - - - - - - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "header-cell", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], "props": Object { - "data-key": 0, - "data-label": "Header cell", + "isVisible": true, }, + "title": "four", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "branches", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], "props": Object { - "data-key": 1, - "data-label": "Branches", + "isVisible": true, }, + "title": "three", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "pull-requests", + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], "props": Object { - "data-key": 2, - "data-label": "Pull requests", + "isVisible": true, }, + "title": "five", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "workspaces", + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], "props": Object { - "data-key": 3, - "data-label": "Workspaces", + "isVisible": true, }, + "title": "one", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "last-commit", + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], "props": Object { - "data-key": 4, - "data-label": "Last Commit", + "isVisible": true, }, + "title": "two", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "one", + }, + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "column-5", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], "props": Object { - "data-key": 5, - "data-label": "", + "isVisible": true, }, + "title": "four", }, - ] - } - key="4-row" - onRow={[Function]} - renderers={ + }, Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, Object { "branches": Object { "formatters": Array [], @@ -96211,7 +95125,7 @@ exports[`Simple Actions table 1`] = ` }, "title": "one", }, - "id": 4, + "id": 7, "isExpanded": undefined, "isFirst": false, "isFirstVisible": false, @@ -96239,948 +95153,58 @@ exports[`Simple Actions table 1`] = ` }, "title": "four", }, - } - } - rowIndex={4} - rowKey="4-row" - > - -
- - - - - - - - - - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", + }, + Object { + "branches": Object { + "formatters": Array [], "props": Object { - "data-key": 2, - "data-label": "Pull requests", + "isVisible": true, }, + "title": "two", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], "props": Object { - "data-key": 3, - "data-label": "Workspaces", + "isVisible": true, }, + "title": "one", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], "props": Object { - "data-key": 4, - "data-label": "Last Commit", + "isVisible": true, }, + "title": "five", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "column-5", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], "props": Object { - "data-key": 5, - "data-label": "", + "isVisible": true, }, + "title": "four", }, - ] - } - key="5-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ + }, Object { "branches": Object { "formatters": Array [], @@ -97196,6 +95220,7 @@ exports[`Simple Actions table 1`] = ` "four", "five", ], + "disableActions": true, "header-cell": Object { "formatters": Array [], "props": Object { @@ -97203,13 +95228,13 @@ exports[`Simple Actions table 1`] = ` }, "title": "one", }, - "id": 5, + "id": 9, "isExpanded": undefined, "isFirst": false, "isFirstVisible": false, "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, + "isLast": true, + "isLastVisible": true, "last-commit": Object { "formatters": Array [], "props": Object { @@ -97231,15 +95256,15 @@ exports[`Simple Actions table 1`] = ` }, "title": "four", }, - } - } - rowIndex={5} - rowKey="5-row" - > - + -
- - - - - - - - - - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "header": Object { + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, }, Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", }, - "header": Object { + "workspaces": Object { "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", + "props": Object { + "isVisible": true, + }, + "title": "four", }, }, Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "header": Object { + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, }, Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "header": Object { + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, }, Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "header": Object { + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, }, Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "header": Object { + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", }, - }, - ] - } - key="6-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ - Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, - "title": "two", }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "title": "one", - }, - "id": 6, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "title": "five", - }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "title": "three", - }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, - "title": "four", }, - } - } - rowIndex={6} - rowKey="6-row" - > - + -
- - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - Another action - , + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, }, - Object { - "isSeparator": true, - "onClick": null, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], }, - Object { - "onClick": [Function], - "title": "Third action", + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", }, - ] + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="1-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], } - rowData={ + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={1} + rowKey="1-row" + > + -
+ - Some action - , - + one + + + -
- Another action -
- , - + two + +
+ , - + + + + + + + + + - Third action - , - ] + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="2-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={2} + rowKey="2-row" + > + + } + rowProps={ + Object { + "rowIndex": 2, + "rowKey": "2-row", } + } + > +
+ + + + + + + - - - , - } - } + - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, - }, - ] - } - key="7-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ - Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", - }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", - }, - "id": 7, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "five", - }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "three", - }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "four", - }, - } - } - rowIndex={7} - rowKey="7-row" - > - -
- - - - - - - - - - - - - - - - - + + + + + + + - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], }, - "columnIndex": 5, "property": "column-5", - "rowIndex": 7, - } + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="3-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], } - items={ - Array [ - Object { - "onClick": [Function], - "title": "Some action", + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "isSeparator": true, - "onClick": null, + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title": "Third action", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ] + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, } - rowData={ + } + rowIndex={3} + rowKey="3-row" + > + - - Some action - , - -
- Another action -
-
, - , - - Third action - , - ] - } - isOpen={false} - isPlain={true} - position="right" - toggle={ - + rowProps={ + Object { + "rowIndex": 3, + "rowKey": "3-row", } + } + > +
+ + + + + + + - - - , - } - } + - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ +
+ + +
, + } + } + > + + + , + } + } + > + + + + + + + + + + + + + +
+ + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="4-row" + onRow={[Function]} + renderers={ Object { - "onClick": [Function], - "title": "Some action", - }, + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ Object { - "onClick": [Function], - "title":
- Another action -
, - }, + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={4} + rowKey="4-row" + > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="5-row" + onRow={[Function]} + renderers={ Object { - "isSeparator": true, - "onClick": null, - }, + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, - }, - ] - } - key="8-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ - Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", - }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", - }, - "id": 8, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "five", - }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "three", - }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "four", - }, - } - } - rowIndex={8} - rowKey="8-row" - > - -
- - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - Another action - , + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, }, - Object { - "isSeparator": true, - "onClick": null, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], }, - Object { - "onClick": [Function], - "title": "Third action", + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", }, - ] + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="6-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], } - rowData={ + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={6} + rowKey="6-row" + > + - - Some action - , - -
- Another action -
-
, - , - - Third action - , - ] - } - isOpen={false} - isPlain={true} - position="right" - toggle={ - + rowProps={ + Object { + "rowIndex": 6, + "rowKey": "6-row", } + } + > +
- - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, + one + + + +
+ + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="7-row" + onRow={[Function]} + renderers={ Object { - "isSeparator": true, - "onClick": null, - }, + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, - }, - ] - } - key="9-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ - Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", - }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "disableActions": true, - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", - }, - "id": 9, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "five", - }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "three", - }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "four", - }, - } - } - rowIndex={9} - rowKey="9-row" - > - -
- - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], }, - "columnIndex": 5, "property": "column-5", - "rowIndex": 9, - } + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="8-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], } - isDisabled={true} - items={ - Array [ - Object { - "onClick": [Function], - "title": "Some action", + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "isSeparator": true, - "onClick": null, + "title": "one", + }, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title": "Third action", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ] + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, } - rowData={ + } + rowIndex={8} + rowKey="8-row" + > + -
+ - Some action - , - + one + + + -
- Another action -
- , - + two + +
+ , - + + + + + + + + + - Third action - , - ] + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="9-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "disableActions": true, + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 9, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={9} + rowKey="9-row" + > + + } + rowProps={ + Object { + "rowIndex": 9, + "rowKey": "9-row", } + } + > +
+ + + + + + + - - - , - } - } + data-key={4} + data-label="Last Commit" + onMouseEnter={[Function]} > - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit - - -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit + + +
- - - - - - - -
+ two + + three + + four + + five + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + "columnIndex": 5, + "property": "column-5", + "rowIndex": 6, + } + } + items={ + Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ] + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + > + + Some action + , + +
+ Another action +
+
, + , + + Third action + , + ] + } + isOpen={false} + isPlain={true} + position="right" + toggle={ + + } + > + + Some action + , + +
+ Another action +
+
, + , + + Third action + , + ] + } + isGrouped={false} + isOpen={false} + isPlain={true} + menuAppendTo="inline" + onSelect={[Function]} + position="right" + toggle={ + + } + > +
+ + +
, + } + } + > + + + , + } + } + > + + +
+ +
+
+
+
+
+ + +
, + } + } + > + + +
, + } + } + > + + + + + + + + + + + + + + + + + + + + + + + + +
`; @@ -101827,199 +105986,68 @@ exports[`Simple table aria-label 1`] = ` Object { "cells": Array [ "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - ] - } - selectVariant="checkbox" - variant={null} -> - + - - - -
- -
- + + +
+ + +
+ -
- - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- Header cell - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Header cell + + Branches + + Pull requests + + Workspaces + + Last Commit +
+
+
+
+
+
+
+ + + + + + + + + + + + + + +
`; @@ -109683,7 +114182,8 @@ exports[`Simple table caption 1`] = ` variant={null} > - - - - -
- + + +
- Simple Table -
+ + + - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
+ Simple Table +
- Header cell - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Header cell + + Branches + + Pull requests + + Workspaces + + Last Commit +
+
+
+
+
+ + + + + + + + + + + + + + +
`; @@ -117430,201 +122267,70 @@ exports[`Simple table header 1`] = ` Object { "cells": Array [ "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - ] - } - selectVariant="checkbox" - variant={null} -> -

- Header title -

- +

+ Header title +

+ - - - -
- -
- + + +
+ + +
+ -
- - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- Header cell - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Header cell + + Branches + + Pull requests + + Workspaces + + Last Commit +
+
+
+
+
+
+
+ + + + + + + + + + + + + + +
`; @@ -125293,7 +130468,8 @@ exports[`Sortable table 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+
+
+
+
+
+
+ + + + + + + + + + + + + + +
`; @@ -133163,7 +138679,8 @@ exports[`Table variants Breakpoint - 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+
+
+
+
+ + + + + + + + + + + + + + +
`; @@ -141032,7 +146889,8 @@ exports[`Table variants Breakpoint - grid 1`] = ` > - - - +
-
- + -
- - - + - + + + + + + + + + + + + + + + + + + - Header cell - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - + + + + + Branches + + Pull requests + + Workspaces + - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Last Commit +
+
+
+
+
+
+
+ + + + + + + + + + + + + + +
`; @@ -148901,7 +155099,8 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+
+
+
+
+ + + + + + + + + + + + + + +
`; @@ -156770,7 +163309,8 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` > - - - +
-
- + -
- - - + - + + + + + + + + + + + + + + + + + + - Header cell - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - + + + + + Branches + + Pull requests + + Workspaces + - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Last Commit +
+
+
+
+
+
+
+ + + + + + + + + + + + + + +
`; @@ -164639,7 +171519,8 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+
+
+
+
+ + + + + + + + + + + + + + +
`; @@ -172508,7 +179729,8 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` > - - - +
-
- + -
- - - + - + + + + + + + + + + + + + + + + + + - Header cell - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - + + + + + Branches + + Pull requests + + Workspaces + - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Last Commit +
+
+
+
+
+
+
+ + + + + + + + + + + + + + +
`; @@ -180377,7 +187939,8 @@ exports[`Table variants Size - compact 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+
+
+
+
+ + + + + + + + + + + + + + +
`; diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index 0c27550b103..b466985cdf8 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -326,7 +326,7 @@ ComposableTableBasic = () => { - + { {columns[0]} - + {columns[1]} - + { {columns[2]} - + {columns[3]} - + {columns[4]} @@ -387,7 +387,7 @@ ComposableTableBasic = () => { return ( { ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five'] ]); - const [sortedBy, setSortedBy] = React.useState(-1); - const [sortDirection, setSortDirection] = React.useState(['none', 'none', 'none', 'none', 'none']); - const onSort = index => { - // changes the active selected style - setSortedBy(index); - // changes the sort direction - const updatedSortDirection = sortDirection.map((dir, sortIndex) => { - if (sortIndex === index) { - if (dir === 'asc') { - return 'desc'; - } else if (dir === 'desc') { - return 'asc'; - } - return 'asc'; - } else { - return 'none'; - } - }); - setSortDirection(updatedSortDirection); + // index of the currently active column + const [activeSortIndex, setActiveSortIndex] = React.useState(-1); + // sort direction of the currently active column + const [activeSortDirection, setActiveSortDirection] = React.useState('none'); + const onSort = (event, index, direction, extraData) => { + setActiveSortIndex(index); + setActiveSortDirection(direction); // sorts the row data const updatedData = data.sort((a, b) => { if (typeof a[index] === 'number') { // numeric sort - if (updatedSortDirection[index] === 'asc') { + if (direction === 'asc') { return a[index] - b[index]; } return b[index] - a[index]; } else { // string sort - if (updatedSortDirection[index] === 'asc') { + if (direction === 'asc') { return a[index].localeCompare(b[index]); } return b[index].localeCompare(a[index]); @@ -598,30 +586,32 @@ ComposableTableSortable = () => { onSort(0)} + columnIndex={0} + activeSortIndex={activeSortIndex} + activeSortDirection={activeSortDirection} + onSort={onSort} > {columns[0]} + {columns[1]} - {columns[1]} + {columns[2]} + + + {columns[3]} onSort(2)} + columnIndex={4} + modifier="wrap" + activeSortIndex={activeSortIndex} + activeSortDirection={activeSortDirection} + onSort={onSort} > - {columns[2]} - - {columns[3]} - {columns[4]} @@ -630,7 +620,7 @@ ComposableTableSortable = () => { {data.map((row, rowIndex) => ( {row.map((cell, cellIndex) => ( - + {cell} ))} @@ -740,6 +730,101 @@ class SelectableTable extends React.Component { } ``` +### Composable: Selectable + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; + +ComposableTableSelectable = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]); + const [allRowsSelected, setAllRowsSelected] = React.useState(false); + const [selected, setSelected] = React.useState(data.map(row => false)); + const onSelect = (event, isSelected, rowId, rowData, extraData) => { + setSelected(selected.map((sel, index) => (index === rowId ? isSelected : sel))); + if (!isSelected && allRowsSelected) { + setAllRowsSelected(false); + } else if (isSelected && !allRowsSelected) { + let allSelected = true; + for (let i = 0; i < selected.length; i++) { + if (i !== rowId) { + if (!selected[i]) { + allSelected = false; + } + } + } + if (allSelected) { + setAllRowsSelected(true); + } + } + }; + const onSelectAll = (event, isSelected, rowId, rowData, extraData) => { + setAllRowsSelected(isSelected); + setSelected(selected.map(sel => isSelected)); + }; + return ( + + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + {data.map((row, rowIndex) => ( + + + {row.map((cell, cellIndex) => { + const shiftedIndex = cellIndex + 1; + return ( + + {cell} + + ); + })} + + ))} + + + ); +}; +``` + ### Selectable radio input ```js @@ -820,6 +905,82 @@ class SelectableTable extends React.Component { } ``` +### Composable: Selectable radio input + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; + +ComposableTableSelectableRadio = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]); + const [selected, setSelected] = React.useState(-1); + const onSelect = (event, isSelected, rowId, rowData, extraData) => { + setSelected(rowId); + }; + return ( + + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + {data.map((row, rowIndex) => ( + + + {row.map((cell, cellIndex) => { + const shiftedIndex = cellIndex + 1; + return ( + + {cell} + + ); + })} + + ))} + + + ); +}; +``` + ### Simple actions ```js @@ -977,6 +1138,108 @@ class ActionsTable extends React.Component { } ``` +### Composable: Actions + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; + +ComposableTableActions = () => { + const defaultActions = [ + { + title: 'Some action', + onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) + }, + { + title: Link action + }, + { + isSeparator: true + }, + { + title: 'Third action', + onClick: (event, rowId, rowData, extra) => console.log('clicked on Third action, on row: ', rowId) + } + ]; + const lastRowActions = [ + { + title: 'Some action', + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Some action, on row ${rowId}`) + }, + { + title:
Another action
, + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Another action, on row ${rowId}`) + }, + { + isSeparator: true + }, + { + title: 'Third action', + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Third action, on row ${rowId}`) + } + ]; + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'], + ['4', '2', 'b', 'four', 'five'], + ['5', '2', 'b', 'four', 'five'] + ]); + const [selected, setSelected] = React.useState(-1); + const onSelect = (event, isSelected, rowId, rowData, extraData) => { + setSelected(rowId); + }; + return ( + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + + {data.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + + ))} + + + ); +}; +``` + ### First cell as header ```js diff --git a/packages/react-table/src/components/Table/examples/new.html b/packages/react-table/src/components/Table/examples/new.html deleted file mode 100644 index 2fbcc3dbeef..00000000000 --- a/packages/react-table/src/components/Table/examples/new.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- Repositories -
-
Branches -
- Pull requests -
-
WorkspacesLast commit
onetwothreefourfive
one - 2
four - 2five - 2
one - 3two - 3three - 3four - 3five - 3 (not centered)
diff --git a/packages/react-table/src/components/Table/examples/old.html b/packages/react-table/src/components/Table/examples/old.html deleted file mode 100644 index 460b23d6dcb..00000000000 --- a/packages/react-table/src/components/Table/examples/old.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- Repositories -
-
Branches -
- Pull requests -
-
WorkspacesLast commit
onetwothreefourfive
one - 2
four - 2five - 2
one - 3two - 3three - 3four - 3five - 3 (not centered)
diff --git a/packages/react-table/src/components/Table/examples/original.html b/packages/react-table/src/components/Table/examples/original.html deleted file mode 100644 index 309af912e1f..00000000000 --- a/packages/react-table/src/components/Table/examples/original.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- Repositories -
-
Branches -
- Pull requests -
-
- Workspaces - - Last Commit -
onetwothreefourfive
-
one - 2
-
four - 2 - five - 2 -
one - 3two - 3three - 3four - 3 - five - 3 (not centered) -
From 3938fb0690f3054ab3af9e1e76d142f646e50b1e Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Mon, 5 Oct 2020 23:49:47 -0400 Subject: [PATCH 06/29] cleanup --- packages/react-core/package.json | 1 - .../SkipToContent/SkipToContent.tsx | 10 +- packages/react-docs/os-config.js | 101 ----- .../components/BaseTable/BaseHeaderCell.tsx | 5 +- .../src/components/Table/HeaderCell.tsx | 29 +- .../Table/__snapshots__/Table.test.tsx.snap | 371 ++++++++++++++++-- yarn.lock | 20 +- 7 files changed, 365 insertions(+), 172 deletions(-) delete mode 100644 packages/react-docs/os-config.js diff --git a/packages/react-core/package.json b/packages/react-core/package.json index bdde1e11e40..c5a91da0851 100644 --- a/packages/react-core/package.json +++ b/packages/react-core/package.json @@ -40,7 +40,6 @@ "@patternfly/react-tokens": "^4.9.11", "focus-trap": "4.0.2", "react-dropzone": "9.0.0", - "react-router-hash-link": "^2.1.0", "tippy.js": "5.1.2", "tslib": "^1.11.1" }, diff --git a/packages/react-core/src/components/SkipToContent/SkipToContent.tsx b/packages/react-core/src/components/SkipToContent/SkipToContent.tsx index 374bf042982..fc65503ad54 100644 --- a/packages/react-core/src/components/SkipToContent/SkipToContent.tsx +++ b/packages/react-core/src/components/SkipToContent/SkipToContent.tsx @@ -6,7 +6,7 @@ import { PickOptional } from '../../helpers/typeUtils'; export interface SkipToContentProps extends React.HTMLProps { /** The skip to content link. */ - href?: string; + href: string; /** Content to display within the skip to content component, typically a string. */ children?: React.ReactNode; /** Additional styles to apply to the skip to content component. */ @@ -31,7 +31,7 @@ export class SkipToContent extends React.Component { render() { // eslint-disable-next-line @typescript-eslint/no-unused-vars const { children, className, href, show, type, ...rest } = this.props; - const renderDefaultLink = (): React.ReactNode => ( + return ( { {children} ); - const renderClonedChild = (child: React.ReactElement): React.ReactNode => - React.cloneElement(child, { - className: css(buttonStyles.button, buttonStyles.modifiers.primary, styles.skipToContent, className), - ref: this.componentRef - }); - return React.isValidElement(children) ? renderClonedChild(children as React.ReactElement) : renderDefaultLink(); } } diff --git a/packages/react-docs/os-config.js b/packages/react-docs/os-config.js deleted file mode 100644 index 0aa8198c05f..00000000000 --- a/packages/react-docs/os-config.js +++ /dev/null @@ -1,101 +0,0 @@ -function delay(time) { - return new Promise(function (resolve) { - setTimeout(resolve, time); - }); -} - -async function loginOpenshift({ page, data }) { - const user = "kubeadmin"; - const pass = "ucuUZ-corPs-IJJ5X-viMTB"; - const url = data.prefix; - console.log(`nav to ${url}`); - await page.goto(`${url}`, { waitUntil: "load" }); - if (page.url().indexOf("oauth-openshift") > -1) { - console.log("have to auth first"); - await page.waitForSelector("#inputUsername"); - await page.type("#inputUsername", user); - await page.type("#inputPassword", pass); - await page.click("button.pf-c-button"); - await page.waitForNavigation(); - await delay(1000); - console.log("finished auth"); - } -} - -async function waitForOs(page) { - // there should be no loading spinner - await page.waitForSelector(".co-m-loader", { - hidden: true, - }); - - // there should be no skeleton text - await page.waitForSelector("[class*='skeleton']", { - hidden: true, - timeout: 60000, - }); - - // content should have something in it - await page.waitForSelector("#content-scrollable > *"); - - // if that content has a loading spinner wait for it as well - await page.waitForSelector(".co-m-loader", { - hidden: true, - }); -} - -module.exports = { - prefix: "https://console-openshift-console.apps.ocp4.patternfly.org", - auth: loginOpenshift, - waitFor: waitForOs, - crawl: false, - urls: [ - "/dashboards", - { - url: "/k8s/cluster/projects", - afterNav: async (page) => { - await page.waitForSelector(".co-m-resource-project"); - }, - }, - "/k8s/cluster/projects/default", - "/search/ns/default", - "/api-explorer", - "/api-resource/cluster/core~v1~Namespace", - "/api-resource/cluster/core~v1~Namespace/schema", - "/api-resource/cluster/core~v1~Namespace/instances", - "/api-resource/cluster/core~v1~Namespace/access", - "/k8s/ns/default/events", - "/operatorhub/ns/default", - "/operatorhub/ns/default?details-item=3scale-community-operator-community-operators-openshift-marketplace", - "/k8s/ns/default/operators.coreos.com~v1alpha1~ClusterServiceVersion", - "/k8s/ns/default/pods", - "/k8s/ns/default/pods/~new", - "/k8s/ns/default/deployments", - "/k8s/ns/default/deployments/~new", - "/k8s/ns/default/deploymentconfigs", - "/k8s/ns/default/deploymentconfigs/~new", - "/k8s/ns/default/statefulsets", - "/k8s/ns/default/statefulsets/~new", - "/k8s/ns/default/secrets", - "/k8s/ns/default/secrets/builder-token-pdzbp", - "/k8s/ns/default/secrets/builder-token-pdzbp/yaml", - "/k8s/ns/default/configmaps", - "/k8s/ns/default/configmaps/nginx-1-ca", - "/k8s/ns/default/configmaps/nginx-1-ca/yaml", - "/k8s/ns/default/cronjobs", - "/k8s/ns/default/cronjobs/~new", - "/k8s/ns/default/jobs", - "/k8s/ns/default/jobs/~new", - "/k8s/ns/default/daemonsets", - "/k8s/ns/default/daemonsets/~new", - "/k8s/ns/default/replicasets", - "/k8s/ns/default/replicasets/~new", - "/k8s/ns/default/replicationcontrollers", - "/k8s/ns/default/replicationcontrollers/~new", - "/k8s/ns/default/horizontalpodautoscalers", - "/k8s/ns/default/horizontalpodautoscalers/~new", - "/k8s/ns/default/services", - "/k8s/ns/default/services/kubernetes", - "/k8s/ns/default/services/kubernetes/yaml", - "/k8s/ns/default/services/kubernetes/pods", - ], -}; diff --git a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx index 59b26ef28d4..4b8693e76a2 100644 --- a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx +++ b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx @@ -17,6 +17,8 @@ export interface BaseHeaderCellProps extends Omit header cell */ className?: string; + /** Element to render */ + component?: React.ReactNode; /** Modifies cell to center its contents. */ textCenter?: boolean; /** Wraps the content in a button and adds a sort icon - Click callback on the sortable cell */ @@ -44,6 +46,7 @@ export interface BaseHeaderCellProps extends Omit = ({ children, className, + component = 'th', textCenter = false, onSort, activeSortDirection = 'none', @@ -83,7 +86,7 @@ const BaseHeaderCellBase: React.FunctionComponent = ({ } }) : null; - const Component: any = (sortParams && sortParams.component) || (selectParams && selectParams.component) || 'th'; + const Component: any = (sortParams && sortParams.component) || (selectParams && selectParams.component) || component; const transformedChildren = (sortParams && sortParams.children) || (selectParams && selectParams.children) || children; return ( diff --git a/packages/react-table/src/components/Table/HeaderCell.tsx b/packages/react-table/src/components/Table/HeaderCell.tsx index 7195cdf1495..a480a59bc1f 100644 --- a/packages/react-table/src/components/Table/HeaderCell.tsx +++ b/packages/react-table/src/components/Table/HeaderCell.tsx @@ -50,25 +50,16 @@ export const HeaderCell: React.FunctionComponent = ({ onMouseEnterProp(event); }; - const Component = component as any; - const cell = - Component === 'th' ? ( - - {children} - - ) : ( - - {children} - - ); + const cell = ( + + {children} + + ); return tooltip !== '' ? ( diff --git a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap index e10aebb929d..25c9b998a87 100644 --- a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap +++ b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap @@ -1068,6 +1068,7 @@ exports[`Actions table 1`] = ` - + > + + + + @@ -13197,6 +13226,7 @@ exports[`Cell header table 1`] = ` - + > + + + + - + > + + + + - - - - - + + + + + + + + - + > + + + + @@ -106843,6 +107054,7 @@ exports[`Simple table aria-label 1`] = ` > Date: Tue, 6 Oct 2020 00:08:31 -0400 Subject: [PATCH 07/29] snapshot --- .../VirtualizedTable.test.tsx.snap | 6289 ++++++++++------- 1 file changed, 3646 insertions(+), 2643 deletions(-) diff --git a/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap b/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap index 9a0d17009f8..2ac9ddb12e1 100644 --- a/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap +++ b/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap @@ -125,7 +125,8 @@ exports[`Actions virtualized table 1`] = ` > - - - +
- - + - - - - + - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - + + + + - Branches - - Pull requests - - Workspaces - - Last Commit - - -
+ + + Branches + + +
+ + + + + + Pull requests + + + + + + + + + Workspaces + + + + + + + + + Last Commit + + + + + + + + + + + + + + + + + +
+ + + +
+ + + `; @@ -1289,7 +1466,8 @@ exports[`Selectable virtualized table 1`] = ` > - - - +
- - + - - - - + - - - - + + + + - Header cell - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - + + + + + + + + - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + Branches + + + + + + + + + Pull requests + + + + + + + + + Workspaces + + + + + + + + + Last Commit + + + + + + + + + + + + + + + + + +
`; @@ -2502,7 +2856,8 @@ exports[`Simple Actions table 1`] = ` > - - - +
- - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, - }, - ] - } + + -
- - - + - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + rowIndex={0} > -
+ + + + - Branches - - Pull requests - - Workspaces - - Last Commit - - -
+ + + Branches + + + + + + + + + Pull requests + + + + + + + + + Workspaces + + + + + + + + + Last Commit + + + + + + + + + + + + + + + + + + + + + + + + +
`; @@ -4004,7 +4535,8 @@ exports[`Simple virtualized table aria-label 1`] = ` > - - - +
- - + - - - - + - - - - - - - - - - - - - - - - - - - - - -
- Header cell - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + + + + + Header cell + + + + + + + + + Branches + + + + + + + + + Pull requests + + + + + + + + + Workspaces + + + + + + + + + Last Commit + + + + + + + + + + + + + + + + + +
`; @@ -4956,7 +5644,8 @@ exports[`Simple virtualized table className 1`] = ` > - - - +
- - + - - - - - - - + - - - - - - - - - - - - - - - - - - -
- Header cell - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + + + + + Header cell + + + + + + + + + Branches + + + + + + + + + Pull requests + + + + + + + + + Workspaces + + + + + + + + + Last Commit + + + + + + + + + + + + + + + + + +
`; @@ -5913,7 +6758,8 @@ exports[`Sortable Virtualized Table 1`] = ` > - - - +
- - + - - - - + - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - + + + + - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + Branches + + + + + + + + + Pull requests + + + + + + + + + Workspaces + + + + + + + + + Last Commit + + + + + + + + + + + + + + + + + +
`; From ccb00d34240a04280ad4385cb67a7255594141e5 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Tue, 6 Oct 2020 00:29:28 -0400 Subject: [PATCH 08/29] aria-sort --- .../components/BaseTable/BaseHeaderCell.tsx | 2 +- .../Table/__snapshots__/Table.test.tsx.snap | 204 +++++++++--------- .../VirtualizedTable.test.tsx.snap | 58 ++--- 3 files changed, 132 insertions(+), 132 deletions(-) diff --git a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx index 4b8693e76a2..e60b733602f 100644 --- a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx +++ b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx @@ -92,7 +92,7 @@ const BaseHeaderCellBase: React.FunctionComponent = ({ return ( Date: Mon, 12 Oct 2020 13:41:45 -0400 Subject: [PATCH 09/29] wip --- .../src/components/BaseTable/BaseBodyCell.tsx | 62 +- .../components/BaseTable/BaseHeaderCell.tsx | 34 +- .../src/components/BaseTable/BaseTable.tsx | 25 +- .../components/BaseTable/BaseTableBody.tsx | 7 +- .../components/BaseTable/BaseTableBodyRow.tsx | 22 +- .../src/components/Table/BodyCell.tsx | 20 +- .../src/components/Table/BodyWrapper.tsx | 9 +- .../src/components/Table/HeaderCell.tsx | 43 +- .../src/components/Table/RowWrapper.tsx | 23 +- .../src/components/Table/Table.tsx | 32 +- .../src/components/Table/base/provider.tsx | 1 + .../src/components/Table/base/types.tsx | 4 +- .../Table/examples/ComposableTable.md | 831 ++++++++++++++++++ .../src/components/Table/examples/Table.md | 504 +---------- 14 files changed, 1018 insertions(+), 599 deletions(-) create mode 100644 packages/react-table/src/components/Table/examples/ComposableTable.md diff --git a/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx b/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx index dfbabf8816e..fa7fe147dc1 100644 --- a/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx +++ b/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx @@ -8,8 +8,13 @@ import { IAreActionsDisabled, IActionsResolver, IActions, - IFormatterValueType + IFormatterValueType, + collapsible, + expandedRow, + IRowData, + IExtraData } from '../Table'; +import { mergeProps } from '../Table/base/merge-props'; import { DropdownDirection, DropdownPosition @@ -20,6 +25,8 @@ export interface BaseBodyCellProps extends Omit body cell */ className?: string; + /** Element to render */ + component?: React.ReactNode; /** * The column header the cell corresponds to. * This attribute replaces table header in mobile viewport. It is rendered by ::before pseudo element. @@ -51,6 +58,18 @@ export interface BaseBodyCellProps extends Omit undefined; + /** True to remove padding */ + noPadding?: boolean; /** Forwarded ref */ innerRef?: React.Ref; } @@ -58,6 +77,7 @@ export interface BaseBodyCellProps extends Omit = ({ children, className, + component = 'td', dataLabel, columnIndex, rowIndex, @@ -72,6 +92,9 @@ const BaseBodyCellBase: React.FunctionComponent = ({ actionsDisabled, actionsDropdownPosition, actionsDropdownDirection, + isExpanded = null, + onCollapse, + noPadding, innerRef, ...props }: BaseBodyCellProps) => { @@ -108,9 +131,40 @@ const BaseBodyCellBase: React.FunctionComponent = ({ } }) : null; - const Component: any = (selectParams && selectParams.component) || 'td'; + const expandableParams = + isExpanded !== null + ? mergeProps( + collapsible(null, { + rowIndex, + columnIndex, + rowData: { + isOpen: isExpanded + }, + column: { + extraParams: { + onCollapse + } + } + }), + /* expandedRow()('true', { + rowIndex, + columnIndex, + rowData: { + parent: 0, + noPadding + }, + column: { + extraParams: {} + } + }) */ + ) + : null; + const Component: any = (selectParams && selectParams.component) || component; const transformedChildren = - (selectParams && selectParams.children) || (actionParams && actionParams.children) || children; + (selectParams && selectParams.children) || + (actionParams && actionParams.children) || + (expandableParams && expandableParams.children) || + children; return ( = ({ className={css( className, textCenter && styles.modifiers.center, + noPadding && styles.modifiers.noPadding, selectParams && selectParams.className, actionParams && actionParams.className, + expandableParams && expandableParams.className, modifier && styles.modifiers[modifier as 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'] )} ref={innerRef} diff --git a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx index e60b733602f..5d25297f0c7 100644 --- a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx +++ b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx @@ -11,6 +11,7 @@ import { ISortBy, OnSort } from '../Table'; +import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; export interface BaseHeaderCellProps extends Omit, 'onSelect'> { /** Content rendered inside the header cell */ @@ -41,6 +42,15 @@ export interface BaseHeaderCellProps extends Omit; + /** + * Tooltip to show on the header cell + * Note: If the header cell is truncated and has simple string content, it will already attempt to display the header text + * If you want to show a tooltip that differs from the header text, you can set it here + * To disable it completely you can set it to null + */ + tooltip?: React.ReactNode; + /** Callback on mouse enter */ + onMouseEnter?: (event: any) => void; } const BaseHeaderCellBase: React.FunctionComponent = ({ @@ -57,9 +67,20 @@ const BaseHeaderCellBase: React.FunctionComponent = ({ onSelect, selectVariant = 'checkbox', allRowsSelected, + tooltip = '', + onMouseEnter: onMouseEnterProp = () => {}, innerRef, ...props }: BaseHeaderCellProps) => { + const [showTooltip, setShowTooltip] = React.useState(false); + const onMouseEnter = (event: any) => { + if (event.target.offsetWidth < event.target.scrollWidth) { + !showTooltip && setShowTooltip(true); + } else { + showTooltip && setShowTooltip(false); + } + onMouseEnterProp(event); + }; const sortParams = onSort ? sortable(children as IFormatterValueType, { columnIndex, @@ -89,8 +110,10 @@ const BaseHeaderCellBase: React.FunctionComponent = ({ const Component: any = (sortParams && sortParams.component) || (selectParams && selectParams.component) || component; const transformedChildren = (sortParams && sortParams.children) || (selectParams && selectParams.children) || children; - return ( + // const canShowTooltip = tooltip !== null && ((tooltip === '' && typeof children === 'string') || tooltip !== ''); + const cell = ( = ({ {transformedChildren} ); + + const canDefault = tooltip === '' ? typeof children === 'string' : true; + return tooltip !== null && canDefault && showTooltip ? ( + + {cell} + + ) : ( + cell + ); }; export const BaseHeaderCell = React.forwardRef( diff --git a/packages/react-table/src/components/BaseTable/BaseTable.tsx b/packages/react-table/src/components/BaseTable/BaseTable.tsx index f2dd1b7d552..b9a15b17d40 100644 --- a/packages/react-table/src/components/BaseTable/BaseTable.tsx +++ b/packages/react-table/src/components/BaseTable/BaseTable.tsx @@ -12,10 +12,13 @@ export interface BaseTableProps extends React.HTMLProps, OUIAP children?: React.ReactNode; /** Additional classes added to the Table */ className?: string; - /** Style variant for the Table */ - variant?: 'compact'; - /** Render borders */ - borders?: boolean; + /** + * Style variant for the Table + * compact: Modifies to remove borders between rows + * compactBorderless: Compact and removes the border lines + * compactExpandable: Compact and indicates that the table has expandable rows + */ + variant?: TableVariant | 'compact' | 'compactBorderless' | 'compactExpandable'; /** Specifies the grid breakpoints */ gridBreakPoint?: '' | 'grid' | 'grid-md' | 'grid-lg' | 'grid-xl' | 'grid-2xl'; /** A valid WAI-ARIA role to be applied to the table element */ @@ -30,7 +33,6 @@ const BaseTableBase: React.FunctionComponent = ({ children, className, variant, - borders = true, isStickyHeader = false, gridBreakPoint = TableGridBreakpoint.gridMd, 'aria-label': ariaLabel, @@ -41,6 +43,15 @@ const BaseTableBase: React.FunctionComponent = ({ ...props }: BaseTableProps) => { const ouiaProps = useOUIAProps('Table', ouiaId, ouiaSafe); + const variantModifiers = () => { + if (variant === 'compact') { + return styles.modifiers.compact; + } else if (variant === 'compactBorderless') { + return css(styles.modifiers.compact, styles.modifiers.noBorderRows); + } else if (variant === 'compactExpandable') { + return css(styles.modifiers.compact, styles.modifiers.expandable); + } + }; return ( = ({ stylesGrid.modifiers[ toCamel(gridBreakPoint).replace(/-?2xl/, '_2xl') as 'grid' | 'gridMd' | 'gridLg' | 'gridXl' | 'grid_2xl' ], - styles.modifiers[variant], - // ((onCollapse && variant === TableVariant.compact) || onExpand) && styles.modifiers.expandable, - variant === TableVariant.compact && borders === false && styles.modifiers.noBorderRows, + variantModifiers(), isStickyHeader && styles.modifiers.stickyHeader )} ref={innerRef} diff --git a/packages/react-table/src/components/BaseTable/BaseTableBody.tsx b/packages/react-table/src/components/BaseTable/BaseTableBody.tsx index f7ced7ca81d..2ebfa422cf7 100644 --- a/packages/react-table/src/components/BaseTable/BaseTableBody.tsx +++ b/packages/react-table/src/components/BaseTable/BaseTableBody.tsx @@ -1,10 +1,14 @@ import * as React from 'react'; +import { css } from '@patternfly/react-styles'; +import styles from '@patternfly/react-styles/css/components/Table/table'; export interface BaseTableBodyProps extends React.HTMLProps { /** Content rendered inside the row */ children?: React.ReactNode; /** Additional classes added to the row */ className?: string; + /** Modifies the body to allow for expandable rows */ + isExpanded?: boolean; /** Forwarded ref */ innerRef?: React.Ref; } @@ -12,10 +16,11 @@ export interface BaseTableBodyProps extends React.HTMLProps = ({ children, className, + isExpanded, innerRef, ...props }: BaseTableBodyProps) => ( - + {children} ); diff --git a/packages/react-table/src/components/BaseTable/BaseTableBodyRow.tsx b/packages/react-table/src/components/BaseTable/BaseTableBodyRow.tsx index f15a8bb1026..121b3ce03b1 100644 --- a/packages/react-table/src/components/BaseTable/BaseTableBodyRow.tsx +++ b/packages/react-table/src/components/BaseTable/BaseTableBodyRow.tsx @@ -1,11 +1,18 @@ import * as React from 'react'; import { useOUIAProps, OUIAProps } from '@patternfly/react-core'; +import styles from '@patternfly/react-styles/css/components/Table/table'; +import inlineStyles from '@patternfly/react-styles/css/components/InlineEdit/inline-edit'; +import { css } from '@patternfly/react-styles'; export interface BaseTableBodyRowProps extends React.HTMLProps, OUIAProps { /** Content rendered inside the row */ children?: React.ReactNode; /** Additional classes added to the row */ className?: string; + /** Makes the row expandable and determines if it's expanded or not */ + isExpanded?: boolean; + /** Whether the row is editable */ + isEditable?: boolean; /** Forwarded ref */ innerRef?: React.Ref; } @@ -13,6 +20,8 @@ export interface BaseTableBodyRowProps extends React.HTMLProps = ({ children, className, + isExpanded, + isEditable, innerRef, ouiaId, ouiaSafe = true, @@ -20,7 +29,18 @@ const BaseTableBodyRowBase: React.FunctionComponent = ({ }: BaseTableBodyRowProps) => { const ouiaProps = useOUIAProps('TableRow', ouiaId, ouiaSafe); return ( - + {children} ); diff --git a/packages/react-table/src/components/Table/BodyCell.tsx b/packages/react-table/src/components/Table/BodyCell.tsx index 054230cd779..d775f50fa90 100644 --- a/packages/react-table/src/components/Table/BodyCell.tsx +++ b/packages/react-table/src/components/Table/BodyCell.tsx @@ -1,8 +1,7 @@ import * as React from 'react'; -import { css } from '@patternfly/react-styles'; import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; -import styles from '@patternfly/react-styles/css/components/Table/table'; import { SelectProps } from '@patternfly/react-core'; +import { BaseBodyCell } from '../BaseTable/BaseBodyCell'; export interface BodyCellProps { 'data-label'?: string; @@ -51,11 +50,6 @@ export const BodyCell: React.FunctionComponent = ({ /* eslint-enable @typescript-eslint/no-unused-vars */ ...props }: BodyCellProps) => { - const mappedProps = { - ...(dataLabel && !parentId ? { 'data-label': dataLabel } : {}), - ...props - }; - const [tooltip, setTooltip] = React.useState(''); const onMouseEnter = (event: any) => { if (event.target.offsetWidth < event.target.scrollWidth) { @@ -70,16 +64,18 @@ export const BodyCell: React.FunctionComponent = ({ onMouseEnterProp(event); }; - const Component = component as any; const cell = ( - {children} - + ); const bodyCell = diff --git a/packages/react-table/src/components/Table/BodyWrapper.tsx b/packages/react-table/src/components/Table/BodyWrapper.tsx index 56e609caf74..22ca6866b6a 100644 --- a/packages/react-table/src/components/Table/BodyWrapper.tsx +++ b/packages/react-table/src/components/Table/BodyWrapper.tsx @@ -1,6 +1,4 @@ import * as React from 'react'; -import { css } from '@patternfly/react-styles'; -import styles from '@patternfly/react-styles/css/components/Table/table'; import { IRow, IRowData, IExtraData, IHeaderRow } from './Table'; import { mapOpenedRows } from './utils/headerUtils'; import { BaseTableBody } from '../BaseTable/BaseTableBody'; @@ -34,12 +32,7 @@ export const BodyWrapper: React.FunctionComponent = ({ return ( {mapOpenedRows(mappedRows, props.children).map((oneRow, key) => ( - } - > + }> {oneRow.rows} ))} diff --git a/packages/react-table/src/components/Table/HeaderCell.tsx b/packages/react-table/src/components/Table/HeaderCell.tsx index a480a59bc1f..ae5fd60464a 100644 --- a/packages/react-table/src/components/Table/HeaderCell.tsx +++ b/packages/react-table/src/components/Table/HeaderCell.tsx @@ -1,7 +1,4 @@ import * as React from 'react'; -import { css } from '@patternfly/react-styles'; -import styles from '@patternfly/react-styles/css/components/Table/table'; -import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; import { BaseHeaderCell } from '../BaseTable/BaseHeaderCell'; export interface HeaderCellProps { @@ -22,8 +19,8 @@ export const HeaderCell: React.FunctionComponent = ({ component = 'th', scope = '', textCenter = false, - tooltip: tooltipProp = '', - onMouseEnter: onMouseEnterProp = () => {}, + tooltip = '', + onMouseEnter = () => {}, children, /* eslint-disable @typescript-eslint/no-unused-vars */ isVisible, @@ -31,42 +28,18 @@ export const HeaderCell: React.FunctionComponent = ({ /* eslint-enable @typescript-eslint/no-unused-vars */ ...props }: HeaderCellProps) => { - const mappedProps = { - ...(scope ? { scope } : {}), - ...props - }; - - const [tooltip, setTooltip] = React.useState(''); - const onMouseEnter = (event: any) => { - if (event.target.offsetWidth < event.target.scrollWidth) { - if (tooltipProp) { - setTooltip(tooltipProp); - } else if (typeof children === 'string') { - setTooltip(children); - } - } else { - setTooltip(''); - } - onMouseEnterProp(event); - }; - - const cell = ( + return ( {children} ); - - return tooltip !== '' ? ( - - {cell} - - ) : ( - cell - ); }; HeaderCell.displayName = 'HeaderCell'; diff --git a/packages/react-table/src/components/Table/RowWrapper.tsx b/packages/react-table/src/components/Table/RowWrapper.tsx index 940456cebf2..56ded4a225d 100644 --- a/packages/react-table/src/components/Table/RowWrapper.tsx +++ b/packages/react-table/src/components/Table/RowWrapper.tsx @@ -1,9 +1,6 @@ import * as React from 'react'; -import { getOUIAProps, OUIAProps, getDefaultOUIAId } from '@patternfly/react-core/dist/js/helpers/ouia'; +import { OUIAProps } from '@patternfly/react-core/dist/js/helpers/ouia'; import { debounce } from '@patternfly/react-core/dist/js/helpers/util'; -import styles from '@patternfly/react-styles/css/components/Table/table'; -import inlineStyles from '@patternfly/react-styles/css/components/InlineEdit/inline-edit'; -import { css } from '@patternfly/react-styles'; import { BaseTableBodyRow } from '../BaseTable/BaseTableBodyRow'; // legacy export now, RowWrapperRow can simply be typed as IRow in the future @@ -25,7 +22,7 @@ export interface RowWrapperProps extends OUIAProps { }; } -export class RowWrapper extends React.Component { +export class RowWrapper extends React.Component { static displayName = 'RowWrapper'; static defaultProps = { className: '' as string, @@ -48,10 +45,6 @@ export class RowWrapper extends React.Component} - className={css( - className, - isExpanded !== undefined && styles.tableExpandableRow, - isExpanded && styles.modifiers.expanded, - isEditable && inlineStyles.modifiers.inlineEditable - )} - hidden={isExpanded !== undefined && !isExpanded} - {...getOUIAProps('TableRow', ouiaId !== undefined ? ouiaId : this.state.ouiaStateId)} + isExpanded={isExpanded} + isEditable={isEditable} + className={className} + ouiaId={ouiaId} /> ); } diff --git a/packages/react-table/src/components/Table/Table.tsx b/packages/react-table/src/components/Table/Table.tsx index 3c4ae5894d5..5417e75d5e2 100644 --- a/packages/react-table/src/components/Table/Table.tsx +++ b/packages/react-table/src/components/Table/Table.tsx @@ -1,5 +1,4 @@ import * as React from 'react'; -import styles from '@patternfly/react-styles/css/components/Table/table'; import { OUIAProps, getDefaultOUIAId } from '@patternfly/react-core'; import { DropdownDirection, @@ -26,7 +25,9 @@ export enum TableGridBreakpoint { } export enum TableVariant { - compact = 'compact' + compact = 'compact', + compactBorderless = 'compactBorderless', + compactExpandable = 'compactExpandable' } export type RowEditType = 'save' | 'cancel' | 'edit'; @@ -258,8 +259,12 @@ export interface TableProps extends OUIAProps { /** Additional classes added to the Table */ className?: string; /** Style variant for the Table */ - variant?: 'compact'; - /** Render borders */ + variant?: 'compact' | 'compactBorderless' | 'compactExpandable'; + /** + * Render borders + * + * @deprecated Borders can only be removed for the compact table, set variant="compactBorderless" instead + */ borders?: boolean; /** Specifies the grid breakpoints */ gridBreakPoint?: '' | 'grid' | 'grid-md' | 'grid-lg' | 'grid-xl' | 'grid-2xl'; @@ -396,6 +401,7 @@ export class Table extends React.Component { bodyWrapper, rowWrapper, role, + borders, ...props } = this.props; @@ -425,6 +431,18 @@ export class Table extends React.Component { firstUserColumnIndex: [onCollapse, onSelect].filter(callback => callback).length }); + const getVariant = () => { + if (variant === 'compact') { + if (borders === false) { + return 'compactBorderless'; + } else if (onCollapse || onExpand) { + return 'compactExpandable'; + } + return 'compact'; + } + return variant; + }; + const table = ( { }} columns={headerData} role={role} - className={css( - ((onCollapse && variant === TableVariant.compact) || onExpand) && styles.modifiers.expandable, - className - )} + variant={getVariant()} + className={className} > {caption && } {children} diff --git a/packages/react-table/src/components/Table/base/provider.tsx b/packages/react-table/src/components/Table/base/provider.tsx index dffb6379ecb..1c968c71e73 100644 --- a/packages/react-table/src/components/Table/base/provider.tsx +++ b/packages/react-table/src/components/Table/base/provider.tsx @@ -11,6 +11,7 @@ export interface ProviderProps extends RenderersTypes { children?: React.ReactNode; role?: string; className?: string; + variant?: 'compact' | 'compactBorderless' | 'compactExpandable'; } export const ProviderContext = React.createContext({ diff --git a/packages/react-table/src/components/Table/base/types.tsx b/packages/react-table/src/components/Table/base/types.tsx index fa7a84918bf..5016013efd7 100644 --- a/packages/react-table/src/components/Table/base/types.tsx +++ b/packages/react-table/src/components/Table/base/types.tsx @@ -108,12 +108,12 @@ export interface RendererType { export interface RenderersTypes { columns: ColumnsType; renderers?: { - table?: string; + table?: any; header?: RendererType; body?: RendererType; }; components?: { - table?: string; + table?: any; header?: { wrapper?: rendererType; row?: rendererType; diff --git a/packages/react-table/src/components/Table/examples/ComposableTable.md b/packages/react-table/src/components/Table/examples/ComposableTable.md new file mode 100644 index 00000000000..cbdfdeaae27 --- /dev/null +++ b/packages/react-table/src/components/Table/examples/ComposableTable.md @@ -0,0 +1,831 @@ +--- +id: TableComposable +cssPrefix: pf-c-table +section: components +propComponents: + [ + 'Table', + 'TableHeader', + 'TableBody', + 'EditableSelectInputCell', + 'EditableTextCell', + 'RowErrors', + 'IHeaderRow', + 'IRowData', + 'IColumn', + 'IExtraRowData', + 'IExtraColumnData', + 'ISortBy', + 'IAction', + 'ISeparator', + 'ICell', + 'IRowCell', + 'IValidatorDef', + 'IRow', + ] +ouia: true +--- + +Note: Table lives in its own package at [@patternfly/react-table](https://www.npmjs.com/package/@patternfly/react-table)! + +import { +Table, +TableHeader, +TableBody, +TableText, +sortable, +SortByDirection, +headerCol, +TableVariant, +expandable, +compoundExpand, +cellWidth, +textCenter, +wrappable, +truncate, +nowrap, +breakWord, +fitContent, +classNames, +Visibility, +getErrorTextByValidator, +cancelCellEdits, +validateCellEdits, +applyCellEdits, +EditableTextCell, +EditableSelectInputCell, +BaseTable, +BaseTableCaption, +BaseTableHead, +BaseTableBody, +BaseTableHeaderRow, +BaseTableBodyRow, +BaseHeaderCell, +BaseBodyCell, +HeaderCellInfoWrapper, +ExpandableRowContent +} from '@patternfly/react-table'; + +import { +EmptyStateIcon, +ToggleGroup, +ToggleGroupItem +} from '@patternfly/react-core'; + +import SearchIcon from '@patternfly/react-icons/dist/js/icons/search-icon'; +import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; +import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; +import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; + +import { css } from '@patternfly/react-styles'; +import styles from '@patternfly/react-styles/css/components/Table/table'; + +import DemoSortableTable from './DemoSortableTable'; + +## Composable table examples + +### Composable: Basic, Row click handler, Custom row wrapper + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; + +ComposableTableBasic = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'three', 'four', 'five'], + ['one - 2', null, null, 'four - 2', 'five - 2'], + ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3 (not centered)'] + ]); + // map additional configuration to the data + // key: row_column + const dataConfig = { + '1_0': { + title: text =>
{text}
, + props: { title: 'hover title', colSpan: 3 } + }, + '2_4': { + props: { textCenter: false } + } + }; + const onRowClick = (event, rowIndex, row) => { + console.log(`handle row click ${rowIndex}`, row); + }; + return ( + + + + + + {columns[0]} + + + + {columns[1]} + + + + More information on pull requests + + } + ariaLabel="More information on pull requests" + popoverProps={{ + headerContent: 'Pull requests', + footerContent: Click here for even more info + }} + > + {columns[2]} + + + + {columns[3]} + + + {columns[4]} + + + + + {data.map((row, rowIndex) => { + const isOddRow = (rowIndex + 1) % 2; + const customStyle = { + borderLeft: '3px solid var(--pf-global--primary-color--100)' + }; + return ( + onRowClick(event, rowIndex, row)} + className={isOddRow ? 'odd-row-class' : 'even-row-class'} + style={isOddRow ? customStyle : {}} + > + {row.map((cell, cellIndex) => { + if (!cell) { + return null; + } + const cellConfig = dataConfig[`${rowIndex}_${cellIndex}`]; + return ( + + {cellConfig && cellConfig.title ? cellConfig.title(cell) : cell} + + ); + })} + + ); + })} + + + ); +}; +``` + +### Composable: Sortable, Sortable with wrapping headers + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; + +ComposableTableSortable = () => { + const [columns, setColumns] = React.useState([ + 'This is a really long table header that goes on for a long time 1.', + 'This is a really long table header that goes on for a long time 2.', + 'This is a really long table header that goes on for a long time 3.', + 'This is a really long table header that goes on for a long time 4.', + 'This is a really long table header that goes on for a long time 5.' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]); + // index of the currently active column + const [activeSortIndex, setActiveSortIndex] = React.useState(-1); + // sort direction of the currently active column + const [activeSortDirection, setActiveSortDirection] = React.useState('none'); + const onSort = (event, index, direction, extraData) => { + setActiveSortIndex(index); + setActiveSortDirection(direction); + // sorts the row data + const updatedData = data.sort((a, b) => { + if (typeof a[index] === 'number') { + // numeric sort + if (direction === 'asc') { + return a[index] - b[index]; + } + return b[index] - a[index]; + } else { + // string sort + if (direction === 'asc') { + return a[index].localeCompare(b[index]); + } + return b[index].localeCompare(a[index]); + } + }); + setData(updatedData); + }; + return ( + + + + + {columns[0]} + + + {columns[1]} + + + {columns[2]} + + + {columns[3]} + + + {columns[4]} + + + + + {data.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + ))} + + + ); +}; +``` + +### Composable: Selectable + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; + +ComposableTableSelectable = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]); + const [allRowsSelected, setAllRowsSelected] = React.useState(false); + const [selected, setSelected] = React.useState(data.map(row => false)); + const onSelect = (event, isSelected, rowId, rowData, extraData) => { + setSelected(selected.map((sel, index) => (index === rowId ? isSelected : sel))); + if (!isSelected && allRowsSelected) { + setAllRowsSelected(false); + } else if (isSelected && !allRowsSelected) { + let allSelected = true; + for (let i = 0; i < selected.length; i++) { + if (i !== rowId) { + if (!selected[i]) { + allSelected = false; + } + } + } + if (allSelected) { + setAllRowsSelected(true); + } + } + }; + const onSelectAll = (event, isSelected, rowId, rowData, extraData) => { + setAllRowsSelected(isSelected); + setSelected(selected.map(sel => isSelected)); + }; + return ( + + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + {data.map((row, rowIndex) => ( + + + {row.map((cell, cellIndex) => { + const shiftedIndex = cellIndex + 1; + return ( + + {cell} + + ); + })} + + ))} + + + ); +}; +``` + +### Composable: Selectable radio input + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; + +ComposableTableSelectableRadio = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]); + const [selected, setSelected] = React.useState(-1); + const onSelect = (event, isSelected, rowId, rowData, extraData) => { + setSelected(rowId); + }; + return ( + + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + {data.map((row, rowIndex) => ( + + + {row.map((cell, cellIndex) => { + const shiftedIndex = cellIndex + 1; + return ( + + {cell} + + ); + })} + + ))} + + + ); +}; +``` + +### Composable: Actions + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; + +ComposableTableActions = () => { + const defaultActions = [ + { + title: 'Some action', + onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) + }, + { + title: Link action + }, + { + isSeparator: true + }, + { + title: 'Third action', + onClick: (event, rowId, rowData, extra) => console.log('clicked on Third action, on row: ', rowId) + } + ]; + const lastRowActions = [ + { + title: 'Some action', + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Some action, on row ${rowId}`) + }, + { + title:
Another action
, + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Another action, on row ${rowId}`) + }, + { + isSeparator: true + }, + { + title: 'Third action', + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Third action, on row ${rowId}`) + } + ]; + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'], + ['4', '2', 'b', 'four', 'five'], + ['5', '2', 'b', 'four', 'five'] + ]); + return ( + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + + {data.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + + ))} + + + ); +}; +``` + +### Composable: Compact, Compact borderless + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; +import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; + +ComposableTableCompact = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'], + ['4', '2', 'b', 'four', 'five'], + ['5', '2', 'b', 'four', 'five'] + ]); + const [variant, setVariant] = React.useState('compact'); + const handleItemClick = (isSelected, event) => { + const id = event.currentTarget.id; + setVariant(id); + }; + return ( + + + + Compact + + + Compact & borderless + + + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + {data.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + ))} + + + + ); +}; +``` + +### Composable: Expandable + +```js +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper, + ExpandableRowContent +} from '@patternfly/react-table'; +import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; + +ComposableTableExpandable = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['parent 1', 'two', 'k', 'four', 'five'], + ['parent 2', 'two', 'b', 'four', 'five'], + ['parent 3', '2', 'b', 'four', 'five'], + ['parent 4', '2', 'b', 'four', 'five'], + ['parent 5', '2', 'b', 'four', 'five'], + ['parent 6', '2', 'b', 'four', 'five'] + ]); + // key = row index it corresponds to + const childData = { + '1': { cells: ['single cell'] }, + '2': { cells: ['single cell - fullWidth'], fullWidth: true }, + '3': { cells: ['single cell - noPadding'], noPadding: true }, + '4': { cells: ['single cell - fullWidth & noPadding'], fullWidth: true, noPadding: true }, + '5': { + cells: [ + { + title: "spans 'Repositories' and 'Branches'", + props: { + colSpan: 2 + } + }, + { + title: "spans 'Pull requests' and 'Workspaces', and 'Last commit'", + props: { + colSpan: 3 + } + } + ] + }, + '6': { + cells: [ + { + title: "fullWidth, spans the collapsible column and 'Repositories'", + props: { + colSpan: 2 + } + }, + { + title: "fullWidth, spans 'Branches' and 'Pull requests' and 'Workspaces'", + props: { + colSpan: 3 + } + }, + "fullWidth, spans 'Last commit'" + ], + fullWidth: true + } + }; + const numColumns = data[0].length; + // Init all to true + const [expanded, setExpanded] = React.useState( + Object.fromEntries(Object.entries(childData).map(([k, v]) => [k, true])) + ); + const [variant, setVariant] = React.useState(null); + const handleItemClick = (isSelected, event) => { + const id = event.currentTarget.id; + setVariant(id === 'default' ? null : id); + }; + return ( + + + + Default expandable + + + Compact expandable + + + + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + {data.map((row, rowIndex) => ( + + + + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + {childData[rowIndex] && ( + + {!childData[rowIndex].fullWidth && } + {childData[rowIndex].cells.map((cell, cellIndex) => { + const shift = childData[rowIndex].fullWidth ? 1 : 0; + const shiftedCellIndex = cellIndex + shift; + return ( + + {cell.title || cell} + + ); + })} + + )} + + + ))} + + + ); +}; +``` diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index b466985cdf8..dcf0c3cca5d 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -77,7 +77,7 @@ import styles from '@patternfly/react-styles/css/components/Table/table'; import DemoSortableTable from './DemoSortableTable'; -## Examples +## Table examples ### Basic @@ -280,131 +280,6 @@ class RowWrapperTable extends React.Component { } ``` -### Composable: Basic, Row click handler, Custom row wrapper - -```js -import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell, - HeaderCellInfoWrapper -} from '@patternfly/react-table'; - -ComposableTableBasic = () => { - const [columns, setColumns] = React.useState([ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]); - const [data, setData] = React.useState([ - ['one', 'two', 'three', 'four', 'five'], - ['one - 2', null, null, 'four - 2', 'five - 2'], - ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3 (not centered)'] - ]); - // map additional configuration to the data - // key: row_column - const dataConfig = { - '1_0': { - title: text =>
{text}
, - props: { title: 'hover title', colSpan: 3 } - }, - '2_4': { - props: { textCenter: false } - } - }; - const onRowClick = (event, rowIndex, row) => { - console.log(`handle row click ${rowIndex}`, row); - }; - return ( - - - - - - {columns[0]} - - - - {columns[1]} - - - - More information on pull requests - - } - ariaLabel="More information on pull requests" - popoverProps={{ - headerContent: 'Pull requests', - footerContent: Click here for even more info - }} - > - {columns[2]} - - - - {columns[3]} - - - {columns[4]} - - - - - {data.map((row, rowIndex) => { - const isOddRow = (rowIndex + 1) % 2; - const customStyle = { - borderLeft: '3px solid var(--pf-global--primary-color--100)' - }; - return ( - onRowClick(event, rowIndex, row)} - className={isOddRow ? 'odd-row-class' : 'even-row-class'} - style={isOddRow ? customStyle : {}} - > - {row.map((cell, cellIndex) => { - if (!cell) { - return null; - } - const cellConfig = dataConfig[`${rowIndex}_${cellIndex}`]; - return ( - - {cellConfig && cellConfig.title ? cellConfig.title(cell) : cell} - - ); - })} - - ); - })} - - - ); -}; -``` - ### Sortable ```js @@ -528,110 +403,6 @@ class SortableWrappingHeaders extends React.Component { } ``` -### Composable: Sortable, Sortable with wrapping headers - -```js -import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell, - HeaderCellInfoWrapper -} from '@patternfly/react-table'; - -ComposableTableSortable = () => { - const [columns, setColumns] = React.useState([ - 'Repositories', - 'Branches', - 'Pull requests', - 'This is a really long table header that goes on for a long time 4.', - 'This is a really long table header that goes on for a long time 5.' - ]); - const [data, setData] = React.useState([ - ['one', 'two', 'a', 'four', 'five'], - ['a', 'two', 'k', 'four', 'five'], - ['p', 'two', 'b', 'four', 'five'] - ]); - // index of the currently active column - const [activeSortIndex, setActiveSortIndex] = React.useState(-1); - // sort direction of the currently active column - const [activeSortDirection, setActiveSortDirection] = React.useState('none'); - const onSort = (event, index, direction, extraData) => { - setActiveSortIndex(index); - setActiveSortDirection(direction); - // sorts the row data - const updatedData = data.sort((a, b) => { - if (typeof a[index] === 'number') { - // numeric sort - if (direction === 'asc') { - return a[index] - b[index]; - } - return b[index] - a[index]; - } else { - // string sort - if (direction === 'asc') { - return a[index].localeCompare(b[index]); - } - return b[index].localeCompare(a[index]); - } - }); - setData(updatedData); - }; - return ( - - - - - {columns[0]} - - {columns[1]} - - {columns[2]} - - - {columns[3]} - - - {columns[4]} - - - - - {data.map((row, rowIndex) => ( - - {row.map((cell, cellIndex) => ( - - {cell} - - ))} - - ))} - - - ); -}; -``` - ### Selectable ```js @@ -730,101 +501,6 @@ class SelectableTable extends React.Component { } ``` -### Composable: Selectable - -```js -import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell, - HeaderCellInfoWrapper -} from '@patternfly/react-table'; - -ComposableTableSelectable = () => { - const [columns, setColumns] = React.useState([ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]); - const [data, setData] = React.useState([ - ['one', 'two', 'a', 'four', 'five'], - ['a', 'two', 'k', 'four', 'five'], - ['p', 'two', 'b', 'four', 'five'] - ]); - const [allRowsSelected, setAllRowsSelected] = React.useState(false); - const [selected, setSelected] = React.useState(data.map(row => false)); - const onSelect = (event, isSelected, rowId, rowData, extraData) => { - setSelected(selected.map((sel, index) => (index === rowId ? isSelected : sel))); - if (!isSelected && allRowsSelected) { - setAllRowsSelected(false); - } else if (isSelected && !allRowsSelected) { - let allSelected = true; - for (let i = 0; i < selected.length; i++) { - if (i !== rowId) { - if (!selected[i]) { - allSelected = false; - } - } - } - if (allSelected) { - setAllRowsSelected(true); - } - } - }; - const onSelectAll = (event, isSelected, rowId, rowData, extraData) => { - setAllRowsSelected(isSelected); - setSelected(selected.map(sel => isSelected)); - }; - return ( - - - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - - {data.map((row, rowIndex) => ( - - - {row.map((cell, cellIndex) => { - const shiftedIndex = cellIndex + 1; - return ( - - {cell} - - ); - })} - - ))} - - - ); -}; -``` - ### Selectable radio input ```js @@ -905,82 +581,6 @@ class SelectableTable extends React.Component { } ``` -### Composable: Selectable radio input - -```js -import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell, - HeaderCellInfoWrapper -} from '@patternfly/react-table'; - -ComposableTableSelectableRadio = () => { - const [columns, setColumns] = React.useState([ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]); - const [data, setData] = React.useState([ - ['one', 'two', 'a', 'four', 'five'], - ['a', 'two', 'k', 'four', 'five'], - ['p', 'two', 'b', 'four', 'five'] - ]); - const [selected, setSelected] = React.useState(-1); - const onSelect = (event, isSelected, rowId, rowData, extraData) => { - setSelected(rowId); - }; - return ( - - - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - - {data.map((row, rowIndex) => ( - - - {row.map((cell, cellIndex) => { - const shiftedIndex = cellIndex + 1; - return ( - - {cell} - - ); - })} - - ))} - - - ); -}; -``` - ### Simple actions ```js @@ -1138,108 +738,6 @@ class ActionsTable extends React.Component { } ``` -### Composable: Actions - -```js -import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell, - HeaderCellInfoWrapper -} from '@patternfly/react-table'; - -ComposableTableActions = () => { - const defaultActions = [ - { - title: 'Some action', - onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) - }, - { - title: Link action - }, - { - isSeparator: true - }, - { - title: 'Third action', - onClick: (event, rowId, rowData, extra) => console.log('clicked on Third action, on row: ', rowId) - } - ]; - const lastRowActions = [ - { - title: 'Some action', - onClick: (event, rowId, rowData, extra) => console.log(`clicked on Some action, on row ${rowId}`) - }, - { - title:
Another action
, - onClick: (event, rowId, rowData, extra) => console.log(`clicked on Another action, on row ${rowId}`) - }, - { - isSeparator: true - }, - { - title: 'Third action', - onClick: (event, rowId, rowData, extra) => console.log(`clicked on Third action, on row ${rowId}`) - } - ]; - const [columns, setColumns] = React.useState([ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]); - const [data, setData] = React.useState([ - ['one', 'two', 'a', 'four', 'five'], - ['a', 'two', 'k', 'four', 'five'], - ['p', 'two', 'b', 'four', 'five'], - ['4', '2', 'b', 'four', 'five'], - ['5', '2', 'b', 'four', 'five'] - ]); - const [selected, setSelected] = React.useState(-1); - const onSelect = (event, isSelected, rowId, rowData, extraData) => { - setSelected(rowId); - }; - return ( - - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - - - {data.map((row, rowIndex) => ( - - {row.map((cell, cellIndex) => ( - - {cell} - - ))} - - - ))} - - - ); -}; -``` - ### First cell as header ```js From 177a01053e49c8b580a39d8436d6ceb77cbdc022 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Mon, 12 Oct 2020 13:58:24 -0400 Subject: [PATCH 10/29] wip --- .../src/components/BaseTable/BaseBodyCell.tsx | 2 +- .../src/components/Table/HeaderCell.tsx | 28 +- .../__snapshots__/RowWrapper.test.tsx.snap | 24 +- .../Table/__snapshots__/Table.test.tsx.snap | 65119 ++++++++++++---- .../VirtualizedTable.test.tsx.snap | 180 +- 5 files changed, 51042 insertions(+), 14311 deletions(-) diff --git a/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx b/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx index fa7fe147dc1..b232a5c4b94 100644 --- a/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx +++ b/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx @@ -145,7 +145,7 @@ const BaseBodyCellBase: React.FunctionComponent = ({ onCollapse } } - }), + }) /* expandedRow()('true', { rowIndex, columnIndex, diff --git a/packages/react-table/src/components/Table/HeaderCell.tsx b/packages/react-table/src/components/Table/HeaderCell.tsx index ae5fd60464a..d02667ce9a9 100644 --- a/packages/react-table/src/components/Table/HeaderCell.tsx +++ b/packages/react-table/src/components/Table/HeaderCell.tsx @@ -27,19 +27,17 @@ export const HeaderCell: React.FunctionComponent = ({ dataLabel = '', /* eslint-enable @typescript-eslint/no-unused-vars */ ...props -}: HeaderCellProps) => { - return ( - - {children} - - ); -}; +}: HeaderCellProps) => ( + + {children} + +); HeaderCell.displayName = 'HeaderCell'; diff --git a/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap b/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap index 9703ff1caca..e6de1dca011 100644 --- a/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap +++ b/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap @@ -39,17 +39,9 @@ exports[`RowWrapper renders correctly 1`] = ` >
{caption}
- + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -5623,24 +5756,16 @@ exports[`Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -6505,24 +6745,16 @@ exports[`Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -7387,24 +7734,16 @@ exports[`Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -8269,24 +8723,16 @@ exports[`Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -9151,24 +9712,16 @@ exports[`Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -10033,24 +10701,16 @@ exports[`Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -10915,24 +11690,16 @@ exports[`Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -11797,24 +12679,16 @@ exports[`Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -12418,7 +13407,6 @@ exports[`Cell header table 1`] = ` >
@@ -4741,24 +4767,16 @@ exports[`Actions table 1`] = ` >
- + + + - + + + + - + + + + - + + + + - + + + + @@ -17196,24 +18292,16 @@ exports[`Cell header table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -17661,24 +18844,16 @@ exports[`Cell header table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -18126,24 +19396,16 @@ exports[`Cell header table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -18591,24 +19948,16 @@ exports[`Cell header table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -19056,24 +20500,16 @@ exports[`Cell header table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -19521,24 +21052,16 @@ exports[`Cell header table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -19986,24 +21604,16 @@ exports[`Cell header table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -20451,24 +22156,16 @@ exports[`Cell header table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -20710,7 +22502,6 @@ exports[`Collapsible nested table 1`] = ` >
- + + + + + + + + + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -26044,25 +27971,19 @@ exports[`Collapsible nested table 1`] = ` } > - + + + + + + + + + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -26674,25 +28730,19 @@ exports[`Collapsible nested table 1`] = ` } > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -26832,11 +29022,13 @@ exports[`Collapsible nested table 1`] = ` - + + + + + + + + + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -27858,25 +30157,19 @@ exports[`Collapsible nested table 1`] = ` } > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -28441,24 +30874,16 @@ exports[`Collapsible nested table 1`] = ` > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -28998,24 +31538,16 @@ exports[`Collapsible nested table 1`] = ` > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -29555,24 +32202,16 @@ exports[`Collapsible nested table 1`] = ` > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -30112,24 +32866,16 @@ exports[`Collapsible nested table 1`] = ` > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -30388,7 +33249,6 @@ exports[`Collapsible table 1`] = ` >
@@ -21730,6 +23528,8 @@ exports[`Collapsible nested table 1`] = ` data-label="Header cell" onMouseEnter={[Function]} scope="col" + textCenter={false} + tooltip="" >
- + + + + + + + + + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -35708,25 +38704,19 @@ exports[`Collapsible table 1`] = ` } > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -36296,24 +39421,16 @@ exports[`Collapsible table 1`] = ` > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -36428,11 +39660,13 @@ exports[`Collapsible table 1`] = ` - + + + + + + + + + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -37454,25 +40795,19 @@ exports[`Collapsible table 1`] = ` } > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -38037,24 +41512,16 @@ exports[`Collapsible table 1`] = ` > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -38594,24 +42176,16 @@ exports[`Collapsible table 1`] = ` > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -39151,24 +42840,16 @@ exports[`Collapsible table 1`] = ` > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -39708,24 +43504,16 @@ exports[`Collapsible table 1`] = ` > - + + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -39953,8 +43856,7 @@ exports[`Compound Expandable table 1`] = ` >
@@ -31408,6 +34275,8 @@ exports[`Collapsible table 1`] = ` data-label="Header cell" onMouseEnter={[Function]} scope="col" + textCenter={false} + tooltip="" >
- + + + 1 + + + + + + - + + + 2 + + + + + + @@ -41907,25 +45850,19 @@ exports[`Compound Expandable table 1`] = ` } > - + + + + - + + + 3 + + + + + + - + + + 4 + + + + + + @@ -42441,25 +46431,19 @@ exports[`Compound Expandable table 1`] = ` } > - + + + +
- + + + - + + + + - + + + + - + + + + - + + + + @@ -47122,25 +51236,19 @@ exports[`Control text table 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -47580,25 +51783,19 @@ exports[`Control text table 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -47694,11 +51986,13 @@ exports[`Control text table 1`] = ` - + + + - + + + + - + + + + - + + + + - + + + + @@ -48511,25 +52892,19 @@ exports[`Control text table 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -48983,24 +53453,16 @@ exports[`Control text table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -49454,24 +54011,16 @@ exports[`Control text table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -49925,24 +54569,16 @@ exports[`Control text table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -50396,24 +55127,16 @@ exports[`Control text table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -50620,7 +55438,6 @@ exports[`Editable table 1`] = ` className="pf-c-inline-edit" >
- + + + + + - + + + + + - + + + + + - + + + + + - + + + + + + + + + + + + @@ -54974,24 +59904,18 @@ exports[`Editable table 1`] = ` > - + + + + + - + + + + + - + + + + + - + + + + + - + + + + + + + + + + + + @@ -55644,7 +60664,6 @@ exports[`Header width table 1`] = ` >
@@ -53956,25 +58796,19 @@ exports[`Editable table 1`] = ` } >
- + + + - + + + + - + + + + - + + + + - + + + + @@ -60434,25 +65563,19 @@ exports[`Header width table 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -60904,25 +66122,19 @@ exports[`Header width table 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -61018,11 +66325,13 @@ exports[`Header width table 1`] = ` - + + + - + + + + - + + + + - + + + + - + + + + @@ -61859,25 +67255,19 @@ exports[`Header width table 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -62343,24 +67828,16 @@ exports[`Header width table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -62826,24 +68398,16 @@ exports[`Header width table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -63309,24 +68968,16 @@ exports[`Header width table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -63792,24 +69538,16 @@ exports[`Header width table 1`] = ` > - + + + - + + + + - + + + + - + + + + - + + + + @@ -64038,7 +69871,6 @@ exports[`Row click table 1`] = ` >
- + + + + - + + + + - + + + + - + + + + - + + + + @@ -68806,24 +74746,16 @@ exports[`Row click table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -69265,24 +75292,16 @@ exports[`Row click table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -69724,24 +75838,16 @@ exports[`Row click table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -70183,24 +76384,16 @@ exports[`Row click table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -70642,24 +76930,16 @@ exports[`Row click table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -71101,24 +77476,16 @@ exports[`Row click table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -71560,24 +78022,16 @@ exports[`Row click table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -72019,24 +78568,16 @@ exports[`Row click table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -72273,7 +78909,6 @@ exports[`Selectable table 1`] = ` >
- + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -77503,25 +84274,19 @@ exports[`Selectable table 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -78030,25 +84910,19 @@ exports[`Selectable table 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -78157,11 +85146,13 @@ exports[`Selectable table 1`] = ` - + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -79116,25 +86214,19 @@ exports[`Selectable table 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -79657,24 +86864,16 @@ exports[`Selectable table 1`] = ` > - + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -80214,24 +87528,16 @@ exports[`Selectable table 1`] = ` > - + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -80771,24 +88192,16 @@ exports[`Selectable table 1`] = ` > - + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -81328,24 +88856,16 @@ exports[`Selectable table 1`] = ` > - + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -81617,7 +89252,6 @@ exports[`Selectable table with Radio 1`] = ` >
- + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -86821,25 +94591,19 @@ exports[`Selectable table with Radio 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -87347,25 +95226,19 @@ exports[`Selectable table with Radio 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -87474,11 +95462,13 @@ exports[`Selectable table with Radio 1`] = ` - + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -88431,25 +96528,19 @@ exports[`Selectable table with Radio 1`] = ` } > - + + + - + + + + - + + + + - + + + + - + + + + @@ -88971,24 +97177,16 @@ exports[`Selectable table with Radio 1`] = ` > - + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -89527,24 +97840,16 @@ exports[`Selectable table with Radio 1`] = ` > - + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -90083,24 +98503,16 @@ exports[`Selectable table with Radio 1`] = ` > - + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -90639,24 +99166,16 @@ exports[`Selectable table with Radio 1`] = ` > - + + + - + + + - + + + + - + + + + - + + + + - + + + + @@ -90947,7 +99581,6 @@ exports[`Simple Actions table 1`] = ` >
@@ -82600,6 +90241,8 @@ exports[`Selectable table with Radio 1`] = ` data-label="Header cell" onMouseEnter={[Function]} scope="col" + textCenter={false} + tooltip="" >
- + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -97528,24 +106295,16 @@ exports[`Simple Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -98539,24 +107413,16 @@ exports[`Simple Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -99550,24 +108531,16 @@ exports[`Simple Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -100561,24 +109649,16 @@ exports[`Simple Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -101572,24 +110767,16 @@ exports[`Simple Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -102583,24 +111885,16 @@ exports[`Simple Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -103594,24 +113003,16 @@ exports[`Simple Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -104605,24 +114121,16 @@ exports[`Simple Actions table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + - + + + + + + + + + + + @@ -105419,74 +115042,18398 @@ exports[`Simple Actions table 1`] = ` "data-label": "Last Commit", }, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, - }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="9-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "disableActions": true, + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 9, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={9} + rowKey="9-row" + > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -96517,24 +105177,16 @@ exports[`Simple Actions table 1`] = ` >
+ + + + +`; + +exports[`Simple table aria-label 1`] = ` + + + + +
+ + +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Header cell + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + + + +`; + +exports[`Simple table caption 1`] = ` + + + + +
+ + + +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + - + + + + - + + + + - + + + + - - - - + five + + + @@ -106135,9 +133768,8 @@ exports[`Simple Actions table 1`] = `
+ Simple Table +
+ Header cell + + Branches + + Pull requests + + Workspaces + + Last Commit +
`; -exports[`Simple table aria-label 1`] = ` +exports[`Simple table header 1`] = ` + Header title + + } isStickyHeader={false} ouiaSafe={true} role="grid" @@ -106253,9 +133890,10 @@ exports[`Simple table aria-label 1`] = ` selectVariant="checkbox" variant={null} > +

+ Header title +

- + + + + - + + + + - + + + + - + + + + - + + + + @@ -110960,24 +138703,16 @@ exports[`Simple table aria-label 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -111418,24 +139248,16 @@ exports[`Simple table aria-label 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -111876,24 +139793,16 @@ exports[`Simple table aria-label 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -112334,24 +140338,16 @@ exports[`Simple table aria-label 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -112792,24 +140883,16 @@ exports[`Simple table aria-label 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -113250,24 +141428,16 @@ exports[`Simple table aria-label 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -113708,24 +141973,16 @@ exports[`Simple table aria-label 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -114166,24 +142518,16 @@ exports[`Simple table aria-label 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -114284,15 +142723,18 @@ exports[`Simple table aria-label 1`] = `
`; -exports[`Simple table caption 1`] = ` +exports[`Sortable table 1`] = `
- @@ -115243,6 +143750,8 @@ exports[`Simple table caption 1`] = ` data-label="Branches" onMouseEnter={[Function]} scope="col" + textCenter={false} + tooltip="" > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -118781,10 +147394,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -118792,6 +147405,7 @@ exports[`Simple table caption 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -118825,10 +147439,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -118869,10 +147483,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -118913,10 +147527,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -118957,10 +147571,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -119108,24 +147722,16 @@ exports[`Simple table caption 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -119239,10 +147940,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -119250,6 +147951,7 @@ exports[`Simple table caption 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -119283,10 +147985,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -119327,10 +148029,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -119371,10 +148073,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -119415,10 +148117,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -119566,24 +148268,16 @@ exports[`Simple table caption 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -119697,10 +148486,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -119708,6 +148497,7 @@ exports[`Simple table caption 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -119741,10 +148531,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -119785,10 +148575,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -119829,10 +148619,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -119873,10 +148663,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -120024,24 +148814,16 @@ exports[`Simple table caption 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -120155,10 +149032,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -120166,6 +149043,7 @@ exports[`Simple table caption 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -120199,10 +149077,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -120243,10 +149121,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -120287,10 +149165,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -120331,10 +149209,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -120482,24 +149360,16 @@ exports[`Simple table caption 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -120613,10 +149578,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -120624,6 +149589,7 @@ exports[`Simple table caption 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -120657,10 +149623,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -120701,10 +149667,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -120745,10 +149711,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -120789,10 +149755,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -120940,24 +149906,16 @@ exports[`Simple table caption 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -121071,10 +150124,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -121082,6 +150135,7 @@ exports[`Simple table caption 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -121115,10 +150169,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -121159,10 +150213,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -121203,10 +150257,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -121247,10 +150301,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -121398,24 +150452,16 @@ exports[`Simple table caption 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -121529,10 +150670,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -121540,6 +150681,7 @@ exports[`Simple table caption 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -121573,10 +150715,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -121617,10 +150759,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -121661,10 +150803,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -121705,10 +150847,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -121856,24 +150998,16 @@ exports[`Simple table caption 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -121987,10 +151216,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -121998,6 +151227,7 @@ exports[`Simple table caption 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -122031,10 +151261,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -122075,10 +151305,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -122119,10 +151349,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -122163,10 +151393,10 @@ exports[`Simple table caption 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -122314,24 +151544,16 @@ exports[`Simple table caption 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -122432,14 +151749,18 @@ exports[`Simple table caption 1`] = `
- Simple Table -
- Header cell + + +
`; -exports[`Simple table header 1`] = ` +exports[`Table variants Breakpoint - 1`] = ` - Header title - - } + gridBreakPoint="" isStickyHeader={false} ouiaSafe={true} role="grid" @@ -122554,11 +151870,8 @@ exports[`Simple table header 1`] = ` selectVariant="checkbox" variant={null} > -

- Header title -

@@ -123395,6 +152773,8 @@ exports[`Simple table header 1`] = ` data-label="Branches" onMouseEnter={[Function]} scope="col" + textCenter={false} + tooltip="" > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -126944,6 +156428,7 @@ exports[`Simple table header 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -127260,24 +156745,16 @@ exports[`Simple table header 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -127402,6 +156974,7 @@ exports[`Simple table header 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -127718,24 +157291,16 @@ exports[`Simple table header 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -127860,6 +157520,7 @@ exports[`Simple table header 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -128176,24 +157837,16 @@ exports[`Simple table header 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -128318,6 +158066,7 @@ exports[`Simple table header 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -128634,24 +158383,16 @@ exports[`Simple table header 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -128776,6 +158612,7 @@ exports[`Simple table header 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -129092,24 +158929,16 @@ exports[`Simple table header 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -129234,6 +159158,7 @@ exports[`Simple table header 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -129550,24 +159475,16 @@ exports[`Simple table header 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -129692,6 +159704,7 @@ exports[`Simple table header 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -130008,24 +160021,16 @@ exports[`Simple table header 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -130150,6 +160250,7 @@ exports[`Simple table header 1`] = ` "transforms": Array [ [Function], [Function], + [Function], ], }, "property": "header-cell", @@ -130466,24 +160567,16 @@ exports[`Simple table header 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -130584,7 +160772,7 @@ exports[`Simple table header 1`] = `
- Header cell + + +
`; -exports[`Sortable table 1`] = ` +exports[`Table variants Breakpoint - grid 1`] = `
- + + + + - + + + + - + + + + - + + + + - + + + + @@ -135148,10 +165440,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -135193,10 +165485,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -135237,10 +165529,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -135281,10 +165573,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -135325,10 +165617,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -135476,24 +165768,16 @@ exports[`Sortable table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -135607,10 +165986,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -135652,10 +166031,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -135696,10 +166075,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -135740,10 +166119,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -135784,10 +166163,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -135935,24 +166314,16 @@ exports[`Sortable table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -136066,10 +166532,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -136111,10 +166577,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -136155,10 +166621,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -136199,10 +166665,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -136243,10 +166709,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -136394,24 +166860,16 @@ exports[`Sortable table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -136525,10 +167078,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -136570,10 +167123,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -136614,10 +167167,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -136658,10 +167211,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -136702,10 +167255,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -136853,24 +167406,16 @@ exports[`Sortable table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -136984,10 +167624,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137029,10 +167669,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137073,10 +167713,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137117,10 +167757,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137161,10 +167801,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137312,24 +167952,16 @@ exports[`Sortable table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -137443,10 +168170,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137488,10 +168215,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137532,10 +168259,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137576,10 +168303,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137620,10 +168347,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137771,24 +168498,16 @@ exports[`Sortable table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -137902,10 +168716,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137947,10 +168761,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -137991,10 +168805,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -138035,10 +168849,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -138079,10 +168893,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -138230,24 +169044,16 @@ exports[`Sortable table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -138361,10 +169262,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -138406,10 +169307,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -138450,10 +169351,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -138494,10 +169395,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -138538,10 +169439,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -138689,24 +169590,16 @@ exports[`Sortable table 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -138807,7 +169795,7 @@ exports[`Sortable table 1`] = `
@@ -131607,6 +161796,8 @@ exports[`Sortable table 1`] = ` data-label="Branches" onMouseEnter={[Function]} scope="col" + textCenter={false} + tooltip="" >
`; -exports[`Table variants Breakpoint - 1`] = ` +exports[`Table variants Breakpoint - grid-2xl 1`] = `
- + + + + - + + + + - + + + + - + + + + - + + + + @@ -143696,24 +174791,16 @@ exports[`Table variants Breakpoint - 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -144155,24 +175337,16 @@ exports[`Table variants Breakpoint - 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -144614,24 +175883,16 @@ exports[`Table variants Breakpoint - 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -145073,24 +176429,16 @@ exports[`Table variants Breakpoint - 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -145532,24 +176975,16 @@ exports[`Table variants Breakpoint - 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -145991,24 +177521,16 @@ exports[`Table variants Breakpoint - 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -146450,24 +178067,16 @@ exports[`Table variants Breakpoint - 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -146909,24 +178613,16 @@ exports[`Table variants Breakpoint - 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -147027,7 +178818,7 @@ exports[`Table variants Breakpoint - 1`] = `
`; -exports[`Table variants Breakpoint - grid 1`] = ` +exports[`Table variants Breakpoint - grid-lg 1`] = `
- + + + + - + + + + - + + + + - + + + + - + + + + @@ -151916,24 +183814,16 @@ exports[`Table variants Breakpoint - grid 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -152375,24 +184360,16 @@ exports[`Table variants Breakpoint - grid 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -152834,24 +184906,16 @@ exports[`Table variants Breakpoint - grid 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -153293,24 +185452,16 @@ exports[`Table variants Breakpoint - grid 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -153752,24 +185998,16 @@ exports[`Table variants Breakpoint - grid 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -154211,24 +186544,16 @@ exports[`Table variants Breakpoint - grid 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -154670,24 +187090,16 @@ exports[`Table variants Breakpoint - grid 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -155129,24 +187636,16 @@ exports[`Table variants Breakpoint - grid 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -155247,7 +187841,7 @@ exports[`Table variants Breakpoint - grid 1`] = `
`; -exports[`Table variants Breakpoint - grid-2xl 1`] = ` +exports[`Table variants Breakpoint - grid-md 1`] = `
- + + + + - + + + + - + + + + - + + + + - + + + + @@ -160136,24 +192837,16 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -160595,24 +193383,16 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -161054,24 +193929,16 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -161513,24 +194475,16 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -161972,24 +195021,16 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -162431,24 +195567,16 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -162890,24 +196113,16 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -163349,24 +196659,16 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -163467,7 +196864,7 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = `
`; -exports[`Table variants Breakpoint - grid-lg 1`] = ` +exports[`Table variants Breakpoint - grid-xl 1`] = `
- + + + + - + + + + - + + + + - + + + + - + + + + @@ -168356,24 +201860,16 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -168815,24 +202406,16 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -169274,24 +202952,16 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -169733,24 +203498,16 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -170192,24 +204044,16 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -170651,24 +204590,16 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -171110,24 +205136,16 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -171569,24 +205682,16 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -171687,7 +205887,7 @@ exports[`Table variants Breakpoint - grid-lg 1`] = `
`; -exports[`Table variants Breakpoint - grid-md 1`] = ` +exports[`Table variants Size - compact 1`] = `
- + + + + - + + + + - + + + + - + + + + - + + + + @@ -176576,24 +210883,16 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -177035,24 +211429,16 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -177494,24 +211975,16 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -177953,24 +212521,16 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -178412,24 +213067,16 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -178871,24 +213613,16 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -179330,24 +214159,16 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -179789,24 +214705,16 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -179907,7 +214910,7 @@ exports[`Table variants Breakpoint - grid-md 1`] = `
`; -exports[`Table variants Breakpoint - grid-xl 1`] = ` +exports[`Table variants Size - compactBorderless 1`] = `
- + + + + - + + + + - + + + + - + + + + - + + + + @@ -184796,24 +219906,16 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -185255,24 +220452,16 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -185714,24 +220998,16 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -186173,24 +221544,16 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -186632,24 +222090,16 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -187091,24 +222636,16 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -187550,24 +223182,16 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -188009,24 +223728,16 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -188127,7 +223933,7 @@ exports[`Table variants Breakpoint - grid-xl 1`] = `
`; -exports[`Table variants Size - compact 1`] = ` +exports[`Table variants Size - compactExpandable 1`] = `
- + + + + - + + + + - + + + + - + + + + - + + + + @@ -193016,24 +228929,16 @@ exports[`Table variants Size - compact 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -193475,24 +229475,16 @@ exports[`Table variants Size - compact 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -193934,24 +230021,16 @@ exports[`Table variants Size - compact 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -194393,24 +230567,16 @@ exports[`Table variants Size - compact 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -194852,24 +231113,16 @@ exports[`Table variants Size - compact 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -195311,24 +231659,16 @@ exports[`Table variants Size - compact 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -195770,24 +232205,16 @@ exports[`Table variants Size - compact 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + @@ -196229,24 +232751,16 @@ exports[`Table variants Size - compact 1`] = ` > - + + + + - + + + + - + + + + - + + + + - + + + + diff --git a/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap b/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap index 836b3d2a6e7..214a2a946c4 100644 --- a/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap +++ b/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap @@ -125,7 +125,6 @@ exports[`Actions virtualized table 1`] = ` >
@@ -1466,7 +1492,6 @@ exports[`Selectable virtualized table 1`] = ` > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -4535,7 +4613,6 @@ exports[`Simple virtualized table aria-label 1`] = ` > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Date: Wed, 21 Oct 2020 16:31:08 -0400 Subject: [PATCH 11/29] wip --- .../src/components/BaseTable/BaseBodyCell.tsx | 43 +- .../components/BaseTable/BaseHeaderCell.tsx | 23 +- .../Table/examples/ComposableTable.md | 852 ++++++++++++++---- .../src/components/Table/examples/Table.md | 9 +- .../Table/utils/decorators/classNames.ts | 10 +- 5 files changed, 733 insertions(+), 204 deletions(-) diff --git a/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx b/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx index 86f8796fd19..5c0da43edab 100644 --- a/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx +++ b/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx @@ -14,9 +14,14 @@ import { IFormatterValueType, collapsible, IRowData, - IExtraData + IExtraData, + compoundExpand, + cellWidth, + Visibility, + classNames } from '../Table'; import { mergeProps } from '../Table/base/merge-props'; +import { IVisibility } from '../Table/utils/decorators/classNames'; import { DropdownDirection, DropdownPosition @@ -60,8 +65,10 @@ export interface BaseBodyCellProps extends Omit undefined; /** True to remove padding */ noPadding?: boolean; + /** Width percentage modifier */ + width?: 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 | 50 | 60 | 70 | 80 | 90 | 100; + /** Visibility breakpoint modifiers */ + visibility?: (keyof IVisibility)[]; /** Forwarded ref */ innerRef?: React.Ref; } @@ -95,8 +106,11 @@ const BaseBodyCellBase: React.FunctionComponent = ({ actionsDropdownPosition, actionsDropdownDirection, isExpanded = null, + isCompoundExpanded = null, onCollapse, noPadding, + width, + visibility, innerRef, ...props }: BaseBodyCellProps) => { @@ -161,11 +175,31 @@ const BaseBodyCellBase: React.FunctionComponent = ({ }) */ ) : null; + const compoundParams = isCompoundExpanded !== null + ? compoundExpand( + { + title: children, + props: { + isOpen: isCompoundExpanded + } + } as IFormatterValueType, + { + columnIndex, + rowIndex, + column: { + extraParams: {} + } + } + ) + : null; + const widthParams = width ? cellWidth(width)() : null; + const visibilityParams = visibility ? classNames(...visibility.map((vis: keyof IVisibility) => Visibility[vis]))() : null; const Component: any = (selectParams && selectParams.component) || component; const transformedChildren = (selectParams && selectParams.children) || (actionParams && actionParams.children) || (expandableParams && expandableParams.children) || + (compoundParams && compoundParams.children) || children; return ( = ({ selectParams && selectParams.className, actionParams && actionParams.className, expandableParams && expandableParams.className, - modifier && styles.modifiers[modifier as 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'] + compoundParams && compoundParams.className, + modifier && styles.modifiers[modifier as 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'], + widthParams && widthParams.className, + visibilityParams && visibilityParams.className )} ref={innerRef} {...props} diff --git a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx index 5d25297f0c7..1a114cc8c38 100644 --- a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx +++ b/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx @@ -9,8 +9,12 @@ import { IFormatterValueType, IColumn, ISortBy, - OnSort + OnSort, + cellWidth, + Visibility, + classNames } from '../Table'; +import { IVisibility } from '../Table/utils/decorators/classNames'; import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; export interface BaseHeaderCellProps extends Omit, 'onSelect'> { @@ -40,8 +44,6 @@ export interface BaseHeaderCellProps extends Omit; /** * Tooltip to show on the header cell * Note: If the header cell is truncated and has simple string content, it will already attempt to display the header text @@ -51,6 +53,12 @@ export interface BaseHeaderCellProps extends Omit void; + /** Width percentage modifier */ + width?: 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 | 50 | 60 | 70 | 80 | 90 | 100; + /** Visibility breakpoint modifiers */ + visibility?: (keyof IVisibility)[]; + /** Forwarded ref */ + innerRef?: React.Ref; } const BaseHeaderCellBase: React.FunctionComponent = ({ @@ -69,6 +77,8 @@ const BaseHeaderCellBase: React.FunctionComponent = ({ allRowsSelected, tooltip = '', onMouseEnter: onMouseEnterProp = () => {}, + width, + visibility, innerRef, ...props }: BaseHeaderCellProps) => { @@ -107,10 +117,11 @@ const BaseHeaderCellBase: React.FunctionComponent = ({ } }) : null; + const widthParams = width ? cellWidth(width)() : null; + const visibilityParams = visibility ? classNames(...visibility.map((vis: keyof IVisibility) => Visibility[vis]))() : null; const Component: any = (sortParams && sortParams.component) || (selectParams && selectParams.component) || component; const transformedChildren = (sortParams && sortParams.children) || (selectParams && selectParams.children) || children; - // const canShowTooltip = tooltip !== null && ((tooltip === '' && typeof children === 'string') || tooltip !== ''); const cell = ( = ({ textCenter && styles.modifiers.center, sortParams && sortParams.className, selectParams && selectParams.className, - modifier && styles.modifiers[modifier as 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'] + modifier && styles.modifiers[modifier as 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'], + widthParams && widthParams.className, + visibilityParams && visibilityParams.className )} {...props} > diff --git a/packages/react-table/src/components/Table/examples/ComposableTable.md b/packages/react-table/src/components/Table/examples/ComposableTable.md index cbdfdeaae27..b700cecefa7 100644 --- a/packages/react-table/src/components/Table/examples/ComposableTable.md +++ b/packages/react-table/src/components/Table/examples/ComposableTable.md @@ -4,56 +4,27 @@ cssPrefix: pf-c-table section: components propComponents: [ - 'Table', - 'TableHeader', - 'TableBody', - 'EditableSelectInputCell', - 'EditableTextCell', - 'RowErrors', - 'IHeaderRow', - 'IRowData', - 'IColumn', - 'IExtraRowData', - 'IExtraColumnData', - 'ISortBy', - 'IAction', - 'ISeparator', - 'ICell', - 'IRowCell', - 'IValidatorDef', - 'IRow', + 'BaseTable', + 'BaseTableCaption', + 'BaseTableHead', + 'BaseTableBody', + 'BaseTableHeaderRow', + 'BaseTableBodyRow', + 'BaseHeaderCell', + 'BaseBodyCell', ] ouia: true +beta: true --- Note: Table lives in its own package at [@patternfly/react-table](https://www.npmjs.com/package/@patternfly/react-table)! import { -Table, -TableHeader, -TableBody, -TableText, -sortable, -SortByDirection, -headerCol, -TableVariant, -expandable, -compoundExpand, -cellWidth, -textCenter, -wrappable, -truncate, -nowrap, -breakWord, -fitContent, classNames, Visibility, -getErrorTextByValidator, -cancelCellEdits, -validateCellEdits, -applyCellEdits, -EditableTextCell, -EditableSelectInputCell, +TableText, +HeaderCellInfoWrapper, +ExpandableRowContent, BaseTable, BaseTableCaption, BaseTableHead, @@ -61,9 +32,7 @@ BaseTableBody, BaseTableHeaderRow, BaseTableBodyRow, BaseHeaderCell, -BaseBodyCell, -HeaderCellInfoWrapper, -ExpandableRowContent +BaseBodyCell } from '@patternfly/react-table'; import { @@ -77,16 +46,18 @@ import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-ic import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; -import { css } from '@patternfly/react-styles'; -import styles from '@patternfly/react-styles/css/components/Table/table'; - import DemoSortableTable from './DemoSortableTable'; ## Composable table examples -### Composable: Basic, Row click handler, Custom row wrapper +### Composable: Basic + +A basic example using the Base\* table components. Some general notes: -```js +- Provide `dataLabel` prop to the `BaseBodyCell` components so that in mobile view the cell has a label to provide context. +- If you want a table caption, simply place a `My caption` as the first child within a `BaseTable`. + +```js isBeta import React from 'react'; import { BaseTable, @@ -96,10 +67,71 @@ import { BaseTableBodyRow, BaseHeaderCell, BaseBodyCell, - HeaderCellInfoWrapper + BaseTableCaption } from '@patternfly/react-table'; ComposableTableBasic = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'three', 'four', 'five'], + ['one - 2', null, null, 'four - 2', 'five - 2'], + ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3'] + ]); + return ( + + Simple table using composable components + + + {columns.map((column, columnIndex) => ( + {column} + ))} + + + + {data.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + ))} + + + ); +}; +``` + +### Composable: Row click handler, Custom row wrapper, header tooltips & popovers + +This example demonstrates customizing rows, adding tooltip and popover information to header items, and some other misc. props. + +- You can wrap the header cell contents in a `HeaderCellInfoWrapper` component to give it a tooltip or popover +- If you add the `noWrap` prop to `BaseTableHead`, it won't wrap it if there is no space +- You can add the `textCenter` prop to `BaseHeaderCell` or `BaseBodyCell` to center the contents +- You can pass `onClick`, `className`, `style` and more to `BaseTableBodyRow` + +```js isBeta +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + HeaderCellInfoWrapper +} from '@patternfly/react-table'; + +ComposableTableMisc = () => { const [columns, setColumns] = React.useState([ 'Repositories', 'Branches', @@ -112,7 +144,7 @@ ComposableTableBasic = () => { ['one - 2', null, null, 'four - 2', 'five - 2'], ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3 (not centered)'] ]); - // map additional configuration to the data + // map additional configuration to the incoming data anyway you want to // key: row_column const dataConfig = { '1_0': { @@ -127,10 +159,10 @@ ComposableTableBasic = () => { console.log(`handle row click ${rowIndex}`, row); }; return ( - + - + { {columns[0]} - - {columns[1]} - - + {columns[1]} + { {columns[2]} - - {columns[3]} - - - {columns[4]} - + {columns[3]} + {columns[4]} @@ -211,7 +237,9 @@ ComposableTableBasic = () => { ### Composable: Sortable, Sortable with wrapping headers -```js +This example demonstrates making columns sortable, and wrapping header text. For sorting it is also important to pass the `columnIndex` to the `BaseHeaderCell`. + +```js isBeta import React from 'react'; import { BaseTable, @@ -220,8 +248,7 @@ import { BaseTableHeaderRow, BaseTableBodyRow, BaseHeaderCell, - BaseBodyCell, - HeaderCellInfoWrapper + BaseBodyCell } from '@patternfly/react-table'; ComposableTableSortable = () => { @@ -241,7 +268,7 @@ ComposableTableSortable = () => { const [activeSortIndex, setActiveSortIndex] = React.useState(-1); // sort direction of the currently active column const [activeSortDirection, setActiveSortDirection] = React.useState('none'); - const onSort = (event, index, direction, extraData) => { + const onSort = (event, index, direction) => { setActiveSortIndex(index); setActiveSortDirection(direction); // sorts the row data @@ -266,46 +293,32 @@ ComposableTableSortable = () => { - - {columns[0]} - - - {columns[1]} - - - {columns[2]} - - - {columns[3]} - - - {columns[4]} - + {columns.map((column, columnIndex) => { + // In this example, wrap all but the first column just to demonstrate + const modifier = columnIndex !== 0 ? 'wrap' : null; + // In this example, make the 1st and 3rd columns sortable + const sortParams = + columnIndex === 0 || columnIndex === 2 + ? { + activeSortIndex, + activeSortDirection, + onSort, + columnIndex + } + : {}; + return ( + + {column} + + ); + })} {data.map((row, rowIndex) => ( {row.map((cell, cellIndex) => ( - + {cell} ))} @@ -319,7 +332,10 @@ ComposableTableSortable = () => { ### Composable: Selectable -```js +This example demonstrates row selection. The selection column is just another column, but with selection specific props added. We add it as the first header cell and also as the first body cell for each row. +Be sure to also add `columnIndex` to `BaseHeaderCell` and `columnIndex` as well as `rowIndex` to `BaseBodyCell`. + +```js isBeta import React from 'react'; import { BaseTable, @@ -328,8 +344,7 @@ import { BaseTableHeaderRow, BaseTableBodyRow, BaseHeaderCell, - BaseBodyCell, - HeaderCellInfoWrapper + BaseBodyCell } from '@patternfly/react-table'; ComposableTableSelectable = () => { @@ -414,7 +429,9 @@ ComposableTableSelectable = () => { ### Composable: Selectable radio input -```js +Similarly to the selectable example above, the radio buttons use the first column. The first header cell is empty, and each body row's first cell has radio button props. Just as with selectable, be sure to also add `columnIndex` to `BaseHeaderCell` and `columnIndex` as well as `rowIndex` to `BaseBodyCell`. + +```js isBeta import React from 'react'; import { BaseTable, @@ -423,8 +440,7 @@ import { BaseTableHeaderRow, BaseTableBodyRow, BaseHeaderCell, - BaseBodyCell, - HeaderCellInfoWrapper + BaseBodyCell } from '@patternfly/react-table'; ComposableTableSelectableRadio = () => { @@ -490,7 +506,9 @@ ComposableTableSelectableRadio = () => { ### Composable: Actions -```js +This example demonstrates adding actions as the last column. The header's last cell is an empty cell, and each body row's last cell is an action cell. + +```js isBeta import React from 'react'; import { BaseTable, @@ -499,8 +517,7 @@ import { BaseTableHeaderRow, BaseTableBodyRow, BaseHeaderCell, - BaseBodyCell, - HeaderCellInfoWrapper + BaseBodyCell } from '@patternfly/react-table'; ComposableTableActions = () => { @@ -588,7 +605,9 @@ ComposableTableActions = () => { ### Composable: Compact, Compact borderless -```js +You can set the `BaseTable` variant to `compact` or `compactBorderless`. + +```js isBeta import React from 'react'; import { BaseTable, @@ -597,8 +616,7 @@ import { BaseTableHeaderRow, BaseTableBodyRow, BaseHeaderCell, - BaseBodyCell, - HeaderCellInfoWrapper + BaseBodyCell } from '@patternfly/react-table'; import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; @@ -639,18 +657,16 @@ ComposableTableCompact = () => { - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} + {columns.map((column, columnIndex) => ( + {column} + ))} {data.map((row, rowIndex) => ( {row.map((cell, cellIndex) => ( - + {cell} ))} @@ -665,7 +681,12 @@ ComposableTableCompact = () => { ### Composable: Expandable -```js +This example demonstrates having expandable rows. + +- Each parent/child row pair is enclosed in a `BaseTableBody` component. +- You can make the table more compact by setting the `BaseTable` variant to `compactExpandable`. + +```js isBeta import React from 'react'; import { BaseTable, @@ -675,7 +696,6 @@ import { BaseTableBodyRow, BaseHeaderCell, BaseBodyCell, - HeaderCellInfoWrapper, ExpandableRowContent } from '@patternfly/react-table'; import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; @@ -689,22 +709,30 @@ ComposableTableExpandable = () => { 'Last commit' ]); const [data, setData] = React.useState([ - ['one', 'two', 'a', 'four', 'five'], - ['parent 1', 'two', 'k', 'four', 'five'], - ['parent 2', 'two', 'b', 'four', 'five'], - ['parent 3', '2', 'b', 'four', 'five'], - ['parent 4', '2', 'b', 'four', 'five'], - ['parent 5', '2', 'b', 'four', 'five'], - ['parent 6', '2', 'b', 'four', 'five'] - ]); - // key = row index it corresponds to - const childData = { - '1': { cells: ['single cell'] }, - '2': { cells: ['single cell - fullWidth'], fullWidth: true }, - '3': { cells: ['single cell - noPadding'], noPadding: true }, - '4': { cells: ['single cell - fullWidth & noPadding'], fullWidth: true, noPadding: true }, - '5': { - cells: [ + { parent: ['one', 'two', 'a', 'four', 'five'], child: null }, + { + parent: ['parent 1', 'two', 'k', 'four', 'five'], + child: ['single cell'] + }, + { + parent: ['parent 2', 'two', 'b', 'four', 'five'], + child: ['single cell - fullWidth'], + fullWidth: true + }, + { + parent: ['parent 3', '2', 'b', 'four', 'five'], + child: ['single cell - noPadding'], + noPadding: true + }, + { + parent: ['parent 4', '2', 'b', 'four', 'five'], + child: ['single cell - fullWidth & noPadding'], + fullWidth: true, + noPadding: true + }, + { + parent: ['parent 5', '2', 'b', 'four', 'five'], + child: [ { title: "spans 'Repositories' and 'Branches'", props: { @@ -719,8 +747,9 @@ ComposableTableExpandable = () => { } ] }, - '6': { - cells: [ + { + parent: ['parent 6', '2', 'b', 'four', 'five'], + child: [ { title: "fullWidth, spans the collapsible column and 'Repositories'", props: { @@ -737,17 +766,22 @@ ComposableTableExpandable = () => { ], fullWidth: true } - }; - const numColumns = data[0].length; + ]); + const numColumns = columns.length; // Init all to true - const [expanded, setExpanded] = React.useState( - Object.fromEntries(Object.entries(childData).map(([k, v]) => [k, true])) - ); + const [expanded, setExpanded] = React.useState(Object.fromEntries(Object.entries(data).map(([k, v]) => [k, true]))); const [variant, setVariant] = React.useState(null); const handleItemClick = (isSelected, event) => { const id = event.currentTarget.id; setVariant(id === 'default' ? null : id); }; + const handleExpansionToggle = rowIndex => { + setExpanded({ + ...expanded, + [rowIndex]: !expanded[rowIndex] + }); + }; + let rowIndex = -1; return ( @@ -773,58 +807,506 @@ ComposableTableExpandable = () => { {columns[4]} - {data.map((row, rowIndex) => ( - - - + {data.map((pair, pairIndex) => { + rowIndex += 1; + const parentRow = ( + + handleExpansionToggle(pairIndex)} + /> + {pair.parent.map((cell, cellIndex) => ( - {row.map((cell, cellIndex) => ( + columnIndex={cellIndex + 1} + dataLabel={columns[cellIndex]} + > + {cell} + + ))} + + ); + if (pair.child) { + rowIndex += 1; + } + const childRow = pair.child ? ( + + {!data[pairIndex].fullWidth && } + {data[pairIndex].child.map((cell, cellIndex) => { + const shift = data[pairIndex].fullWidth ? 1 : 0; + const shiftedCellIndex = cellIndex + shift; + return ( - {cell} + {cell.title || cell} - ))} - - {childData[rowIndex] && ( - - {!childData[rowIndex].fullWidth && } - {childData[rowIndex].cells.map((cell, cellIndex) => { - const shift = childData[rowIndex].fullWidth ? 1 : 0; - const shiftedCellIndex = cellIndex + shift; - return ( - + ) : null; + return ( + + + {parentRow} + {childRow} + + + ); + })} + + + ); +}; +``` + +### Composable: Compound expandable + +```js isBeta +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + ExpandableRowContent +} from '@patternfly/react-table'; + +import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; +import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; +import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; + +// https://github.com/patternfly/patternfly-react/blob/master/packages/react-table/src/components/Table/demo/DemoSortableTable.js +import DemoSortableTable from './demo/DemoSortableTable'; + +ComposableCompoundExpandableTable = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit', + '' + ]); + const [data, setData] = React.useState([ + ['siemur/test-space', 10, 4, 4, '20 minutes', 'Open in Github'], + ['siemur/test-space', 3, 4, 2, '10 minutes', 'Open in Github'] + ]); + const [activeChild, setActiveChild] = React.useState('0_1'); + // key = row_col of the parent it corresponds to + const childData = { + '0_1': { + component: ( + + ) + }, + '0_2': { + component: ( + + ) + }, + '0_3': { + component: ( + + ) + }, + '1_1': { + component: ( + + ) + }, + '1_2': { + component: ( + + ) + }, + '1_3': { + component: ( + + ) + } + }; + const customRender = (cell, index) => { + if (index === 0) { + return {cell}; + } else if (index === 1) { + return ( + + {cell} + + ); + } else if (index === 2) { + return ( + + {cell} + + ); + } else if (index === 3) { + return ( + + {cell} + + ); + } else if (index === 5) { + return {cell}; + } + return cell; + }; + const isCompoundExpanded = (rowIndex, cellIndex) => { + // only columns 1 - 3 are compound expansion toggles in this example + if (1 <= cellIndex && cellIndex <= 3) { + return activeChild === `${rowIndex}_${cellIndex}`; + } + return null; + }; + return ( + + + + + {columns.map((column, columnIndex) => ( + + {column} + + ))} + + + {data.map((row, rowIndex) => { + const isRowExpanded = activeChild && activeChild.split('_')[0] === `${rowIndex}`; + return ( + + + + {row.map((cell, cellIndex) => ( + { + // only columns 1 - 3 are clickable + if (1 <= cellIndex && cellIndex <= 3) { + const current = `${rowIndex}_${cellIndex}`; + if (activeChild === current) { + // closing the expansion on the current toggle + setActiveChild(null); + } else { + // expanding + setActiveChild(current); + } } - > - {cell.title || cell} - - ); - })} + }} + > + {customRender(cell, cellIndex)} + + ))} - )} - - + {isRowExpanded && ( + + + {childData[activeChild].component} + + + )} + + + ); + })} + + + ); +}; +``` + +### Composable: Cell width, breakpoint modifiers + +```js isBeta +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell +} from '@patternfly/react-table'; + +ComposableTableCellWidth = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + const [data, setData] = React.useState([ + ['one', 'two', 'three', 'four', 'five'], + ['one - 2', null, null, 'four - 2', 'five - 2'], + ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3'] + ]); + return ( + + + + {columns.map((column, columnIndex) => ( + + {column} + + ))} + + + + {data.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + ))} + + + ); +}; +``` + +### Composable: Controlling text + +```js isBeta +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell +} from '@patternfly/react-table'; + +ComposableControllingText = () => { + const [columns, setColumns] = React.useState([ + 'Truncate (width 20%)', + 'Break word', + 'Wrapping table header text. This th text will wrap instead of truncate.', + 'Fit content', + 'No wrap' + ]); + const [data, setData] = React.useState([ + [ + 'This text will truncate instead of wrap.', + http://thisisaverylongurlthatneedstobreakusethebreakwordmodifier.org, +

+ By default, + thead cells will truncate and + tbody cells will wrap. Use + .pf-m-wrap on ath to change its behavior. +

, + "This cell's content will adjust itself to the parent th width. This modifier only affects table layouts.", + No wrap + ] + ]); + return ( + + + + + {columns[0]} + + {columns[1]} + + {columns[2]} + + + {columns[3]} + + {columns[4]} + + + + {data.map((row, rowIndex) => ( + + + {row[0]} + + + {row[1]} + + {row[2]} + {row[3]} + + {row[4]} + + + ))} + + + ); +}; +``` + +### Composable: Modifiers with table text + +```js isBeta +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + TableText +} from '@patternfly/react-table'; + +ComposableTableText = () => { + const [columns, setColumns] = React.useState([ + 'Truncating text', + 'Wrapping table header text. This th text will wrap instead of truncate.' + ]); + const [data, setData] = React.useState([ + [ + This text will truncate instead of wrap., + + This is a link that needs to be on one line and fully readable. + + ] + ]); + return ( + + + + + {columns[0]} + + {columns[1]} + + + + {data.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + ))} + + + ); +}; +``` + +### Composable: Empty state + +```js isBeta +import React from 'react'; +import { + BaseTable, + BaseTableHead, + BaseTableBody, + BaseTableHeaderRow, + BaseTableBodyRow, + BaseHeaderCell, + BaseBodyCell, + BaseTableCaption, + Button, + EmptyState, + EmptyStateBody, + EmptyStatePrimary, + Bullseye, + Title, + EmptyStateIcon +} from '@patternfly/react-table'; + +ComposableEmptyState = () => { + const [columns, setColumns] = React.useState([ + 'Repositories', + 'Branches', + 'Pull requests', + 'Workspaces', + 'Last commit' + ]); + return ( + + + Empty State Table Example + + + {columns.map((column, columnIndex) => ( + + {column} + + ))} + + + + + + No results found + + + No results match the filter criteria. Remove all filters or clear all filters to show results. + + + ); }; diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index dcf0c3cca5d..0891af290fb 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -1314,10 +1314,7 @@ class WidthTable extends React.Component { 'Branches', { title: 'Pull requests', transforms: [cellWidth(30)] }, 'Workspaces', - { - title: 'Last commit', - transforms: [cellWidth('max')] - } + { title: 'Last commit' } ], rows: [['one', 'two', 'three', 'four', 'five']] }; @@ -1350,13 +1347,13 @@ class HiddenVisibleBreakpointTable extends React.Component { { title: 'Repositories', columnTransforms: [ - classNames(Visibility.hidden, Visibility.visibleOnMd, Visibility.hiddenOnLg, Visibility.visibleOn_2xl) + classNames(Visibility.hidden, Visibility.visibleOnMd, Visibility.hiddenOnLg, Visibility.visibleOn2Xl) ] }, 'Branches', { title: 'Pull requests', - columnTransforms: [classNames(Visibility.hiddenOnMd, Visibility.visibleOnLg, Visibility.hiddenOn_2xl)] + columnTransforms: [classNames(Visibility.hiddenOnMd, Visibility.visibleOnLg)] }, 'Workspaces', { diff --git a/packages/react-table/src/components/Table/utils/decorators/classNames.ts b/packages/react-table/src/components/Table/utils/decorators/classNames.ts index 07149457d90..367955dbf65 100644 --- a/packages/react-table/src/components/Table/utils/decorators/classNames.ts +++ b/packages/react-table/src/components/Table/utils/decorators/classNames.ts @@ -8,15 +8,15 @@ const visibilityModifiers = [ 'hiddenOnMd', 'hiddenOnLg', 'hiddenOnXl', - 'hiddenOn2xl', + 'hiddenOn_2xl', 'visibleOnSm', 'visibleOnMd', 'visibleOnLg', 'visibleOnXl', - 'visibleOn2xl' + 'visibleOn_2xl' ] as (keyof typeof styles.modifiers)[]; -interface Visibility { +export interface IVisibility { hidden?: string; hiddenOnSm?: string; hiddenOnMd?: string; @@ -33,10 +33,10 @@ interface Visibility { export const Visibility = visibilityModifiers .filter(key => styles.modifiers[key]) .reduce((acc, curr) => { - const key2 = curr.replace('2xl', '2Xl') as keyof typeof Visibility; + const key2 = curr.replace('_2xl', '2Xl') as keyof typeof Visibility; acc[key2] = styles.modifiers[curr]; return acc; - }, {} as Visibility); + }, {} as IVisibility); export const classNames = (...classes: string[]): ITransform => () => ({ className: css(...classes) From 92b4a415f5791c81017f780d6789721e63970deb Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Wed, 21 Oct 2020 16:42:36 -0400 Subject: [PATCH 12/29] snapshots --- .../Table/__snapshots__/Table.test.tsx.snap | 342401 ++++++++------- 1 file changed, 193625 insertions(+), 148776 deletions(-) diff --git a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap index 113c38915fb..347cc041652 100644 --- a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap +++ b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap @@ -125,7 +125,7 @@ exports[`Actions table 1`] = ` > - - - +
-
- + -
- - - + - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - + + - Some action - , - + + + + + + -
- Another action -
- , - +
+ + + + + , - + + + + + + + - Third action - , - ] - } - isGrouped={false} - isOpen={false} - isPlain={true} - menuAppendTo="inline" - onSelect={[Function]} - position="right" - toggle={ - - } - > -
- +
+ + + + - - - , - } - } + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + - Another action - , + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "isSeparator": true, - "onClick": null, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title": "Third action", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ] + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, } - rowData={ + } + rowIndex={1} + rowKey="1-row" + > + - - Some action - , - -
- Another action -
-
, - , - - Third action - , - ] - } - isOpen={false} - isPlain={true} - position="right" - toggle={ - + rowProps={ + Object { + "rowIndex": 1, + "rowKey": "1-row", } + } + > + - +
+ + - Some action - , - + + + + + + -
- Another action -
- , - +
+ + + + + , - - Third action - , - ] - } - isGrouped={false} - isOpen={false} - isPlain={true} - menuAppendTo="inline" - onSelect={[Function]} - position="right" - toggle={ - - } - > -
- +
+ + + + - - - , - } - } + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + - Another action - , + "data": undefined, + "extraParams": Object { + "actionResolver": [Function], + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": [Function], + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, }, - Object { - "isSeparator": true, - "onClick": null, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], }, - Object { - "onClick": [Function], - "title": "Third action", + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", }, - ] - } - rowData={ + }, Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", + "data": undefined, + "extraParams": Object { + "actionResolver": [Function], + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": [Function], + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, }, - "id": 8, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "last-commit": Object { + "header": Object { "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "five", + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "three", + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "four", + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": [Function], + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": [Function], + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": [Function], + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": [Function], + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": [Function], + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": [Function], + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": [Function], + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": [Function], + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="2-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={2} + rowKey="2-row" + > + - + + + - Some action - , - + + + + + + -
- Another action -
- , - + +
+ + + + , - + + + + + + + + + + + + + + + + + + + + + - Third action - , - ] + + + + + + + + + + + + + + } + rowProps={ + Object { + "rowIndex": 3, + "rowKey": "3-row", } + } + > + - + + + - Some action - , - + + + + + + -
- Another action -
- , - +
+ + + + + , - + + + + + + + - Third action - , - ] - } - isGrouped={false} - isOpen={false} - isPlain={true} - menuAppendTo="inline" - onSelect={[Function]} - position="right" - toggle={ - - } - > -
- +
+ + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - -
- - + + + + - Branches - - Pull requests - - Workspaces - - Last Commit - - -
+ Branches + + Pull requests + + Workspaces + + Last Commit + + + + +
- - Another action - , + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "isSeparator": true, - "onClick": null, + "title": "one", + }, + "id": 0, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title": "Third action", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ] + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, } - rowData={ + } + rowIndex={0} + rowKey="0-row" + > + - - Some action - , - -
- Another action -
-
, - , - - Third action - , - ] - } - isOpen={false} - isPlain={true} - position="right" - toggle={ - + rowProps={ + Object { + "rowIndex": 0, + "rowKey": "0-row", } + } + > + - +
-
-
-`; - -exports[`Cell header table 1`] = ` - + Some action + , + +
+ Another action +
+
, + , + + Third action + , + ] + } + isOpen={false} + isPlain={true} + position="right" + toggle={ + + } + > + + Some action + , + +
+ Another action +
+
, + , + + Third action + , + ] + } + isGrouped={false} + isOpen={false} + isPlain={true} + menuAppendTo="inline" + onSelect={[Function]} + position="right" + toggle={ + + } + > +
+ + +
, + } + } + > + + + , + } + } + > + + +
+ +
+ + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+`; + +exports[`Cell header table 1`] = ` + -
- - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
- two - - three - - four - - five -
- two - - three - - four - + +
- two - - three - - four - - five -
- two - - three - - four - - five -
- two - - three - - four - - five -
+ + +
+
+
`; @@ -19989,7 +22502,7 @@ exports[`Collapsible nested table 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + + + + + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
- two - - three - - four - - five -
-
- one -
-
- two - - three - - four - - five -
+ + +
+
+
`; @@ -29242,7 +33249,7 @@ exports[`Collapsible table 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + + + + + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
-
- one -
-
- two - - three - - four - + +
-
- one -
-
- two - - three - - four - - five -
+ + + + + + + + + + + + + + + + +
+ one +
+ +
+
+
+ + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + +
+
+ + + + + + + + + + + + +
`; @@ -38368,7 +43852,7 @@ exports[`Compound Expandable table 1`] = ` > - - - +
-
- + -
- - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + + + - expanded - - - - - - - - - - - - -
- col1 - - col2 -
+ col1 + + col2 +
+ + + + + + + + + expanded + + + + + + + + + + + + + + + + + + + + +
`; @@ -40911,7 +46708,7 @@ exports[`Control text table 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - -
- Header cell - - new object column - - Pull requests - - new object column - - Last Commit -
+ Header cell + + new object column + + Pull requests + + new object column + + Last Commit +
- four - - three - - four - + +
+ + + + + + + +
+ one +
+ +
+
+
+ + + + + four + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + +
+
+ + + + + + + + + + + + +
`; @@ -48472,7 +55482,7 @@ exports[`Editable table 1`] = ` className="pf-c-inline-edit" > - - - - -
- + + +
- Editable Table -
+ + + - - - - - - - - - - - - - - - - - - - - - - - - - - , - }, - "id": 0, - "isEditable": true, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell1", - "value": "Row 1 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell3", - "value": "Row 1 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", - }, - "title": , - }, - }, - Object { - "cells": Array [ - Object { - "props": Object { - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": [Function], - }, - ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": , - }, - "id": 1, - "isEditable": false, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": , - }, - }, - ] - } - onRow={[Function]} - rowKey="id" - rows={ - Array [ - Object { - "cells": Array [ - Object { - "props": Object { - "name": "uniqueIdRow1Cell1", - "value": "Row 1 cell 1 content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow1Cell2", - "value": "Row 1 cell 2, disabled content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow1Cell3", - "value": "Row 1 cell 3 content", - }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", - }, - "title": [Function], - }, - ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell2", - "value": "Row 1 cell 2, disabled content", - }, - "title": , - }, - "id": 0, - "isEditable": true, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell1", - "value": "Row 1 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell3", - "value": "Row 1 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", - }, - "title": , - }, - }, - Object { - "cells": Array [ - Object { - "props": Object { - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "text-input-col-4", + "props": Object { + "data-key": 3, + "data-label": "Text input col 4", + }, }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": [Function], + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "column-4", + "props": Object { + "data-key": 4, + "data-label": "", + }, }, - "title": [Function], - }, + ] + } + headerRows={null} + renderers={ Object { - "props": Object { - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", + "body": Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", + "header": Object { + "cell": [Function], + "row": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHeaderRow", + "render": [Function], + }, + "wrapper": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHead", + "render": [Function], + }, }, - "title": [Function], - }, - ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": , - }, - "id": 1, - "isEditable": false, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": , - }, - }, - ] - } - > - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + , - }, - "id": 0, "isEditable": true, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell1", - "value": "Row 1 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell3", - "value": "Row 1 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", - }, - "title": , - }, }, Object { "cells": Array [ @@ -50504,378 +56783,271 @@ exports[`Editable table 1`] = ` "title": [Function], }, ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": , - }, - "id": 1, "isEditable": false, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": , - }, }, ] } - onRow={[Function]} - renderers={ - Object { - "body": Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - }, - "header": Object { - "cell": [Function], - "row": "tr", - "wrapper": "thead", - }, - "table": "table", - } - } - rowKey="id" - rows={ - Array [ - Object { - "cells": Array [ - Object { - "props": Object { - "name": "uniqueIdRow1Cell1", - "value": "Row 1 cell 1 content", + > + , }, - Object { + "id": 0, + "isEditable": true, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell1", + "value": "Row 1 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], "props": Object { + "isVisible": true, "name": "uniqueIdRow1Cell3", "value": "Row 1 cell 3 content", }, - "title": [Function], + "title": , }, - Object { + "text-input-col-4": Object { + "formatters": Array [], "props": Object { + "isVisible": true, "name": "uniqueIdRow1Cell4", "value": "Row 1 cell 4 content", }, - "title": [Function], - }, - ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell2", - "value": "Row 1 cell 2, disabled content", - }, - "title": , - }, - "id": 0, - "isEditable": true, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell1", - "value": "Row 1 cell 1 content", + rowIndex={0} + value="Row 1 cell 4 content" + />, }, - "title": , }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell3", - "value": "Row 1 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", + rowIndex={1} + value="Row 2 cell 2, disabled content" + />, }, - "title": , - }, - }, - Object { - "cells": Array [ - Object { + "id": 1, + "isEditable": false, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "text-input-col-1": Object { + "formatters": Array [], "props": Object { + "isVisible": true, "name": "uniqueIdRow2Cell1", "value": "Row 2 cell 1 content", }, - "title": [Function], - }, - Object { - "props": Object { - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": [Function], + "title": , }, - Object { + "text-input-col-3": Object { + "formatters": Array [], "props": Object { + "isVisible": true, "name": "uniqueIdRow2Cell3", "value": "Row 2 cell 3 content", }, - "title": [Function], + "title": , }, - Object { + "text-input-col-4": Object { + "formatters": Array [], "props": Object { + "isVisible": true, "name": "uniqueIdRow2Cell4", "value": "Row 2 cell 4 content", }, - "title": [Function], - }, - ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": , - }, - "id": 1, - "isEditable": false, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", + rowIndex={1} + value="Row 2 cell 4 content" + />, }, - "title": , }, - }, - ] - } - > - , + }, + }, + Object { + "cells": Array [ + Object { + "props": Object { + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", + }, + "title": [Function], + }, + Object { + "props": Object { + "name": "uniqueIdRow2Cell2", + "value": "Row 2 cell 2, disabled content", + }, + "title": [Function], + }, + Object { + "props": Object { + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": [Function], + }, + Object { + "props": Object { + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", + }, + "title": [Function], + }, + ], + "disabled-text-input-col-2": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell2", + "value": "Row 2 cell 2, disabled content", + }, + "title": , + }, + "id": 1, + "isEditable": false, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", + }, + "title": , + }, + }, + ] + } + > + , - }, - }, - Object { - "cells": Array [ - Object { + }, + "title": [Function], + }, + ], + "disabled-text-input-col-2": Object { + "formatters": Array [], "props": Object { - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", + "isVisible": true, + "name": "uniqueIdRow1Cell2", + "value": "Row 1 cell 2, disabled content", }, - "title": [Function], + "title": , }, - Object { + "id": 0, + "isEditable": true, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "text-input-col-1": Object { + "formatters": Array [], "props": Object { - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", + "isVisible": true, + "name": "uniqueIdRow1Cell1", + "value": "Row 1 cell 1 content", }, - "title": [Function], + "title": , }, - Object { + "text-input-col-3": Object { + "formatters": Array [], "props": Object { - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", + "isVisible": true, + "name": "uniqueIdRow1Cell3", + "value": "Row 1 cell 3 content", }, - "title": [Function], + "title": , }, - Object { + "text-input-col-4": Object { + "formatters": Array [], "props": Object { - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", + "isVisible": true, + "name": "uniqueIdRow1Cell4", + "value": "Row 1 cell 4 content", }, - "title": [Function], - }, - ], - "disabled-text-input-col-2": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell2", - "value": "Row 2 cell 2, disabled content", - }, - "title": , - }, - "id": 1, - "isEditable": false, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", + rowIndex={0} + value="Row 1 cell 4 content" + />, }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": , - }, - }, - ] - } - > - - , }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": undefined, - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": [Function], - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Text input col 3", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "text-input-col-3", + "id": 1, + "isEditable": false, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "text-input-col-1": Object { + "formatters": Array [], "props": Object { - "data-key": 2, - "data-label": "Text input col 3", + "isVisible": true, + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", }, + "title": , }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": undefined, - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": [Function], - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Text input col 4", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "text-input-col-4", + "text-input-col-3": Object { + "formatters": Array [], "props": Object { - "data-key": 3, - "data-label": "Text input col 4", + "isVisible": true, + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", }, + "title": , }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": undefined, - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": [Function], - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "column-4", + "text-input-col-4": Object { + "formatters": Array [], "props": Object { - "data-key": 4, - "data-label": "", + "isVisible": true, + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", }, + "title": , }, - ] - } - key="0-row" - onRow={[Function]} - renderers={ - Object { + }, + ] + } + onRow={[Function]} + renderers={ + Object { + "body": Object { "cell": [Function], "row": [Function], "wrapper": [Function], - } + }, + "header": Object { + "cell": [Function], + "row": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHeaderRow", + "render": [Function], + }, + "wrapper": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHead", + "render": [Function], + }, + }, + "table": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTable", + "render": [Function], + }, } - rowData={ + } + rowKey="id" + rows={ + Array [ Object { "cells": Array [ Object { @@ -51468,40 +57914,165 @@ exports[`Editable table 1`] = ` "value": "Row 1 cell 3 content", } } - rowIndex={0} - value="Row 1 cell 3 content" + rowIndex={0} + value="Row 1 cell 3 content" + />, + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell4", + "value": "Row 1 cell 4 content", + }, + "title": , + }, + }, + Object { + "cells": Array [ + Object { + "props": Object { + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", + }, + "title": [Function], + }, + Object { + "props": Object { + "name": "uniqueIdRow2Cell2", + "value": "Row 2 cell 2, disabled content", + }, + "title": [Function], + }, + Object { + "props": Object { + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": [Function], + }, + Object { + "props": Object { + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", + }, + "title": [Function], + }, + ], + "disabled-text-input-col-2": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell2", + "value": "Row 2 cell 2, disabled content", + }, + "title": , + }, + "id": 1, + "isEditable": false, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": , }, "text-input-col-4": Object { "formatters": Array [], "props": Object { "isVisible": true, - "name": "uniqueIdRow1Cell4", - "value": "Row 1 cell 4 content", + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", }, "title": , }, - } - } - rowIndex={0} - rowKey="0-row" - > - + , }, - } - } - rowProps={ - Object { - "rowIndex": 0, - "rowKey": "0-row", - } - } - > - - - - - - - - - - - - - - - - - - - - , - }, - "id": 1, - "isEditable": false, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": true, - "isLastVisible": true, - "text-input-col-1": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell1", - "value": "Row 2 cell 1 content", - }, - "title": , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": , - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": , }, - } - } - rowIndex={1} - rowKey="1-row" - > - , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", + }, + "title": , + }, + }, + ] + } + > + + + + , - }, - "text-input-col-3": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell3", - "value": "Row 2 cell 3 content", - }, - "title": , + }, + "id": 0, + "isEditable": true, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell1", + "value": "Row 1 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell3", + "value": "Row 1 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell4", + "value": "Row 1 cell 4 content", + }, + "title": , + }, } - rowIndex={1} - value="Row 2 cell 3 content" - />, - }, - "text-input-col-4": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - "name": "uniqueIdRow2Cell4", - "value": "Row 2 cell 4 content", - }, - "title": + , + }, + "id": 0, + "isEditable": true, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell1", + "value": "Row 1 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell3", + "value": "Row 1 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow1Cell4", + "value": "Row 1 cell 4 content", + }, + "title": , + }, } } - rowIndex={1} - value="Row 2 cell 4 content" - />, - }, - } - } - rowProps={ - Object { - "rowIndex": 1, - "rowKey": "1-row", - } - } - > - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
- Row 2 cell 2, disabled content -
-
- - - - - -
-
- - - - -
- - - - - - + + + + + + - - - - - - - -
- - -
- - -
- - - - - - - - - -
+ Editable Table +
- Text input col 1 - - Disabled text input col 2 - - Text input col 3 - - Text input col 4 - - -
+ Text input col 1 + + Disabled text input col 2 + + Text input col 3 + + Text input col 4 + + + + +
, + }, + "id": 1, + "isEditable": false, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", + }, + "title": , + }, + } + } + rowIndex={1} + rowKey="1-row" > - , + }, + "id": 1, + "isEditable": false, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "text-input-col-1": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell1", + "value": "Row 2 cell 1 content", + }, + "title": , + }, + "text-input-col-3": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell3", + "value": "Row 2 cell 3 content", + }, + "title": , + }, + "text-input-col-4": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + "name": "uniqueIdRow2Cell4", + "value": "Row 2 cell 4 content", + }, + "title": , + }, } } - rowIndex={1} - value="Row 2 cell 3 content" - > -
- Row 2 cell 3 content -
-
- - - - - -
-
- -
- -
- Row 2 cell 4 content -
-
- - - -
-
- -
- -
-
- - -
-
-
+ + + +
+ Row 2 cell 3 content +
+
+ + + + + +
+
+ + + + + + + + + + +
+ Row 2 cell 4 content +
+
+ + + + + +
+
+ + + + + + + + + + +
+
+ + +
+
+ + +
+
+
+ + +
+
+ +
+
+
+ + + + + + + + + + + + + + + + @@ -53282,7 +60708,7 @@ exports[`Header width table 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - -
- Header cell - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Header cell + + Branches + + Pull requests + + Workspaces + + Last Commit +
- two - - three - - four - + +
+ + + + + + + +
+ one +
+ +
+
+
+ + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + +
+
+ + + + + + + + + + + + +
`; @@ -61276,7 +69915,7 @@ exports[`Row click table 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + +
`; @@ -69160,7 +78953,7 @@ exports[`Selectable table 1`] = ` > - - - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - -
- - - - - - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
-
- one -
-
- two - - three - - four - - five -
-
- one -
-
- two - - three - - four -
- five -
+ + + + + + + + + + + + + + + + + + + +
+ one +
+ +
+
+
+ + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + +
+
+
+ + + + + + + + + + + +
`; @@ -78084,7 +89296,7 @@ exports[`Selectable table with Radio 1`] = ` > - - - +
-
- + -
- - - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
- one -
- - - -
- - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - + + + + - - - - - - - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
- two - - three - - four -
- five -
+ + + + + + + + + + + + + + + + + + +
+ one +
+ +
+
+
+ + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + +
+
+ + + + + + + + + + + + +
`; @@ -86994,7 +99625,7 @@ exports[`Simple Actions table 1`] = ` > - - - +
-
- + +
+ + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + headerRows={null} + renderers={ + Object { + "body": Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + }, + "header": Object { + "cell": [Function], + "row": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHeaderRow", + "render": [Function], + }, + "wrapper": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHead", + "render": [Function], + }, + }, + "table": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTable", + "render": [Function], + }, + } + } + > + + +
+ + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + rowIndex={0} + > + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + headerRows={null} + onRow={[Function]} + onRowClick={[Function]} + rowKey="id" + rows={ + Array [ + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "disableActions": true, + }, + ] + } + > + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + headerRows={null} + mappedRows={ + Array [ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 0, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", }, - Object { - "isSeparator": true, - "onClick": null, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, - Object { - "onClick": [Function], - "title": "Third action", + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "disableActions": true, + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 9, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + ] + } + onRow={[Function]} + renderers={ + Object { + "body": Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + }, + "header": Object { + "cell": [Function], + "row": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHeaderRow", + "render": [Function], + }, + "wrapper": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHead", + "render": [Function], + }, + }, + "table": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTable", + "render": [Function], + }, + } + } + rowKey="id" + rows={ + Array [ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 0, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - Object { - "isSeparator": true, - "onClick": null, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - Object { - "onClick": [Function], - "title": "Third action", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, - Object { - "onClick": [Function], - "title":
- Another action -
, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - Object { - "isSeparator": true, - "onClick": null, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - Object { - "onClick": [Function], - "title": "Third action", + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, - Object { - "isSeparator": true, - "onClick": null, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - Object { - "onClick": [Function], - "title": "Third action", + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", }, - Object { - "isSeparator": true, - "onClick": null, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, - Object { - "onClick": [Function], - "title": "Third action", + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "disableActions": true, + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "id": 9, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - Object { - "isSeparator": true, - "onClick": null, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", }, - Object { - "onClick": [Function], - "title": "Third action", + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, - }, - ] - } - headerRows={null} - renderers={ - Object { - "body": Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - }, - "header": Object { - "cell": [Function], - "row": "tr", - "wrapper": "thead", - }, - "table": "table", - } - } - > -
- + - Another action - , + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "isSeparator": true, - "onClick": null, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title": "Third action", + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "isSeparator": true, - "onClick": null, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title": "Third action", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "four", + }, }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "title": "one", + }, + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "isSeparator": true, - "onClick": null, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title": "Third action", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "four", + }, }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "title": "one", + }, + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "isSeparator": true, - "onClick": null, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title": "Third action", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", + "title": "four", + }, }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "title": "one", + }, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "isSeparator": true, - "onClick": null, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title": "Third action", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", + "title": "four", + }, }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", + "disableActions": true, + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title":
- Another action -
, + "title": "one", + }, + "id": 9, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "isSeparator": true, - "onClick": null, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "onClick": [Function], - "title": "Third action", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", + "title": "four", + }, }, - }, - ] - } - rowIndex={0} - > -
- + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="1-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={1} + rowKey="1-row" + > + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="2-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={2} + rowKey="2-row" + > + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="3-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={3} + rowKey="3-row" + > + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="4-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={4} + rowKey="4-row" + > + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="5-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={5} + rowKey="5-row" + > + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="6-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={6} + rowKey="6-row" + > + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="7-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={7} + rowKey="7-row" + > + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="8-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={8} + rowKey="8-row" > -
- - - Header cell - - - - -
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + "columnIndex": 5, + "property": "column-5", + "rowIndex": 8, + } + } + items={ + Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ] + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + > + + Some action + , + +
+ Another action +
+
, + , + + Third action + , + ] + } + isOpen={false} + isPlain={true} + position="right" + toggle={ + + } + > + + Some action + , + +
+ Another action +
+
, + , + + Third action + , + ] + } + isGrouped={false} + isOpen={false} + isPlain={true} + menuAppendTo="inline" + onSelect={[Function]} + position="right" + toggle={ + + } + > +
+ + +
, + } + } + > + + + , + } + } + > + + +
+ +
+
+ + + + + + + + + +
+ + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + ] + } + key="9-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + } + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "disableActions": true, + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 9, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={9} + rowKey="9-row" + > + + + +
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, - }, - ] - } - headerRows={null} - onRow={[Function]} - onRowClick={[Function]} - rowKey="id" - rows={ - Array [ - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - }, - Object { - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "disableActions": true, - }, - ] - } + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit + + + + +
- -
+ one + + two + + three + + four + + five + + + Another action + , + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ], + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "", + "transforms": Array [ + [Function], + [Function], + [Function], + ], + }, + "property": "column-5", + "props": Object { + "data-key": 5, + "data-label": "", + }, + }, + "columnIndex": 5, + "property": "column-5", + "rowIndex": 9, + } + } + isDisabled={true} + items={ + Array [ + Object { + "onClick": [Function], + "title": "Some action", + }, + Object { + "onClick": [Function], + "title":
+ Another action +
, + }, + Object { + "isSeparator": true, + "onClick": null, + }, + Object { + "onClick": [Function], + "title": "Third action", + }, + ] + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "disableActions": true, + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 9, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + > + + Some action + , + +
+ Another action +
+
, + , + + Third action + , + ] + } + isOpen={false} + isPlain={true} + position="right" + toggle={ + + } + > + + Some action + , + +
+ Another action +
+
, + , + + Third action + , + ] + } + isGrouped={false} + isOpen={false} + isPlain={true} + menuAppendTo="inline" + onSelect={[Function]} + position="right" + toggle={ + + } + > +
+ + +
, + } + } + > + + + , + } + } + > + + +
+ +
+
+
+
+ + +
+ +`; + +exports[`Simple table aria-label 1`] = ` + + + + +
- - + +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], + "actions": undefined, "allRowsSelected": false, "areActionsDisabled": undefined, "canSelectAll": true, @@ -89954,7 +117072,6 @@ exports[`Simple Actions table 1`] = ` "transforms": Array [ [Function], [Function], - [Function], ], }, "property": "header-cell", @@ -89975,26 +117092,7 @@ exports[`Simple Actions table 1`] = ` "data": undefined, "extraParams": Object { "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], + "actions": undefined, "allRowsSelected": false, "areActionsDisabled": undefined, "canSelectAll": true, @@ -90038,26 +117136,7 @@ exports[`Simple Actions table 1`] = ` "data": undefined, "extraParams": Object { "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], + "actions": undefined, "allRowsSelected": false, "areActionsDisabled": undefined, "canSelectAll": true, @@ -90085,105 +117164,23 @@ exports[`Simple Actions table 1`] = ` }, "property": "pull-requests", "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, "allRowsSelected": false, "areActionsDisabled": undefined, "canSelectAll": true, @@ -90203,16 +117200,16 @@ exports[`Simple Actions table 1`] = ` }, "header": Object { "formatters": Array [], - "label": "Last Commit", + "label": "Workspaces", "transforms": Array [ [Function], [Function], ], }, - "property": "last-commit", + "property": "workspaces", "props": Object { - "data-key": 4, - "data-label": "Last Commit", + "data-key": 3, + "data-label": "Workspaces", }, }, Object { @@ -90222,32 +117219,12 @@ exports[`Simple Actions table 1`] = ` ], "transforms": Array [ [Function], - [Function], ], }, "data": undefined, "extraParams": Object { "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], + "actions": undefined, "allRowsSelected": false, "areActionsDisabled": undefined, "canSelectAll": true, @@ -90267,32 +117244,27 @@ exports[`Simple Actions table 1`] = ` }, "header": Object { "formatters": Array [], - "label": "", + "label": "Last Commit", "transforms": Array [ [Function], [Function], - [Function], ], }, - "property": "column-5", + "property": "last-commit", "props": Object { - "data-key": 5, - "data-label": "", + "data-key": 4, + "data-label": "Last Commit", }, }, ] } headerRows={null} - mappedRows={ + onRow={[Function]} + onRowClick={[Function]} + rowKey="id" + rows={ Array [ Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", - }, "cells": Array [ "one", "two", @@ -90300,50 +117272,8 @@ exports[`Simple Actions table 1`] = ` "four", "five", ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", - }, - "id": 0, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "five", - }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "three", - }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "four", - }, }, Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", - }, "cells": Array [ "one", "two", @@ -90351,50 +117281,8 @@ exports[`Simple Actions table 1`] = ` "four", "five", ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", - }, - "id": 1, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "five", - }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "three", - }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "four", - }, }, Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", - }, "cells": Array [ "one", "two", @@ -90402,1912 +117290,2592 @@ exports[`Simple Actions table 1`] = ` "four", "five", ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", - }, - "id": 2, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + Object { + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + }, + ] + } + > + + - -
- - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 0, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "header": Object { + "pull-requests": Object { "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "props": Object { + "isVisible": true, + }, + "title": "three", }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, }, Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "header": Object { + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, }, Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "header": Object { + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, }, Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "header": Object { + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, }, Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "header": Object { + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, }, Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "header": Object { + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", }, - }, - ] - } - key="0-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ - Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, - "title": "two", }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", }, - "title": "one", - }, - "id": 0, - "isExpanded": undefined, - "isFirst": true, - "isFirstVisible": true, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", }, - "title": "five", - }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", }, - "title": "three", - }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", }, - "title": "four", }, - } - } - rowIndex={0} - rowKey="0-row" - > - + -
- - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "column-5", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], "props": Object { - "data-key": 5, - "data-label": "", + "isVisible": true, }, + "title": "four", }, - "columnIndex": 5, - "property": "column-5", - "rowIndex": 0, } } - items={ - Array [ - Object { - "onClick": [Function], - "title": "Some action", + rowProps={ + Object { + "rowIndex": 2, + "rowKey": "2-row", + } + } + > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Another action - , + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, }, - Object { - "isSeparator": true, - "onClick": null, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + ], }, - Object { - "onClick": [Function], - "title": "Third action", + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", }, - ] + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + ] + } + key="3-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], } - rowData={ + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={3} + rowKey="3-row" + > + - - Some action - , - -
- Another action -
-
, - , - - Third action - , - ] - } - isOpen={false} - isPlain={true} - position="right" - toggle={ - + rowProps={ + Object { + "rowIndex": 3, + "rowKey": "3-row", } + } + > + - +
+ + - Some action - , - + + + + + + -
- Another action -
- , - +
+ + + + + , - + + + + + + + - Third action - , - ] - } - isGrouped={false} - isOpen={false} - isPlain={true} - menuAppendTo="inline" - onSelect={[Function]} - position="right" - toggle={ - - } - > -
- +
+ + + + - - - , - } - } + - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Another action - , - }, + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={5} + rowKey="5-row" + > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Another action - , + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, }, - Object { - "isSeparator": true, - "onClick": null, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + ], }, - Object { - "onClick": [Function], - "title": "Third action", + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", }, - ] + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + ] + } + key="7-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], } - rowData={ + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={7} + rowKey="7-row" + > + - + + + - Some action - , - + + + + + + -
- Another action -
- , - + +
+ + + + , - + + + + + + + + + + + + + + - Third action - , - ] + + + + + + + + + + + + + + } + rowProps={ + Object { + "rowIndex": 8, + "rowKey": "8-row", } + } + > + - + + + - Some action - , - + + + + + + -
- Another action -
- , - +
+ + + + + , - - Third action - , - ] - } - isGrouped={false} - isOpen={false} - isPlain={true} - menuAppendTo="inline" - onSelect={[Function]} - position="right" - toggle={ - - } - > -
- +
+ + + + - - - , - } - } + - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, + +
+ + + + + + + + + + + + + + + + + + + + + + + +
+ Header cell + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
+ five +
+ four + + five +
+ + + + +`; + +exports[`Simple table caption 1`] = ` + + + + +
+ + + +
+ - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + ], }, - ] - } - key="2-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", + }, + }, Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "header-cell": Object { + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], }, - "id": 2, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "five", + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], }, - "pull-requests": Object { + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "three", + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], }, - "workspaces": Object { + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "four", + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], }, - } + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + ] + } + headerRows={null} + renderers={ + Object { + "body": Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], + }, + "header": Object { + "cell": [Function], + "row": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHeaderRow", + "render": [Function], + }, + "wrapper": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHead", + "render": [Function], + }, + }, + "table": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTable", + "render": [Function], + }, } - rowIndex={2} - rowKey="2-row" + } + > + - -
- - - - - - - - - - - - - - - - - + + + + + + - Third action - , - ] - } - isOpen={false} - isPlain={true} - position="right" - toggle={ - - } - > - - Some action - , - -
- Another action -
-
, - , - - Third action - , - ] - } - isGrouped={false} - isOpen={false} - isPlain={true} - menuAppendTo="inline" - onSelect={[Function]} - position="right" - toggle={ - - } + Workspaces + +
+
+
+ -
- - -
, - } - } + - - - , - } - } +
- - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, + Last Commit + + + + + + + + + + + + + + + + + + - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ] - } - key="3-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ - Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", + "title": "four", + }, + }, + ] + } + onRow={[Function]} + rowKey="id" + rows={ + Array [ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "id": 3, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "five", + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "three", + "title": "one", + }, + "id": 0, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "workspaces": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "four", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - } - } - rowIndex={3} - rowKey="3-row" - > - -
- - - - - - - - - - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "last-commit", - "props": Object { - "data-key": 4, - "data-label": "Last Commit", - }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "column-5", - "props": Object { - "data-key": 5, - "data-label": "", - }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - ] - } - key="4-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ - Object { - "branches": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "two", + "title": "one", + }, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "cells": Array [ - "one", - "two", - "three", - "four", - "five", - ], - "header-cell": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "one", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "id": 4, - "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, - "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, - "last-commit": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "five", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "pull-requests": Object { - "formatters": Array [], - "props": Object { - "isVisible": true, - }, - "title": "three", + "title": "four", + }, + }, + ] + } + > + - -
- - - - - - - - - - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + ] + } + headerRows={null} + mappedRows={ + Array [ + Object { + "branches": Object { + "formatters": Array [], "props": Object { - "data-key": 0, - "data-label": "Header cell", + "isVisible": true, }, + "title": "two", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], "props": Object { - "data-key": 1, - "data-label": "Branches", + "isVisible": true, }, + "title": "one", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", + "id": 0, + "isExpanded": undefined, + "isFirst": true, + "isFirstVisible": true, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], "props": Object { - "data-key": 2, - "data-label": "Pull requests", + "isVisible": true, }, + "title": "five", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "workspaces", + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], "props": Object { - "data-key": 3, - "data-label": "Workspaces", + "isVisible": true, }, + "title": "one", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "last-commit", + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], "props": Object { - "data-key": 4, - "data-label": "Last Commit", + "isVisible": true, }, + "title": "two", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "column-5", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], "props": Object { - "data-key": 5, - "data-label": "", + "isVisible": true, }, + "title": "four", }, - ] - } - key="5-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ + }, Object { "branches": Object { "formatters": Array [], @@ -97231,7 +127635,7 @@ exports[`Simple Actions table 1`] = ` }, "title": "one", }, - "id": 5, + "id": 3, "isExpanded": undefined, "isFirst": false, "isFirstVisible": false, @@ -97259,948 +127663,295 @@ exports[`Simple Actions table 1`] = ` }, "title": "four", }, - } - } - rowIndex={5} - rowKey="5-row" - > - -
- - - - - - - - - - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "header-cell", + "title": "one", + }, + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], "props": Object { - "data-key": 0, - "data-label": "Header cell", + "isVisible": true, }, + "title": "five", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "branches", + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], "props": Object { - "data-key": 1, - "data-label": "Branches", + "isVisible": true, }, + "title": "one", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "pull-requests", + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], "props": Object { - "data-key": 2, - "data-label": "Pull requests", + "isVisible": true, }, + "title": "two", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], "props": Object { - "data-key": 3, - "data-label": "Workspaces", + "isVisible": true, }, + "title": "one", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "last-commit", + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], "props": Object { - "data-key": 4, - "data-label": "Last Commit", + "isVisible": true, }, + "title": "two", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "one", + }, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "column-5", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], "props": Object { - "data-key": 5, - "data-label": "", + "isVisible": true, }, + "title": "four", }, - ] - } - key="6-row" - onRow={[Function]} - renderers={ - Object { + }, + ] + } + onRow={[Function]} + renderers={ + Object { + "body": Object { "cell": [Function], "row": [Function], "wrapper": [Function], - } + }, + "header": Object { + "cell": [Function], + "row": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHeaderRow", + "render": [Function], + }, + "wrapper": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTableHead", + "render": [Function], + }, + }, + "table": Object { + "$$typeof": Symbol(react.forward_ref), + "displayName": "BaseTable", + "render": [Function], + }, } - rowData={ + } + rowKey="id" + rows={ + Array [ Object { "branches": Object { "formatters": Array [], @@ -98223,10 +127974,10 @@ exports[`Simple Actions table 1`] = ` }, "title": "one", }, - "id": 6, + "id": 0, "isExpanded": undefined, - "isFirst": false, - "isFirstVisible": false, + "isFirst": true, + "isFirstVisible": true, "isHeightAuto": false, "isLast": false, "isLastVisible": false, @@ -98251,948 +128002,364 @@ exports[`Simple Actions table 1`] = ` }, "title": "four", }, - } - } - rowIndex={6} - rowKey="6-row" - > - -
- - - - - - - - - - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "one", + }, + "id": 1, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "header-cell", + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], "props": Object { - "data-key": 0, - "data-label": "Header cell", + "isVisible": true, }, + "title": "four", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "branches", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], "props": Object { - "data-key": 1, - "data-label": "Branches", + "isVisible": true, }, + "title": "three", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "pull-requests", + "title": "one", + }, + "id": 3, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], "props": Object { - "data-key": 2, - "data-label": "Pull requests", + "isVisible": true, }, + "title": "five", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "workspaces", + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], "props": Object { - "data-key": 3, - "data-label": "Workspaces", + "isVisible": true, }, + "title": "one", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "Last Commit", - "transforms": Array [ - [Function], - [Function], - ], + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "last-commit", + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], "props": Object { - "data-key": 4, - "data-label": "Last Commit", + "isVisible": true, }, + "title": "two", }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - [Function], - ], + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, + "title": "one", + }, + "id": 5, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "header": Object { - "formatters": Array [], - "label": "", - "transforms": Array [ - [Function], - [Function], - [Function], - ], + "title": "one", + }, + "id": 7, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, }, - "property": "column-5", + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], "props": Object { - "data-key": 5, - "data-label": "", + "isVisible": true, }, + "title": "three", }, - ] - } - key="7-row" - onRow={[Function]} - renderers={ - Object { - "cell": [Function], - "row": [Function], - "wrapper": [Function], - } - } - rowData={ + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + }, Object { "branches": Object { "formatters": Array [], @@ -99215,13 +128382,13 @@ exports[`Simple Actions table 1`] = ` }, "title": "one", }, - "id": 7, + "id": 8, "isExpanded": undefined, "isFirst": false, "isFirstVisible": false, "isHeightAuto": false, - "isLast": false, - "isLastVisible": false, + "isLast": true, + "isLastVisible": true, "last-commit": Object { "formatters": Array [], "props": Object { @@ -99243,15 +128410,372 @@ exports[`Simple Actions table 1`] = ` }, "title": "four", }, - } - } - rowIndex={7} - rowKey="7-row" - > - + + -
- - - - - - - - - - - - - - - - - + + - Some action - , - + + + + + + -
- Another action -
- , - +
+ + + + + , - + + + + + + + - Third action - , - ] - } - isGrouped={false} - isOpen={false} - isPlain={true} - menuAppendTo="inline" - onSelect={[Function]} - position="right" - toggle={ - - } - > -
- +
+ + + + - - - , - } - } + - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Another action - , - }, + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 2, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={2} + rowKey="2-row" + > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Another action - , + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, }, - Object { - "isSeparator": true, - "onClick": null, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + ], }, - Object { - "onClick": [Function], - "title": "Third action", + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", }, - ] + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + ] + } + key="4-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], } - rowData={ + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 4, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={4} + rowKey="4-row" + > + - - Some action - , - -
- Another action -
-
, - , - - Third action - , - ] - } - isOpen={false} - isPlain={true} - position="right" - toggle={ - + rowProps={ + Object { + "rowIndex": 4, + "rowKey": "4-row", } + } + > + - +
+ + - Some action - , - + + + + + + -
- Another action -
- , - +
+ + + + + , - + + + + + + + - Third action - , - ] - } - isGrouped={false} - isOpen={false} - isPlain={true} - menuAppendTo="inline" - onSelect={[Function]} - position="right" - toggle={ - - } - > -
- +
+ + + + - - - , - } - } + - - - - - - - - - - - - - - Another action - , - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Header cell", - "transforms": Array [ - [Function], - [Function], - [Function], - ], - }, - "property": "header-cell", - "props": Object { - "data-key": 0, - "data-label": "Header cell", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Branches", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "branches", - "props": Object { - "data-key": 1, - "data-label": "Branches", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Pull requests", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "pull-requests", - "props": Object { - "data-key": 2, - "data-label": "Pull requests", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, - Object { - "isSeparator": true, - "onClick": null, - }, - Object { - "onClick": [Function], - "title": "Third action", - }, - ], - "allRowsSelected": false, - "areActionsDisabled": undefined, - "canSelectAll": true, - "contentId": "expanded-content", - "dropdownDirection": "down", - "dropdownPosition": "right", - "expandId": "expandable-toggle", - "firstUserColumnIndex": 0, - "onCollapse": undefined, - "onExpand": undefined, - "onRowEdit": undefined, - "onSelect": undefined, - "onSort": undefined, - "rowLabeledBy": "simple-node", - "selectVariant": "checkbox", - "sortBy": undefined, - }, - "header": Object { - "formatters": Array [], - "label": "Workspaces", - "transforms": Array [ - [Function], - [Function], - ], - }, - "property": "workspaces", - "props": Object { - "data-key": 3, - "data-label": "Workspaces", - }, - }, - Object { - "cell": Object { - "formatters": Array [ - [Function], - ], - "transforms": Array [ - [Function], - ], - }, - "data": undefined, - "extraParams": Object { - "actionResolver": undefined, - "actions": Array [ - Object { - "onClick": [Function], - "title": "Some action", - }, - Object { - "onClick": [Function], - "title":
- Another action -
, - }, + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Another action - , - }, + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 6, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": false, + "isLastVisible": false, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={6} + rowKey="6-row" + > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Another action - , + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, }, - Object { - "isSeparator": true, - "onClick": null, + "header": Object { + "formatters": Array [], + "label": "Header cell", + "transforms": Array [ + [Function], + [Function], + ], }, - Object { - "onClick": [Function], - "title": "Third action", + "property": "header-cell", + "props": Object { + "data-key": 0, + "data-label": "Header cell", }, - ] + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Branches", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "branches", + "props": Object { + "data-key": 1, + "data-label": "Branches", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Pull requests", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "pull-requests", + "props": Object { + "data-key": 2, + "data-label": "Pull requests", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Workspaces", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "workspaces", + "props": Object { + "data-key": 3, + "data-label": "Workspaces", + }, + }, + Object { + "cell": Object { + "formatters": Array [ + [Function], + ], + "transforms": Array [ + [Function], + ], + }, + "data": undefined, + "extraParams": Object { + "actionResolver": undefined, + "actions": undefined, + "allRowsSelected": false, + "areActionsDisabled": undefined, + "canSelectAll": true, + "contentId": "expanded-content", + "dropdownDirection": "down", + "dropdownPosition": "right", + "expandId": "expandable-toggle", + "firstUserColumnIndex": 0, + "onCollapse": undefined, + "onExpand": undefined, + "onRowEdit": undefined, + "onSelect": undefined, + "onSort": undefined, + "rowLabeledBy": "simple-node", + "selectVariant": "checkbox", + "sortBy": undefined, + }, + "header": Object { + "formatters": Array [], + "label": "Last Commit", + "transforms": Array [ + [Function], + [Function], + ], + }, + "property": "last-commit", + "props": Object { + "data-key": 4, + "data-label": "Last Commit", + }, + }, + ] + } + key="8-row" + onRow={[Function]} + renderers={ + Object { + "cell": [Function], + "row": [Function], + "wrapper": [Function], } - rowData={ + } + rowData={ + Object { + "branches": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "two", + }, + "cells": Array [ + "one", + "two", + "three", + "four", + "five", + ], + "header-cell": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "one", + }, + "id": 8, + "isExpanded": undefined, + "isFirst": false, + "isFirstVisible": false, + "isHeightAuto": false, + "isLast": true, + "isLastVisible": true, + "last-commit": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "five", + }, + "pull-requests": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "three", + }, + "workspaces": Object { + "formatters": Array [], + "props": Object { + "isVisible": true, + }, + "title": "four", + }, + } + } + rowIndex={8} + rowKey="8-row" + > + - - Some action - , - -
- Another action -
-
, - , - - Third action - , - ] - } - isOpen={false} - isPlain={true} - position="right" - toggle={ - + rowProps={ + Object { + "rowIndex": 8, + "rowKey": "8-row", } + } + > + - +
+ + - Some action - , - + + + + + + -
- Another action -
- , - +
+ + + + + , - + + + + + + + - Third action - , - ] - } - isGrouped={false} - isOpen={false} - isPlain={true} - menuAppendTo="inline" - onSelect={[Function]} - position="right" - toggle={ - - } - > -
- +
+ + + + - - - , - } - } + component="td" + data-key={4} + dataLabel="Last Commit" + onMouseEnter={[Function]} + textCenter={false} > - - - - - - - - - - - - - - - - - - -
+ Simple Table +
+ five +
+ five +
+ + + five + + + + + + + + + + + + + + + + + + + + `; -exports[`Simple table aria-label 1`] = ` +exports[`Simple table header 1`] = ` + Header title + + } isStickyHeader={false} ouiaSafe={true} role="grid" @@ -101911,9 +133934,11 @@ exports[`Simple table aria-label 1`] = ` selectVariant="checkbox" variant={null} > +

+ Header title +

-
- - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- Header cell - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Header cell + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + + `; -exports[`Simple table caption 1`] = ` +exports[`Sortable table 1`] = ` -
- - - -
- + + +
- Simple Table -
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- Header cell - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + + `; -exports[`Simple table header 1`] = ` +exports[`Table variants Breakpoint - 1`] = ` - Header title - - } + gridBreakPoint="" isStickyHeader={false} ouiaSafe={true} role="grid" @@ -117514,11 +151914,9 @@ exports[`Simple table header 1`] = ` selectVariant="checkbox" variant={null} > -

- Header title -

-
- - -
- + + +
+ + - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- Header cell - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + + `; -exports[`Sortable table 1`] = ` +exports[`Table variants Breakpoint - grid 1`] = ` -
- - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + + `; -exports[`Table variants Breakpoint - 1`] = ` +exports[`Table variants Breakpoint - grid-2xl 1`] = ` -
- - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + + `; -exports[`Table variants Breakpoint - grid 1`] = ` +exports[`Table variants Breakpoint - grid-lg 1`] = ` -
- - +
-
- + -
- - - + - + + + + + + + + + + + - Header cell - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - + + + + + Branches + + Pull requests + - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + + `; -exports[`Table variants Breakpoint - grid-2xl 1`] = ` +exports[`Table variants Breakpoint - grid-md 1`] = ` -
- - -
- + + +
+ + - - - - + - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - + + + + - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + + `; -exports[`Table variants Breakpoint - grid-lg 1`] = ` +exports[`Table variants Breakpoint - grid-xl 1`] = ` -
- - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + + `; -exports[`Table variants Breakpoint - grid-md 1`] = ` +exports[`Table variants Size - compact 1`] = ` -
- - +
-
- + -
- - - + - + + + + + + + + + + + - Header cell - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - + + + + + Branches + + Pull requests + - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + + `; -exports[`Table variants Breakpoint - grid-xl 1`] = ` +exports[`Table variants Size - compactBorderless 1`] = ` -
- - -
- + + +
+ + - - - - + - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - + + + + - Branches - - Pull requests - - Workspaces - - Last Commit -
+ Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + + `; -exports[`Table variants Size - compact 1`] = ` +exports[`Table variants Size - compactExpandable 1`] = ` -
- - -
- + + +
+ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - one - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - two - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - three - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - four - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - five - - - - - - - - - - - -
- - - - - Branches - - Pull requests - - Workspaces - - Last Commit -
+ + + + + Branches + + Pull requests + + Workspaces + + Last Commit +
+ + +
+ + +
+ + +
+ + +
+ + + + + + + + + one + + + + + + + + + two + + + + + + + + + three + + + + + + + + + four + + + + + + + + + five + + + + + + + + + + + + + + + + + + + + `; From 569fa4912514d015ced376822121b195af183ced Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Wed, 21 Oct 2020 17:58:20 -0400 Subject: [PATCH 13/29] cleanup state in examples --- packages/react-table/package-lock.json | 276 ------------------ .../Table/examples/ComposableTable.md | 231 +++++++-------- .../src/components/Table/examples/Table.md | 41 +-- 3 files changed, 105 insertions(+), 443 deletions(-) delete mode 100644 packages/react-table/package-lock.json diff --git a/packages/react-table/package-lock.json b/packages/react-table/package-lock.json deleted file mode 100644 index f71734e80e3..00000000000 --- a/packages/react-table/package-lock.json +++ /dev/null @@ -1,276 +0,0 @@ -{ - "name": "@patternfly/react-table", - "version": "4.18.20", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@patternfly/patternfly": { - "version": "4.50.4", - "resolved": "https://registry.npmjs.org/@patternfly/patternfly/-/patternfly-4.50.4.tgz", - "integrity": "sha512-eoJ/U11m+1uJMt8HTFCJeUNazoHC58Ot6gzfNnJvbX5kibpDdvrMvLk2iuGhEfwzQmiH7BSrxjZqMyevbSZ2Cw==" - }, - "@patternfly/react-core": { - "version": "4.64.5", - "resolved": "https://registry.npmjs.org/@patternfly/react-core/-/react-core-4.64.5.tgz", - "integrity": "sha512-f7q0kB8FIWNU76FTv5gsM6o5Twg/j92LXo4EmDaKvz35qPGWR7jqstTZ0zHXcUuDOYTPZeiQS1kbNsHVXRqZzg==", - "requires": { - "@patternfly/react-icons": "^4.7.12", - "@patternfly/react-styles": "^4.7.8", - "@patternfly/react-tokens": "^4.9.12", - "focus-trap": "4.0.2", - "react-dropzone": "9.0.0", - "tippy.js": "5.1.2", - "tslib": "1.13.0" - } - }, - "@patternfly/react-icons": { - "version": "4.7.12", - "resolved": "https://registry.npmjs.org/@patternfly/react-icons/-/react-icons-4.7.12.tgz", - "integrity": "sha512-46kCsX4IIKQj5FzB/D2AkgG/TRkKjrH2U9v8H1kaU6WpXRmfLbxCq89neZ6UMoTF8tYhIXB0B3DaMMTvlQewRg==" - }, - "@patternfly/react-styles": { - "version": "4.7.8", - "resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-4.7.8.tgz", - "integrity": "sha512-d/OEE8vBz0+/7Bxa2WiRTvtQqf/GcFtfpNdORPYSvoifAggL9wt+/62g0GCAPOu1qOyZHuThB2Bjg77V87EkQg==" - }, - "@patternfly/react-tokens": { - "version": "4.9.12", - "resolved": "https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-4.9.12.tgz", - "integrity": "sha512-bO4eaZRZOYRDnO096RCFMhV1VHXE9woRFxIs+i9Q7eSTlxpJm2b8FAIb7RDtOURGAfBlJKd/d1dFgZnPq7xQ0g==" - }, - "attr-accept": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-1.1.3.tgz", - "integrity": "sha512-iT40nudw8zmCweivz6j58g+RT33I4KbaIvRUhjNmDwO2WmsQUxFEZZYZ5w3vXe5x5MX9D7mfvA/XaLOZYFR9EQ==", - "requires": { - "core-js": "^2.5.0" - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" - }, - "file-selector": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/file-selector/-/file-selector-0.1.13.tgz", - "integrity": "sha512-T2efCBY6Ps+jLIWdNQsmzt/UnAjKOEAlsZVdnQztg/BtAZGNL4uX1Jet9cMM8gify/x4CSudreji2HssGBNVIQ==", - "requires": { - "tslib": "^2.0.1" - }, - "dependencies": { - "tslib": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz", - "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ==" - } - } - }, - "focus-trap": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-4.0.2.tgz", - "integrity": "sha512-HtLjfAK7Hp2qbBtLS6wEznID1mPT+48ZnP2nkHzgjpL4kroYHg0CdqJ5cTXk+UO5znAxF5fRUkhdyfgrhh8Lzw==", - "requires": { - "tabbable": "^3.1.2", - "xtend": "^4.0.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "lodash": { - "version": "4.17.20", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", - "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "popper.js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", - "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==" - }, - "prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "prop-types-extra": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/prop-types-extra/-/prop-types-extra-1.1.1.tgz", - "integrity": "sha512-59+AHNnHYCdiC+vMwY52WmvP5dM3QLeoumYuEyceQDi9aEhtwN9zIQ2ZNo25sMyXnbh32h+P1ezDsUpUH3JAew==", - "requires": { - "react-is": "^16.3.2", - "warning": "^4.0.0" - } - }, - "react-dropzone": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/react-dropzone/-/react-dropzone-9.0.0.tgz", - "integrity": "sha512-wZ2o9B2qkdE3RumWhfyZT9swgJYJPeU5qHEcMU8weYpmLex1eeWX0CC32/Y0VutB+BBi2D+iePV/YZIiB4kZGw==", - "requires": { - "attr-accept": "^1.1.3", - "file-selector": "^0.1.8", - "prop-types": "^15.6.2", - "prop-types-extra": "^1.1.0" - } - }, - "react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "tabbable": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-3.1.2.tgz", - "integrity": "sha512-wjB6puVXTYO0BSFtCmWQubA/KIn7Xvajw0x0l6eJUudMG/EAiJvIUnyNX6xO4NpGrJ16lbD0eUseB9WxW0vlpQ==" - }, - "tippy.js": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-5.1.2.tgz", - "integrity": "sha512-Qtrv2wqbRbaKMUb6bWWBQWPayvcDKNrGlvihxtsyowhT7RLGEh1STWuy6EMXC6QLkfKPB2MLnf8W2mzql9VDAw==", - "requires": { - "popper.js": "^1.16.0" - } - }, - "tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==" - }, - "typescript": { - "version": "3.9.7", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.7.tgz", - "integrity": "sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw==", - "dev": true - }, - "warning": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", - "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", - "requires": { - "loose-envify": "^1.0.0" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" - } - } -} diff --git a/packages/react-table/src/components/Table/examples/ComposableTable.md b/packages/react-table/src/components/Table/examples/ComposableTable.md index b700cecefa7..e990812285a 100644 --- a/packages/react-table/src/components/Table/examples/ComposableTable.md +++ b/packages/react-table/src/components/Table/examples/ComposableTable.md @@ -19,27 +19,7 @@ beta: true Note: Table lives in its own package at [@patternfly/react-table](https://www.npmjs.com/package/@patternfly/react-table)! -import { -classNames, -Visibility, -TableText, -HeaderCellInfoWrapper, -ExpandableRowContent, -BaseTable, -BaseTableCaption, -BaseTableHead, -BaseTableBody, -BaseTableHeaderRow, -BaseTableBodyRow, -BaseHeaderCell, -BaseBodyCell -} from '@patternfly/react-table'; - -import { -EmptyStateIcon, -ToggleGroup, -ToggleGroupItem -} from '@patternfly/react-core'; +import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; import SearchIcon from '@patternfly/react-icons/dist/js/icons/search-icon'; import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; @@ -48,9 +28,9 @@ import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; import DemoSortableTable from './DemoSortableTable'; -## Composable table examples +## Examples -### Composable: Basic +### Basic A basic example using the Base\* table components. Some general notes: @@ -71,18 +51,18 @@ import { } from '@patternfly/react-table'; ComposableTableBasic = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit' - ]); - const [data, setData] = React.useState([ + ]; + const rows = [ ['one', 'two', 'three', 'four', 'five'], ['one - 2', null, null, 'four - 2', 'five - 2'], ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3'] - ]); + ]; return ( Simple table using composable components @@ -94,7 +74,7 @@ ComposableTableBasic = () => { - {data.map((row, rowIndex) => ( + {rows.map((row, rowIndex) => ( {row.map((cell, cellIndex) => ( @@ -109,7 +89,7 @@ ComposableTableBasic = () => { }; ``` -### Composable: Row click handler, Custom row wrapper, header tooltips & popovers +### Row click handler, custom row wrapper, header tooltips & popovers This example demonstrates customizing rows, adding tooltip and popover information to header items, and some other misc. props. @@ -132,29 +112,18 @@ import { } from '@patternfly/react-table'; ComposableTableMisc = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit' - ]); - const [data, setData] = React.useState([ + ]; + const rows = [ ['one', 'two', 'three', 'four', 'five'], - ['one - 2', null, null, 'four - 2', 'five - 2'], - ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3 (not centered)'] - ]); - // map additional configuration to the incoming data anyway you want to - // key: row_column - const dataConfig = { - '1_0': { - title: text =>
{text}
, - props: { title: 'hover title', colSpan: 3 } - }, - '2_4': { - props: { textCenter: false } - } - }; + [{ title: 'one - 2', colSpan: 3 }, null, null, 'four - 2', 'five - 2'], + ['one - 3', 'two - 3', 'three - 3', 'four - 3', { title: 'five - 3 (not centered)', textCenter: false }] + ]; const onRowClick = (event, rowIndex, row) => { console.log(`handle row click ${rowIndex}`, row); }; @@ -197,7 +166,7 @@ ComposableTableMisc = () => { - {data.map((row, rowIndex) => { + {rows.map((row, rowIndex) => { const isOddRow = (rowIndex + 1) % 2; const customStyle = { borderLeft: '3px solid var(--pf-global--primary-color--100)' @@ -213,16 +182,24 @@ ComposableTableMisc = () => { if (!cell) { return null; } - const cellConfig = dataConfig[`${rowIndex}_${cellIndex}`]; + let cellObject; + if (typeof cell !== 'object') { + cellObject = { + title: cell + } + } else { + cellObject = cell; + } + const { title, ...rest } = cellObject; return ( - {cellConfig && cellConfig.title ? cellConfig.title(cell) : cell} + {title} ); })} @@ -235,7 +212,7 @@ ComposableTableMisc = () => { }; ``` -### Composable: Sortable, Sortable with wrapping headers +### Sortable, sortable with wrapping headers This example demonstrates making columns sortable, and wrapping header text. For sorting it is also important to pass the `columnIndex` to the `BaseHeaderCell`. @@ -252,14 +229,14 @@ import { } from '@patternfly/react-table'; ComposableTableSortable = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'This is a really long table header that goes on for a long time 1.', 'This is a really long table header that goes on for a long time 2.', 'This is a really long table header that goes on for a long time 3.', 'This is a really long table header that goes on for a long time 4.', 'This is a really long table header that goes on for a long time 5.' - ]); - const [data, setData] = React.useState([ + ]; + const [rows, setRows] = React.useState([ ['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five'] @@ -271,8 +248,8 @@ ComposableTableSortable = () => { const onSort = (event, index, direction) => { setActiveSortIndex(index); setActiveSortDirection(direction); - // sorts the row data - const updatedData = data.sort((a, b) => { + // sorts the rows + const updatedRows = rows.sort((a, b) => { if (typeof a[index] === 'number') { // numeric sort if (direction === 'asc') { @@ -287,7 +264,7 @@ ComposableTableSortable = () => { return b[index].localeCompare(a[index]); } }); - setData(updatedData); + setRows(updatedRows); }; return ( @@ -315,7 +292,7 @@ ComposableTableSortable = () => { - {data.map((row, rowIndex) => ( + {rows.map((row, rowIndex) => ( {row.map((cell, cellIndex) => ( @@ -330,7 +307,7 @@ ComposableTableSortable = () => { }; ``` -### Composable: Selectable +### Selectable This example demonstrates row selection. The selection column is just another column, but with selection specific props added. We add it as the first header cell and also as the first body cell for each row. Be sure to also add `columnIndex` to `BaseHeaderCell` and `columnIndex` as well as `rowIndex` to `BaseBodyCell`. @@ -348,21 +325,21 @@ import { } from '@patternfly/react-table'; ComposableTableSelectable = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit' - ]); - const [data, setData] = React.useState([ + ]; + const rows = [ ['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five'] - ]); + ]; const [allRowsSelected, setAllRowsSelected] = React.useState(false); - const [selected, setSelected] = React.useState(data.map(row => false)); - const onSelect = (event, isSelected, rowId, rowData, extraData) => { + const [selected, setSelected] = React.useState(rows.map(row => false)); + const onSelect = (event, isSelected, rowId) => { setSelected(selected.map((sel, index) => (index === rowId ? isSelected : sel))); if (!isSelected && allRowsSelected) { setAllRowsSelected(false); @@ -380,7 +357,7 @@ ComposableTableSelectable = () => { } } }; - const onSelectAll = (event, isSelected, rowId, rowData, extraData) => { + const onSelectAll = (event, isSelected) => { setAllRowsSelected(isSelected); setSelected(selected.map(sel => isSelected)); }; @@ -397,7 +374,7 @@ ComposableTableSelectable = () => { - {data.map((row, rowIndex) => ( + {rows.map((row, rowIndex) => ( { }; ``` -### Composable: Selectable radio input +### Selectable radio input Similarly to the selectable example above, the radio buttons use the first column. The first header cell is empty, and each body row's first cell has radio button props. Just as with selectable, be sure to also add `columnIndex` to `BaseHeaderCell` and `columnIndex` as well as `rowIndex` to `BaseBodyCell`. @@ -444,24 +421,24 @@ import { } from '@patternfly/react-table'; ComposableTableSelectableRadio = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit' - ]); - const [data, setData] = React.useState([ + ]; + const rows = [ ['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five'] - ]); + ]; const [selected, setSelected] = React.useState(-1); - const onSelect = (event, isSelected, rowId, rowData, extraData) => { + const onSelect = (event, isSelected, rowId) => { setSelected(rowId); }; return ( - + @@ -473,7 +450,7 @@ ComposableTableSelectableRadio = () => { - {data.map((row, rowIndex) => ( + {rows.map((row, rowIndex) => ( { }; ``` -### Composable: Actions +### Actions This example demonstrates adding actions as the last column. The header's last cell is an empty cell, and each body row's last cell is an action cell. @@ -554,22 +531,22 @@ ComposableTableActions = () => { onClick: (event, rowId, rowData, extra) => console.log(`clicked on Third action, on row ${rowId}`) } ]; - const [columns, setColumns] = React.useState([ + const columns = [ 'Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit' - ]); - const [data, setData] = React.useState([ + ]; + const rows = [ ['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five'], ['4', '2', 'b', 'four', 'five'], ['5', '2', 'b', 'four', 'five'] - ]); + ]; return ( - + {columns[0]} @@ -581,7 +558,7 @@ ComposableTableActions = () => { - {data.map((row, rowIndex) => ( + {rows.map((row, rowIndex) => ( {row.map((cell, cellIndex) => ( @@ -603,7 +580,7 @@ ComposableTableActions = () => { }; ``` -### Composable: Compact, Compact borderless +### Compact, compact borderless You can set the `BaseTable` variant to `compact` or `compactBorderless`. @@ -621,20 +598,20 @@ import { import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; ComposableTableCompact = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit' - ]); - const [data, setData] = React.useState([ + ]; + const rows = [ ['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five'], ['4', '2', 'b', 'four', 'five'], ['5', '2', 'b', 'four', 'five'] - ]); + ]; const [variant, setVariant] = React.useState('compact'); const handleItemClick = (isSelected, event) => { const id = event.currentTarget.id; @@ -663,7 +640,7 @@ ComposableTableCompact = () => { - {data.map((row, rowIndex) => ( + {rows.map((row, rowIndex) => ( {row.map((cell, cellIndex) => ( @@ -679,7 +656,7 @@ ComposableTableCompact = () => { }; ``` -### Composable: Expandable +### Expandable This example demonstrates having expandable rows. @@ -701,14 +678,14 @@ import { import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; ComposableTableExpandable = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit' - ]); - const [data, setData] = React.useState([ + ]; + const rowPairs = [ { parent: ['one', 'two', 'a', 'four', 'five'], child: null }, { parent: ['parent 1', 'two', 'k', 'four', 'five'], @@ -766,10 +743,10 @@ ComposableTableExpandable = () => { ], fullWidth: true } - ]); + ]; const numColumns = columns.length; // Init all to true - const [expanded, setExpanded] = React.useState(Object.fromEntries(Object.entries(data).map(([k, v]) => [k, true]))); + const [expanded, setExpanded] = React.useState(Object.fromEntries(Object.entries(rowPairs).map(([k, v]) => [k, true]))); const [variant, setVariant] = React.useState(null); const handleItemClick = (isSelected, event) => { const id = event.currentTarget.id; @@ -807,7 +784,7 @@ ComposableTableExpandable = () => { {columns[4]} - {data.map((pair, pairIndex) => { + {rowPairs.map((pair, pairIndex) => { rowIndex += 1; const parentRow = ( @@ -835,9 +812,9 @@ ComposableTableExpandable = () => { } const childRow = pair.child ? ( - {!data[pairIndex].fullWidth && } - {data[pairIndex].child.map((cell, cellIndex) => { - const shift = data[pairIndex].fullWidth ? 1 : 0; + {!rowPairs[pairIndex].fullWidth && } + {rowPairs[pairIndex].child.map((cell, cellIndex) => { + const shift = rowPairs[pairIndex].fullWidth ? 1 : 0; const shiftedCellIndex = cellIndex + shift; return ( { rowIndex={rowIndex} columnIndex={shiftedCellIndex} dataLabel={columns[cellIndex]} - noPadding={data[pairIndex].noPadding} + noPadding={rowPairs[pairIndex].noPadding} colSpan={ - data[pairIndex].child.length === 1 + rowPairs[pairIndex].child.length === 1 ? numColumns + shift : cell.props && cell.props.colSpan ? cell.props.colSpan @@ -875,7 +852,7 @@ ComposableTableExpandable = () => { }; ``` -### Composable: Compound expandable +### Compound expandable ```js isBeta import React from 'react'; @@ -898,18 +875,18 @@ import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; import DemoSortableTable from './demo/DemoSortableTable'; ComposableCompoundExpandableTable = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit', '' - ]); - const [data, setData] = React.useState([ + ]; + const rows = [ ['siemur/test-space', 10, 4, 4, '20 minutes', 'Open in Github'], ['siemur/test-space', 3, 4, 2, '10 minutes', 'Open in Github'] - ]); + ]; const [activeChild, setActiveChild] = React.useState('0_1'); // key = row_col of the parent it corresponds to const childData = { @@ -1013,7 +990,7 @@ ComposableCompoundExpandableTable = () => { ))} - {data.map((row, rowIndex) => { + {rows.map((row, rowIndex) => { const isRowExpanded = activeChild && activeChild.split('_')[0] === `${rowIndex}`; return ( @@ -1062,7 +1039,7 @@ ComposableCompoundExpandableTable = () => { }; ``` -### Composable: Cell width, breakpoint modifiers +### Cell width, breakpoint modifiers ```js isBeta import React from 'react'; @@ -1077,18 +1054,18 @@ import { } from '@patternfly/react-table'; ComposableTableCellWidth = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit' - ]); - const [data, setData] = React.useState([ + ]; + const rows = [ ['one', 'two', 'three', 'four', 'five'], ['one - 2', null, null, 'four - 2', 'five - 2'], ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3'] - ]); + ]; return ( @@ -1105,7 +1082,7 @@ ComposableTableCellWidth = () => { - {data.map((row, rowIndex) => ( + {rows.map((row, rowIndex) => ( {row.map((cell, cellIndex) => ( { }; ``` -### Composable: Controlling text +### Controlling text ```js isBeta import React from 'react'; @@ -1139,14 +1116,14 @@ import { } from '@patternfly/react-table'; ComposableControllingText = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'Truncate (width 20%)', 'Break word', 'Wrapping table header text. This th text will wrap instead of truncate.', 'Fit content', 'No wrap' - ]); - const [data, setData] = React.useState([ + ]; + const rows = [ [ 'This text will truncate instead of wrap.', http://thisisaverylongurlthatneedstobreakusethebreakwordmodifier.org, @@ -1159,7 +1136,7 @@ ComposableControllingText = () => { "This cell's content will adjust itself to the parent th width. This modifier only affects table layouts.", No wrap ] - ]); + ]; return ( @@ -1178,7 +1155,7 @@ ComposableControllingText = () => { - {data.map((row, rowIndex) => ( + {rows.map((row, rowIndex) => ( {row[0]} @@ -1199,7 +1176,7 @@ ComposableControllingText = () => { }; ``` -### Composable: Modifiers with table text +### Modifiers with table text ```js isBeta import React from 'react'; @@ -1215,18 +1192,18 @@ import { } from '@patternfly/react-table'; ComposableTableText = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'Truncating text', 'Wrapping table header text. This th text will wrap instead of truncate.' - ]); - const [data, setData] = React.useState([ + ]; + const rows = [ [ This text will truncate instead of wrap., This is a link that needs to be on one line and fully readable. ] - ]); + ]; return ( @@ -1238,7 +1215,7 @@ ComposableTableText = () => { - {data.map((row, rowIndex) => ( + {rows.map((row, rowIndex) => ( {row.map((cell, cellIndex) => ( @@ -1253,7 +1230,7 @@ ComposableTableText = () => { }; ``` -### Composable: Empty state +### Empty state ```js isBeta import React from 'react'; @@ -1276,13 +1253,13 @@ import { } from '@patternfly/react-table'; ComposableEmptyState = () => { - const [columns, setColumns] = React.useState([ + const columns = [ 'Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit' - ]); + ]; return ( diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index 9992f328b30..3d119895e11 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -28,45 +28,6 @@ ouia: true Note: Table lives in its own package at [@patternfly/react-table](https://www.npmjs.com/package/@patternfly/react-table)! -import { -Table, -TableHeader, -TableBody, -TableText, -sortable, -SortByDirection, -headerCol, -TableVariant, -expandable, -compoundExpand, -cellWidth, -textCenter, -wrappable, -truncate, -nowrap, -breakWord, -fitContent, -classNames, -Visibility, -getErrorTextByValidator, -cancelCellEdits, -validateCellEdits, -applyCellEdits, -EditableTextCell, -EditableSelectInputCell, -BaseTable, -BaseTableCaption, -BaseTableHead, -BaseTableBody, -BaseTableHeaderRow, -BaseTableBodyRow, -BaseHeaderCell, -BaseBodyCell, -HeaderCellInfoWrapper -} from '@patternfly/react-table'; - -import { EmptyStateIcon } from '@patternfly/react-core'; - import SearchIcon from '@patternfly/react-icons/dist/js/icons/search-icon'; import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; @@ -77,7 +38,7 @@ import styles from '@patternfly/react-styles/css/components/Table/table'; import DemoSortableTable from './DemoSortableTable'; -## Table examples +## Examples ### Basic From d9993c7595606b809d003a8584046958255f6ee4 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Thu, 22 Oct 2020 10:21:36 -0400 Subject: [PATCH 14/29] rename components --- .../src/components/BaseTable/BaseTable.tsx | 28 +- .../BaseTable/BaseTableHeaderRow.tsx | 28 - .../{BaseTableCaption.tsx => Caption.tsx} | 8 +- .../{BaseTableBody.tsx => TBody.tsx} | 12 +- .../BaseTable/{BaseBodyCell.tsx => Td.tsx} | 45 +- .../BaseTable/{BaseHeaderCell.tsx => Th.tsx} | 49 +- .../{BaseTableHead.tsx => Thead.tsx} | 12 +- .../{BaseTableBodyRow.tsx => Tr.tsx} | 23 +- .../src/components/BaseTable/index.ts | 14 +- .../src/components/Table/BodyCell.tsx | 6 +- .../src/components/Table/BodyWrapper.tsx | 8 +- .../src/components/Table/HeaderCell.tsx | 6 +- .../src/components/Table/RowWrapper.tsx | 4 +- .../__snapshots__/RowWrapper.test.tsx.snap | 16 +- .../Table/__snapshots__/Table.test.tsx.snap | 13408 ++++++++-------- .../src/components/Table/base/types.tsx | 23 +- .../Table/examples/ComposableTable.md | 676 +- 17 files changed, 7138 insertions(+), 7228 deletions(-) delete mode 100644 packages/react-table/src/components/BaseTable/BaseTableHeaderRow.tsx rename packages/react-table/src/components/BaseTable/{BaseTableCaption.tsx => Caption.tsx} (60%) rename packages/react-table/src/components/BaseTable/{BaseTableBody.tsx => TBody.tsx} (61%) rename packages/react-table/src/components/BaseTable/{BaseBodyCell.tsx => Td.tsx} (79%) rename packages/react-table/src/components/BaseTable/{BaseHeaderCell.tsx => Th.tsx} (72%) rename packages/react-table/src/components/BaseTable/{BaseTableHead.tsx => Thead.tsx} (60%) rename packages/react-table/src/components/BaseTable/{BaseTableBodyRow.tsx => Tr.tsx} (67%) diff --git a/packages/react-table/src/components/BaseTable/BaseTable.tsx b/packages/react-table/src/components/BaseTable/BaseTable.tsx index b9a15b17d40..520052d4c8b 100644 --- a/packages/react-table/src/components/BaseTable/BaseTable.tsx +++ b/packages/react-table/src/components/BaseTable/BaseTable.tsx @@ -2,9 +2,35 @@ import * as React from 'react'; import styles from '@patternfly/react-styles/css/components/Table/table'; import stylesGrid from '@patternfly/react-styles/css/components/Table/table-grid'; import { css } from '@patternfly/react-styles'; -import { TableGridBreakpoint, TableVariant, toCamel } from '../Table'; +import { TableGridBreakpoint, TableVariant, toCamel, OnSelect } from '../Table'; +import { IVisibility } from '../Table/utils/decorators/classNames'; import { useOUIAProps, OUIAProps } from '@patternfly/react-core'; +export interface BaseCellProps { + /** Content rendered inside the cell */ + children?: React.ReactNode; + /** Additional classes added to the cell */ + className?: string; + /** Element to render */ + component?: React.ReactNode; + /** Modifies cell to center its contents. */ + textCenter?: boolean; + /** Style modifier to apply */ + modifier?: 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'; + /** The column index */ + columnIndex?: number; + /** Transforms the cell into a selectable cell - Click callback on select */ + onSelect?: OnSelect; + /** Whether the cell is selected */ + isSelected?: boolean; + /** Width percentage modifier */ + width?: 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 | 50 | 60 | 70 | 80 | 90 | 100; + /** Visibility breakpoint modifiers */ + visibility?: (keyof IVisibility)[]; + /** Forwarded ref */ + innerRef?: React.Ref; +} + export interface BaseTableProps extends React.HTMLProps, OUIAProps { /** Adds an accessible name for the Table */ 'aria-label'?: string; diff --git a/packages/react-table/src/components/BaseTable/BaseTableHeaderRow.tsx b/packages/react-table/src/components/BaseTable/BaseTableHeaderRow.tsx deleted file mode 100644 index dd436a30d68..00000000000 --- a/packages/react-table/src/components/BaseTable/BaseTableHeaderRow.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import * as React from 'react'; - -export interface BaseTableHeaderRowProps extends React.HTMLProps { - /** Content rendered inside the row */ - children?: React.ReactNode; - /** Additional classes added to the row */ - className?: string; - /** Forwarded ref */ - innerRef?: React.Ref; -} - -const BaseTableHeaderRowBase: React.FunctionComponent = ({ - children, - className, - innerRef, - ...props -}: BaseTableHeaderRowProps) => ( - - {children} - -); - -export const BaseTableHeaderRow = React.forwardRef( - (props: BaseTableHeaderRowProps, ref: React.Ref) => ( - - ) -); -BaseTableHeaderRow.displayName = 'BaseTableHeaderRow'; diff --git a/packages/react-table/src/components/BaseTable/BaseTableCaption.tsx b/packages/react-table/src/components/BaseTable/Caption.tsx similarity index 60% rename from packages/react-table/src/components/BaseTable/BaseTableCaption.tsx rename to packages/react-table/src/components/BaseTable/Caption.tsx index 5d84b68a50c..895175d9401 100644 --- a/packages/react-table/src/components/BaseTable/BaseTableCaption.tsx +++ b/packages/react-table/src/components/BaseTable/Caption.tsx @@ -1,19 +1,19 @@ import * as React from 'react'; -export interface BaseTableCaptionProps { +export interface CaptionProps { /** Content rendered inside the caption */ children?: React.ReactNode; /** Additional classes added to the caption */ className?: string; } -export const BaseTableCaption: React.FunctionComponent = ({ +export const Caption: React.FunctionComponent = ({ children, className, ...props -}: BaseTableCaptionProps) => ( +}: CaptionProps) => ( {children} ); -BaseTableCaption.displayName = 'BaseTableCaption'; +Caption.displayName = 'Caption'; diff --git a/packages/react-table/src/components/BaseTable/BaseTableBody.tsx b/packages/react-table/src/components/BaseTable/TBody.tsx similarity index 61% rename from packages/react-table/src/components/BaseTable/BaseTableBody.tsx rename to packages/react-table/src/components/BaseTable/TBody.tsx index 2ebfa422cf7..1e3f314cef6 100644 --- a/packages/react-table/src/components/BaseTable/BaseTableBody.tsx +++ b/packages/react-table/src/components/BaseTable/TBody.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -export interface BaseTableBodyProps extends React.HTMLProps { +export interface TBodyProps extends React.HTMLProps { /** Content rendered inside the row */ children?: React.ReactNode; /** Additional classes added to the row */ @@ -13,19 +13,19 @@ export interface BaseTableBodyProps extends React.HTMLProps; } -const BaseTableBodyBase: React.FunctionComponent = ({ +const TBodyBase: React.FunctionComponent = ({ children, className, isExpanded, innerRef, ...props -}: BaseTableBodyProps) => ( +}: TBodyProps) => ( {children} ); -export const BaseTableBody = React.forwardRef((props: BaseTableBodyProps, ref: React.Ref) => ( - +export const TBody = React.forwardRef((props: TBodyProps, ref: React.Ref) => ( + )); -BaseTableBody.displayName = 'BaseTableBody'; +TBody.displayName = 'TBody'; diff --git a/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx b/packages/react-table/src/components/BaseTable/Td.tsx similarity index 79% rename from packages/react-table/src/components/BaseTable/BaseBodyCell.tsx rename to packages/react-table/src/components/BaseTable/Td.tsx index 046bd097891..fd9dbe5853c 100644 --- a/packages/react-table/src/components/BaseTable/BaseBodyCell.tsx +++ b/packages/react-table/src/components/BaseTable/Td.tsx @@ -26,35 +26,18 @@ import { DropdownDirection, DropdownPosition } from '@patternfly/react-core/dist/js/components/Dropdown/dropdownConstants'; +import { BaseCellProps } from './BaseTable'; -export interface BaseBodyCellProps extends Omit, 'onSelect'> { - /** Content rendered inside the body cell */ - children?: React.ReactNode; - /** Additional classes added to the body cell */ - className?: string; - /** Element to render */ - component?: React.ReactNode; +export interface TdProps extends BaseCellProps, Omit, 'onSelect' | 'width'> { + /** The selectable variant */ + selectVariant?: 'checkbox' | 'radio'; /** * The column header the cell corresponds to. * This attribute replaces table header in mobile viewport. It is rendered by ::before pseudo element. */ dataLabel?: string; - /** The column index */ - columnIndex?: number; /** The row index */ rowIndex?: number; - /** Modifies cell to center its contents. */ - textCenter?: boolean; - /** Style modifier to apply */ - modifier?: 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'; - /** Transforms the cell into a selectable cell - Click callback on select */ - onSelect?: OnSelect; - /** Whether the checkbox is selected */ - isSelected?: boolean; - /** The selectable variant */ - selectVariant?: 'checkbox' | 'radio'; - /** Whether all rows are selected */ - allRowsSelected?: boolean; /** Whether to disable the selection */ disableSelection?: boolean; /** Cell actions */ @@ -79,15 +62,9 @@ export interface BaseBodyCellProps extends Omit undefined; /** True to remove padding */ noPadding?: boolean; - /** Width percentage modifier */ - width?: 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 | 50 | 60 | 70 | 80 | 90 | 100; - /** Visibility breakpoint modifiers */ - visibility?: (keyof IVisibility)[]; - /** Forwarded ref */ - innerRef?: React.Ref; } -const BaseBodyCellBase: React.FunctionComponent = ({ +const TdBase: React.FunctionComponent = ({ children, className, component = 'td', @@ -99,7 +76,6 @@ const BaseBodyCellBase: React.FunctionComponent = ({ onSelect, isSelected = false, selectVariant = 'checkbox', - allRowsSelected, disableSelection = false, actions, actionsDisabled, @@ -113,7 +89,7 @@ const BaseBodyCellBase: React.FunctionComponent = ({ visibility, innerRef, ...props -}: BaseBodyCellProps) => { +}: TdProps) => { const selectParams = onSelect ? selectable(children as IFormatterValueType, { columnIndex, @@ -125,8 +101,7 @@ const BaseBodyCellBase: React.FunctionComponent = ({ column: { extraParams: { onSelect: onSelect as OnSelect, - selectVariant: selectVariant as 'checkbox' | 'radio', - allRowsSelected + selectVariant: selectVariant as 'checkbox' | 'radio' } } }) @@ -228,7 +203,7 @@ const BaseBodyCellBase: React.FunctionComponent = ({ ); }; -export const BaseBodyCell = React.forwardRef((props: BaseBodyCellProps, ref: React.Ref) => ( - +export const Td = React.forwardRef((props: TdProps, ref: React.Ref) => ( + )); -BaseBodyCell.displayName = 'BaseBodyCell'; +Td.displayName = 'Td'; diff --git a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx b/packages/react-table/src/components/BaseTable/Th.tsx similarity index 72% rename from packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx rename to packages/react-table/src/components/BaseTable/Th.tsx index 5de8560b3a1..01ca6d3e464 100644 --- a/packages/react-table/src/components/BaseTable/BaseHeaderCell.tsx +++ b/packages/react-table/src/components/BaseTable/Th.tsx @@ -16,34 +16,17 @@ import { } from '../Table'; import { IVisibility } from '../Table/utils/decorators/classNames'; import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; +import { BaseCellProps } from './BaseTable'; -export interface BaseHeaderCellProps extends Omit, 'onSelect'> { - /** Content rendered inside the header cell */ - children?: React.ReactNode; - /** Additional classes added to the header cell */ - className?: string; - /** Element to render */ - component?: React.ReactNode; - /** Modifies cell to center its contents. */ - textCenter?: boolean; +export interface ThProps extends BaseCellProps, Omit, 'onSelect' | 'width'> { + /** The selectable variant */ + selectVariant?: 'checkbox'; /** Wraps the content in a button and adds a sort icon - Click callback on the sortable cell */ onSort?: Function; /** Sort direction of the currently sorted column */ activeSortDirection?: SortByDirection | 'asc' | 'desc' | 'none'; /** Index of the currently sorted column */ activeSortIndex?: number; - /** Adds data-label attribute */ - dataLabel?: string; - /** The column index */ - columnIndex?: number; - /** Style modifier to apply */ - modifier?: 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'; - /** Transforms the cell into a selectable cell - Click callback on select */ - onSelect?: OnSelect; - /** The selectable variant */ - selectVariant?: 'checkbox' | 'radio'; - /** Whether all rows are selected */ - allRowsSelected?: boolean; /** * Tooltip to show on the header cell * Note: If the header cell is truncated and has simple string content, it will already attempt to display the header text @@ -53,15 +36,9 @@ export interface BaseHeaderCellProps extends Omit void; - /** Width percentage modifier */ - width?: 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 | 50 | 60 | 70 | 80 | 90 | 100; - /** Visibility breakpoint modifiers */ - visibility?: (keyof IVisibility)[]; - /** Forwarded ref */ - innerRef?: React.Ref; } -const BaseHeaderCellBase: React.FunctionComponent = ({ +const ThBase: React.FunctionComponent = ({ children, className, component = 'th', @@ -69,19 +46,18 @@ const BaseHeaderCellBase: React.FunctionComponent = ({ onSort, activeSortDirection = 'none', activeSortIndex, - dataLabel, columnIndex, modifier, onSelect, selectVariant = 'checkbox', - allRowsSelected, + isSelected, tooltip = '', onMouseEnter: onMouseEnterProp = () => {}, width, visibility, innerRef, ...props -}: BaseHeaderCellProps) => { +}: ThProps) => { const [showTooltip, setShowTooltip] = React.useState(false); const onMouseEnter = (event: any) => { if (event.target.offsetWidth < event.target.scrollWidth) { @@ -112,7 +88,7 @@ const BaseHeaderCellBase: React.FunctionComponent = ({ extraParams: { onSelect: onSelect as OnSelect, selectVariant: selectVariant as 'checkbox' | 'radio', - allRowsSelected + allRowsSelected: isSelected } } }) @@ -130,7 +106,6 @@ const BaseHeaderCellBase: React.FunctionComponent = ({ scope="col" aria-sort={sortParams ? (sortParams['aria-sort'] as 'none' | 'ascending' | 'descending') : null} ref={innerRef} - data-label={dataLabel || (typeof children === 'string' ? children : null)} data-key={columnIndex} className={css( className, @@ -157,9 +132,9 @@ const BaseHeaderCellBase: React.FunctionComponent = ({ ); }; -export const BaseHeaderCell = React.forwardRef( - (props: BaseHeaderCellProps, ref: React.Ref) => ( - +export const Th = React.forwardRef( + (props: ThProps, ref: React.Ref) => ( + ) ); -BaseHeaderCell.displayName = 'BaseHeaderCell'; +Th.displayName = 'Th'; diff --git a/packages/react-table/src/components/BaseTable/BaseTableHead.tsx b/packages/react-table/src/components/BaseTable/Thead.tsx similarity index 60% rename from packages/react-table/src/components/BaseTable/BaseTableHead.tsx rename to packages/react-table/src/components/BaseTable/Thead.tsx index dca3c0f5a62..a8e40bbc5d0 100644 --- a/packages/react-table/src/components/BaseTable/BaseTableHead.tsx +++ b/packages/react-table/src/components/BaseTable/Thead.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -export interface BaseTableHeadProps extends React.HTMLProps { +export interface THeadProps extends React.HTMLProps { /** Content rendered inside the row */ children?: React.ReactNode; /** Additional classes added to the row */ @@ -13,19 +13,19 @@ export interface BaseTableHeadProps extends React.HTMLProps; } -const BaseTableHeadBase: React.FunctionComponent = ({ +const THeadBase: React.FunctionComponent = ({ children, className, noWrap = false, innerRef, ...props -}: BaseTableHeadProps) => ( +}: THeadProps) => ( {children} ); -export const BaseTableHead = React.forwardRef((props: BaseTableHeadProps, ref: React.Ref) => ( - +export const THead = React.forwardRef((props: THeadProps, ref: React.Ref) => ( + )); -BaseTableHead.displayName = 'BaseTableHead'; +THead.displayName = 'THead'; diff --git a/packages/react-table/src/components/BaseTable/BaseTableBodyRow.tsx b/packages/react-table/src/components/BaseTable/Tr.tsx similarity index 67% rename from packages/react-table/src/components/BaseTable/BaseTableBodyRow.tsx rename to packages/react-table/src/components/BaseTable/Tr.tsx index 121b3ce03b1..7e90447bf38 100644 --- a/packages/react-table/src/components/BaseTable/BaseTableBodyRow.tsx +++ b/packages/react-table/src/components/BaseTable/Tr.tsx @@ -4,20 +4,21 @@ import styles from '@patternfly/react-styles/css/components/Table/table'; import inlineStyles from '@patternfly/react-styles/css/components/InlineEdit/inline-edit'; import { css } from '@patternfly/react-styles'; -export interface BaseTableBodyRowProps extends React.HTMLProps, OUIAProps { +export interface TrProps extends React.HTMLProps, OUIAProps { /** Content rendered inside the row */ children?: React.ReactNode; /** Additional classes added to the row */ className?: string; - /** Makes the row expandable and determines if it's expanded or not */ - isExpanded?: boolean; - /** Whether the row is editable */ - isEditable?: boolean; /** Forwarded ref */ innerRef?: React.Ref; + + /** Only applicable to Tr within the TBody: Makes the row expandable and determines if it's expanded or not */ + isExpanded?: boolean; + /** Only applicable to Tr within the TBody: Whether the row is editable */ + isEditable?: boolean; } -const BaseTableBodyRowBase: React.FunctionComponent = ({ +const TrBase: React.FunctionComponent = ({ children, className, isExpanded, @@ -26,7 +27,7 @@ const BaseTableBodyRowBase: React.FunctionComponent = ({ ouiaId, ouiaSafe = true, ...props -}: BaseTableBodyRowProps) => { +}: TrProps) => { const ouiaProps = useOUIAProps('TableRow', ouiaId, ouiaSafe); return ( = ({ ); }; -export const BaseTableBodyRow = React.forwardRef( - (props: BaseTableBodyRowProps, ref: React.Ref) => ( - +export const Tr = React.forwardRef( + (props: TrProps, ref: React.Ref) => ( + ) ); -BaseTableBodyRow.displayName = 'BaseTableBodyRow'; +Tr.displayName = 'Tr'; diff --git a/packages/react-table/src/components/BaseTable/index.ts b/packages/react-table/src/components/BaseTable/index.ts index 6dff92041a5..3bd971f040d 100644 --- a/packages/react-table/src/components/BaseTable/index.ts +++ b/packages/react-table/src/components/BaseTable/index.ts @@ -1,8 +1,8 @@ export * from './BaseTable'; -export * from './BaseTableHead'; -export * from './BaseTableHeaderRow'; -export * from './BaseTableBody'; -export * from './BaseTableBodyRow'; -export * from './BaseHeaderCell'; -export * from './BaseBodyCell'; -export * from './BaseTableCaption'; +export * from './THead'; +export * from './Tr'; +export * from './TBody'; +export * from './Tr'; +export * from './Th'; +export * from './Td'; +export * from './Caption'; diff --git a/packages/react-table/src/components/Table/BodyCell.tsx b/packages/react-table/src/components/Table/BodyCell.tsx index d775f50fa90..c6b3ba5ebfa 100644 --- a/packages/react-table/src/components/Table/BodyCell.tsx +++ b/packages/react-table/src/components/Table/BodyCell.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; import { SelectProps } from '@patternfly/react-core'; -import { BaseBodyCell } from '../BaseTable/BaseBodyCell'; +import { Td } from '../BaseTable/Td'; export interface BodyCellProps { 'data-label'?: string; @@ -65,7 +65,7 @@ export const BodyCell: React.FunctionComponent = ({ }; const cell = ( - = ({ {...props} > {children} - + ); const bodyCell = diff --git a/packages/react-table/src/components/Table/BodyWrapper.tsx b/packages/react-table/src/components/Table/BodyWrapper.tsx index 22ca6866b6a..e8b7f9186da 100644 --- a/packages/react-table/src/components/Table/BodyWrapper.tsx +++ b/packages/react-table/src/components/Table/BodyWrapper.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { IRow, IRowData, IExtraData, IHeaderRow } from './Table'; import { mapOpenedRows } from './utils/headerUtils'; -import { BaseTableBody } from '../BaseTable/BaseTableBody'; +import { TBody } from '../BaseTable/TBody'; export interface BodyWrapperProps { children?: React.ReactNode; @@ -32,13 +32,13 @@ export const BodyWrapper: React.FunctionComponent = ({ return ( {mapOpenedRows(mappedRows, props.children).map((oneRow, key) => ( - }> + }> {oneRow.rows} - + ))} ); } - return } />; + return } />; }; BodyWrapper.displayName = 'BodyWrapper'; diff --git a/packages/react-table/src/components/Table/HeaderCell.tsx b/packages/react-table/src/components/Table/HeaderCell.tsx index d02667ce9a9..d4ac94dde74 100644 --- a/packages/react-table/src/components/Table/HeaderCell.tsx +++ b/packages/react-table/src/components/Table/HeaderCell.tsx @@ -1,5 +1,5 @@ import * as React from 'react'; -import { BaseHeaderCell } from '../BaseTable/BaseHeaderCell'; +import { Th } from '../BaseTable/Th'; export interface HeaderCellProps { 'data-label'?: string; @@ -28,7 +28,7 @@ export const HeaderCell: React.FunctionComponent = ({ /* eslint-enable @typescript-eslint/no-unused-vars */ ...props }: HeaderCellProps) => ( - = ({ className={className} > {children} - + ); HeaderCell.displayName = 'HeaderCell'; diff --git a/packages/react-table/src/components/Table/RowWrapper.tsx b/packages/react-table/src/components/Table/RowWrapper.tsx index 56ded4a225d..5fdc6a1b3ad 100644 --- a/packages/react-table/src/components/Table/RowWrapper.tsx +++ b/packages/react-table/src/components/Table/RowWrapper.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { OUIAProps } from '@patternfly/react-core/dist/js/helpers/ouia'; import { debounce } from '@patternfly/react-core/dist/js/helpers/util'; -import { BaseTableBodyRow } from '../BaseTable/BaseTableBodyRow'; +import { Tr } from '../BaseTable/Tr'; // legacy export now, RowWrapperRow can simply be typed as IRow in the future export interface RowWrapperRow { @@ -96,7 +96,7 @@ export class RowWrapper extends React.Component { } = this.props; return ( - } isExpanded={isExpanded} diff --git a/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap b/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap index e6de1dca011..5949c6955e3 100644 --- a/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap +++ b/packages/react-table/src/components/Table/__snapshots__/RowWrapper.test.tsx.snap @@ -37,10 +37,10 @@ exports[`RowWrapper renders correctly 1`] = ` } } > - - - + + @@ -89,11 +89,11 @@ exports[`RowWrapper renders expanded correctly 1`] = ` } rowProps={null} > - - - + + diff --git a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap index 347cc041652..1794e237c2e 100644 --- a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap +++ b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap @@ -735,12 +735,12 @@ exports[`Actions table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -752,10 +752,10 @@ exports[`Actions table 1`] = ` } } > - - @@ -769,12 +769,12 @@ exports[`Actions table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -1052,11 +1052,17 @@ exports[`Actions table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - - - + + - - + + - - + + @@ -3406,12 +3412,12 @@ exports[`Actions table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -4354,10 +4360,10 @@ exports[`Actions table 1`] = ` ] } > - - @@ -4765,18 +4771,18 @@ exports[`Actions table 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - + + @@ -13927,12 +13933,12 @@ exports[`Cell header table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -13944,10 +13950,10 @@ exports[`Cell header table 1`] = ` } } > - - @@ -13961,12 +13967,12 @@ exports[`Cell header table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -14199,11 +14205,17 @@ exports[`Cell header table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -16424,12 +16436,12 @@ exports[`Cell header table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -17372,10 +17384,10 @@ exports[`Cell header table 1`] = ` ] } > - - @@ -17738,18 +17750,18 @@ exports[`Cell header table 1`] = ` } } > - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -23138,12 +23150,12 @@ exports[`Collapsible nested table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -23155,10 +23167,10 @@ exports[`Collapsible nested table 1`] = ` } } > - - @@ -23172,12 +23184,12 @@ exports[`Collapsible nested table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -23468,11 +23480,17 @@ exports[`Collapsible nested table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -25872,12 +25890,12 @@ exports[`Collapsible nested table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -26832,12 +26850,12 @@ exports[`Collapsible nested table 1`] = ` ] } > - - - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -30872,18 +30890,18 @@ exports[`Collapsible nested table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -31536,18 +31554,18 @@ exports[`Collapsible nested table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -32200,18 +32218,18 @@ exports[`Collapsible nested table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -32864,18 +32882,18 @@ exports[`Collapsible nested table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -33885,12 +33903,12 @@ exports[`Collapsible table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -33902,10 +33920,10 @@ exports[`Collapsible table 1`] = ` } } > - - @@ -33919,12 +33937,12 @@ exports[`Collapsible table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -34215,11 +34233,17 @@ exports[`Collapsible table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -36611,12 +36635,12 @@ exports[`Collapsible table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -37567,12 +37591,12 @@ exports[`Collapsible table 1`] = ` ] } > - - - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -39419,18 +39443,18 @@ exports[`Collapsible table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -41510,18 +41534,18 @@ exports[`Collapsible table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -42174,18 +42198,18 @@ exports[`Collapsible table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -42838,18 +42862,18 @@ exports[`Collapsible table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -43502,18 +43526,18 @@ exports[`Collapsible table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -44116,12 +44140,12 @@ exports[`Compound Expandable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -44133,10 +44157,10 @@ exports[`Compound Expandable table 1`] = ` } } > - - @@ -44150,12 +44174,12 @@ exports[`Compound Expandable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -44260,18 +44284,24 @@ exports[`Compound Expandable table 1`] = ` } rowIndex={0} > - - + - + - - col1 - - + + - - col2 - - + + - - + + - - + + @@ -45057,12 +45087,12 @@ exports[`Compound Expandable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -45355,12 +45385,12 @@ exports[`Compound Expandable table 1`] = ` ] } > - - - - - - - - + + - - - - + + - - + + - - - - expanded - - + + - - + + - - - + + - - - - - - - + + - - - - + + - - + + - - - - expanded - - + + - - + + - - + + @@ -47238,12 +47268,12 @@ exports[`Control text table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -47255,10 +47285,10 @@ exports[`Control text table 1`] = ` } } > - - @@ -47272,12 +47302,12 @@ exports[`Control text table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -47515,11 +47545,17 @@ exports[`Control text table 1`] = ` } rowIndex={0} > - - + - + - - Header cell - - + + - - new object column - - + + - - Pull requests - - + + - - new object column - - + + - - Last Commit - - + + - - + + - - + + @@ -49536,12 +49572,12 @@ exports[`Control text table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -50370,12 +50406,12 @@ exports[`Control text table 1`] = ` ] } > - - - - - - - - + + - - four - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - four - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - four - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - - - - - - - + + - - four - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - four - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -53495,18 +53531,18 @@ exports[`Control text table 1`] = ` } } > - - - - - - + + - - four - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -54053,18 +54089,18 @@ exports[`Control text table 1`] = ` } } > - - - - - - + + - - four - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -54611,18 +54647,18 @@ exports[`Control text table 1`] = ` } } > - - - - - - + + - - four - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -55169,18 +55205,18 @@ exports[`Control text table 1`] = ` } } > - - - - - - + + - - four - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -56000,12 +56036,12 @@ exports[`Editable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -56017,10 +56053,10 @@ exports[`Editable table 1`] = ` } } > - - @@ -56034,12 +56070,12 @@ exports[`Editable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -56271,18 +56307,24 @@ exports[`Editable table 1`] = ` } rowIndex={0} > - - + - + - - Text input col 1 - - + + - - Disabled text input col 2 - - + + - - Text input col 3 - - + + - - Text input col 4 - - + + - - - - + + - - + + - - + + @@ -57796,12 +57838,12 @@ exports[`Editable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -58326,10 +58368,10 @@ exports[`Editable table 1`] = ` ] } > - - @@ -58839,12 +58881,12 @@ exports[`Editable table 1`] = ` } } > - - - - - - + + - - - - + + - - - - + + - - - - + + - - - - + + - - + + - - - - - - + + - - - - + + - - - - + + - - - - + + - - - - + + - - + + - - + + @@ -61234,12 +61276,12 @@ exports[`Header width table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -61251,10 +61293,10 @@ exports[`Header width table 1`] = ` } } > - - @@ -61268,12 +61310,12 @@ exports[`Header width table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -61509,11 +61551,17 @@ exports[`Header width table 1`] = ` } rowIndex={0} > - - + - + - - Header cell - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -63713,12 +63761,12 @@ exports[`Header width table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -64673,12 +64721,12 @@ exports[`Header width table 1`] = ` ] } > - - - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -67870,18 +67918,18 @@ exports[`Header width table 1`] = ` } } > - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -68440,18 +68488,18 @@ exports[`Header width table 1`] = ` } } > - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -69010,18 +69058,18 @@ exports[`Header width table 1`] = ` } } > - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -69580,18 +69628,18 @@ exports[`Header width table 1`] = ` } } > - - - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -70433,12 +70481,12 @@ exports[`Row click table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -70450,10 +70498,10 @@ exports[`Row click table 1`] = ` } } > - - @@ -70467,12 +70515,12 @@ exports[`Row click table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -70704,11 +70752,17 @@ exports[`Row click table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -72929,12 +72983,12 @@ exports[`Row click table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -73877,10 +73931,10 @@ exports[`Row click table 1`] = ` ] } > - - @@ -74242,18 +74296,18 @@ exports[`Row click table 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -79567,12 +79621,12 @@ exports[`Selectable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -79584,10 +79638,10 @@ exports[`Selectable table 1`] = ` } } > - - @@ -79601,12 +79655,12 @@ exports[`Selectable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -79886,11 +79940,17 @@ exports[`Selectable table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -82286,12 +82346,12 @@ exports[`Selectable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -83246,12 +83306,12 @@ exports[`Selectable table 1`] = ` ] } > - - - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -86906,18 +86966,18 @@ exports[`Selectable table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -87570,18 +87630,18 @@ exports[`Selectable table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -88234,18 +88294,18 @@ exports[`Selectable table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -88898,18 +88958,18 @@ exports[`Selectable table 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -89908,12 +89968,12 @@ exports[`Selectable table with Radio 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -89925,10 +89985,10 @@ exports[`Selectable table with Radio 1`] = ` } } > - - @@ -89942,12 +90002,12 @@ exports[`Selectable table with Radio 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -90226,18 +90286,24 @@ exports[`Selectable table with Radio 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -92605,12 +92671,12 @@ exports[`Selectable table with Radio 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -93565,12 +93631,12 @@ exports[`Selectable table with Radio 1`] = ` ] } > - - - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -97219,18 +97285,18 @@ exports[`Selectable table with Radio 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -97882,18 +97948,18 @@ exports[`Selectable table with Radio 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -98545,18 +98611,18 @@ exports[`Selectable table with Radio 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - + + - @@ -99208,18 +99274,18 @@ exports[`Selectable table with Radio 1`] = ` } } > - - - - - - + + - - - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -100463,12 +100529,12 @@ exports[`Simple Actions table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -100480,10 +100546,10 @@ exports[`Simple Actions table 1`] = ` } } > - - @@ -100497,12 +100563,12 @@ exports[`Simple Actions table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -100894,11 +100960,17 @@ exports[`Simple Actions table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - - - + + - - + + - - + + @@ -103642,12 +103714,12 @@ exports[`Simple Actions table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -104694,10 +104766,10 @@ exports[`Simple Actions table 1`] = ` ] } > - - @@ -105219,18 +105291,18 @@ exports[`Simple Actions table 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - - - + + - - + + - - + + @@ -116545,12 +116617,12 @@ exports[`Simple table aria-label 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -116562,10 +116634,10 @@ exports[`Simple table aria-label 1`] = ` } } > - - @@ -116579,12 +116651,12 @@ exports[`Simple table aria-label 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -116815,18 +116887,24 @@ exports[`Simple table aria-label 1`] = ` } rowIndex={0} > - - + - + - - Header cell - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -118982,12 +119060,12 @@ exports[`Simple table aria-label 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -119930,10 +120008,10 @@ exports[`Simple table aria-label 1`] = ` ] } > - - @@ -120294,18 +120372,18 @@ exports[`Simple table aria-label 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -125496,12 +125574,12 @@ exports[`Simple table caption 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -125513,10 +125591,10 @@ exports[`Simple table caption 1`] = ` } } > - - @@ -125530,12 +125608,12 @@ exports[`Simple table caption 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -125766,18 +125844,24 @@ exports[`Simple table caption 1`] = ` } rowIndex={0} > - - + - + - - Header cell - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -127933,12 +128017,12 @@ exports[`Simple table caption 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -128881,10 +128965,10 @@ exports[`Simple table caption 1`] = ` ] } > - - @@ -129245,18 +129329,18 @@ exports[`Simple table caption 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -134451,12 +134535,12 @@ exports[`Simple table header 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -134468,10 +134552,10 @@ exports[`Simple table header 1`] = ` } } > - - @@ -134485,12 +134569,12 @@ exports[`Simple table header 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -134721,18 +134805,24 @@ exports[`Simple table header 1`] = ` } rowIndex={0} > - - + - + - - Header cell - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -136888,12 +136978,12 @@ exports[`Simple table header 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -137836,10 +137926,10 @@ exports[`Simple table header 1`] = ` ] } > - - @@ -138200,18 +138290,18 @@ exports[`Simple table header 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -143410,12 +143500,12 @@ exports[`Sortable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -143427,10 +143517,10 @@ exports[`Sortable table 1`] = ` } } > - - @@ -143444,12 +143534,12 @@ exports[`Sortable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -143681,11 +143771,17 @@ exports[`Sortable table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -145905,12 +146001,12 @@ exports[`Sortable table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -146853,10 +146949,10 @@ exports[`Sortable table 1`] = ` ] } > - - @@ -147218,18 +147314,18 @@ exports[`Sortable table 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -152434,12 +152530,12 @@ exports[`Table variants Breakpoint - 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -152451,10 +152547,10 @@ exports[`Table variants Breakpoint - 1`] = ` } } > - - @@ -152468,12 +152564,12 @@ exports[`Table variants Breakpoint - 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -152705,11 +152801,17 @@ exports[`Table variants Breakpoint - 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -154928,12 +155030,12 @@ exports[`Table variants Breakpoint - 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -155876,10 +155978,10 @@ exports[`Table variants Breakpoint - 1`] = ` ] } > - - @@ -156241,18 +156343,18 @@ exports[`Table variants Breakpoint - 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -161457,12 +161559,12 @@ exports[`Table variants Breakpoint - grid 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -161474,10 +161576,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` } } > - - @@ -161491,12 +161593,12 @@ exports[`Table variants Breakpoint - grid 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -161728,11 +161830,17 @@ exports[`Table variants Breakpoint - grid 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -163951,12 +164059,12 @@ exports[`Table variants Breakpoint - grid 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -164899,10 +165007,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` ] } > - - @@ -165264,18 +165372,18 @@ exports[`Table variants Breakpoint - grid 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -170480,12 +170588,12 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -170497,10 +170605,10 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` } } > - - @@ -170514,12 +170622,12 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -170751,11 +170859,17 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -172974,12 +173088,12 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -173922,10 +174036,10 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` ] } > - - @@ -174287,18 +174401,18 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -179503,12 +179617,12 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -179520,10 +179634,10 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` } } > - - @@ -179537,12 +179651,12 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -179774,11 +179888,17 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -181997,12 +182117,12 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -182945,10 +183065,10 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` ] } > - - @@ -183310,18 +183430,18 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -188526,12 +188646,12 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -188543,10 +188663,10 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` } } > - - @@ -188560,12 +188680,12 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -188797,11 +188917,17 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -191020,12 +191146,12 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -191968,10 +192094,10 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` ] } > - - @@ -192333,18 +192459,18 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -197549,12 +197675,12 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -197566,10 +197692,10 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` } } > - - @@ -197583,12 +197709,12 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -197820,11 +197946,17 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -200043,12 +200175,12 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -200991,10 +201123,10 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` ] } > - - @@ -201356,18 +201488,18 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -206572,12 +206704,12 @@ exports[`Table variants Size - compact 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -206589,10 +206721,10 @@ exports[`Table variants Size - compact 1`] = ` } } > - - @@ -206606,12 +206738,12 @@ exports[`Table variants Size - compact 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -206843,11 +206975,17 @@ exports[`Table variants Size - compact 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -209066,12 +209204,12 @@ exports[`Table variants Size - compact 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -210014,10 +210152,10 @@ exports[`Table variants Size - compact 1`] = ` ] } > - - @@ -210379,18 +210517,18 @@ exports[`Table variants Size - compact 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -215595,12 +215733,12 @@ exports[`Table variants Size - compactBorderless 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -215612,10 +215750,10 @@ exports[`Table variants Size - compactBorderless 1`] = ` } } > - - @@ -215629,12 +215767,12 @@ exports[`Table variants Size - compactBorderless 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -215866,11 +216004,17 @@ exports[`Table variants Size - compactBorderless 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -218089,12 +218233,12 @@ exports[`Table variants Size - compactBorderless 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -219037,10 +219181,10 @@ exports[`Table variants Size - compactBorderless 1`] = ` ] } > - - @@ -219402,18 +219546,18 @@ exports[`Table variants Size - compactBorderless 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + @@ -224618,12 +224762,12 @@ exports[`Table variants Size - compactExpandable 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -224635,10 +224779,10 @@ exports[`Table variants Size - compactExpandable 1`] = ` } } > - - @@ -224652,12 +224796,12 @@ exports[`Table variants Size - compactExpandable 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -224889,11 +225033,17 @@ exports[`Table variants Size - compactExpandable 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -227112,12 +227262,12 @@ exports[`Table variants Size - compactExpandable 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -228060,10 +228210,10 @@ exports[`Table variants Size - compactExpandable 1`] = ` ] } > - - @@ -228425,18 +228575,18 @@ exports[`Table variants Size - compactExpandable 1`] = ` } } > - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - - - one - - + + - - two - - + + - - three - - + + - - four - - + + - - five - - + + - - + + - - + + diff --git a/packages/react-table/src/components/Table/base/types.tsx b/packages/react-table/src/components/Table/base/types.tsx index 5016013efd7..a0e59bde28c 100644 --- a/packages/react-table/src/components/Table/base/types.tsx +++ b/packages/react-table/src/components/Table/base/types.tsx @@ -8,12 +8,11 @@ import * as React from 'react'; import { TooltipProps, PopoverProps } from '@patternfly/react-core'; import { BaseTable } from '../../BaseTable/BaseTable'; -import { BaseTableHead } from '../../BaseTable/BaseTableHead'; -import { BaseTableHeaderRow } from '../../BaseTable/BaseTableHeaderRow'; -import { BaseTableBody } from '../../BaseTable/BaseTableBody'; -import { BaseTableBodyRow } from '../../BaseTable/BaseTableBodyRow'; -import { BaseHeaderCell } from '../../BaseTable/BaseHeaderCell'; -import { BaseBodyCell } from '../../BaseTable/BaseBodyCell'; +import { THead } from '../../BaseTable/THead'; +import { TBody } from '../../BaseTable/TBody'; +import { Tr } from '../../BaseTable/Tr'; +import { Th } from '../../BaseTable/Th'; +import { Td } from '../../BaseTable/Td'; // Cell Type export interface CellType { @@ -63,14 +62,14 @@ export const TableDefaults = { renderers: { table: BaseTable, header: { - wrapper: BaseTableHead, - row: BaseTableHeaderRow, - cell: BaseHeaderCell + wrapper: THead, + row: Tr, + cell: Th }, body: { - wrapper: BaseTableBody, - row: BaseTableBodyRow, - cell: BaseBodyCell + wrapper: TBody, + row: Tr, + cell: Td } } }; diff --git a/packages/react-table/src/components/Table/examples/ComposableTable.md b/packages/react-table/src/components/Table/examples/ComposableTable.md index e990812285a..7ed0feff7b9 100644 --- a/packages/react-table/src/components/Table/examples/ComposableTable.md +++ b/packages/react-table/src/components/Table/examples/ComposableTable.md @@ -2,17 +2,7 @@ id: TableComposable cssPrefix: pf-c-table section: components -propComponents: - [ - 'BaseTable', - 'BaseTableCaption', - 'BaseTableHead', - 'BaseTableBody', - 'BaseTableHeaderRow', - 'BaseTableBodyRow', - 'BaseHeaderCell', - 'BaseBodyCell', - ] +propComponents: ['BaseTable', 'Caption', 'THead', 'TBody', 'Tr', 'Tr', 'Th', 'Td'] ouia: true beta: true --- @@ -34,30 +24,15 @@ import DemoSortableTable from './DemoSortableTable'; A basic example using the Base\* table components. Some general notes: -- Provide `dataLabel` prop to the `BaseBodyCell` components so that in mobile view the cell has a label to provide context. -- If you want a table caption, simply place a `My caption` as the first child within a `BaseTable`. +- Provide `dataLabel` prop to the `Td` components so that in mobile view the cell has a label to provide context. +- If you want a table caption, simply place a `My caption` as the first child within a `BaseTable`. ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell, - BaseTableCaption -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td, Caption } from '@patternfly/react-table'; ComposableTableBasic = () => { - const columns = [ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; const rows = [ ['one', 'two', 'three', 'four', 'five'], ['one - 2', null, null, 'four - 2', 'five - 2'], @@ -65,25 +40,25 @@ ComposableTableBasic = () => { ]; return ( - Simple table using composable components - - + Simple table using composable components + + {columns.map((column, columnIndex) => ( - {column} + {column} ))} - - - + + + {rows.map((row, rowIndex) => ( - + {row.map((cell, cellIndex) => ( - + {cell} - + ))} - + ))} - + ); }; @@ -94,31 +69,16 @@ ComposableTableBasic = () => { This example demonstrates customizing rows, adding tooltip and popover information to header items, and some other misc. props. - You can wrap the header cell contents in a `HeaderCellInfoWrapper` component to give it a tooltip or popover -- If you add the `noWrap` prop to `BaseTableHead`, it won't wrap it if there is no space -- You can add the `textCenter` prop to `BaseHeaderCell` or `BaseBodyCell` to center the contents -- You can pass `onClick`, `className`, `style` and more to `BaseTableBodyRow` +- If you add the `noWrap` prop to `THead`, it won't wrap it if there is no space +- You can add the `textCenter` prop to `Th` or `Td` to center the contents +- You can pass `onClick`, `className`, `style` and more to `Tr` ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell, - HeaderCellInfoWrapper -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td, HeaderCellInfoWrapper } from '@patternfly/react-table'; ComposableTableMisc = () => { - const columns = [ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; const rows = [ ['one', 'two', 'three', 'four', 'five'], [{ title: 'one - 2', colSpan: 3 }, null, null, 'four - 2', 'five - 2'], @@ -129,9 +89,9 @@ ComposableTableMisc = () => { }; return ( - - - + + + { > {columns[0]} - - {columns[1]} - + + {columns[1]} + { > {columns[2]} - - {columns[3]} - {columns[4]} - - - + + {columns[3]} + {columns[4]} + + + {rows.map((row, rowIndex) => { const isOddRow = (rowIndex + 1) % 2; const customStyle = { borderLeft: '3px solid var(--pf-global--primary-color--100)' }; return ( - onRowClick(event, rowIndex, row)} className={isOddRow ? 'odd-row-class' : 'even-row-class'} @@ -186,13 +146,13 @@ ComposableTableMisc = () => { if (typeof cell !== 'object') { cellObject = { title: cell - } + }; } else { cellObject = cell; } const { title, ...rest } = cellObject; return ( - { {...rest} > {title} - + ); })} - + ); })} - + ); }; @@ -214,19 +174,11 @@ ComposableTableMisc = () => { ### Sortable, sortable with wrapping headers -This example demonstrates making columns sortable, and wrapping header text. For sorting it is also important to pass the `columnIndex` to the `BaseHeaderCell`. +This example demonstrates making columns sortable, and wrapping header text. For sorting it is also important to pass the `columnIndex` to the `Th`. ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; ComposableTableSortable = () => { const columns = [ @@ -268,8 +220,8 @@ ComposableTableSortable = () => { }; return ( - - + + {columns.map((column, columnIndex) => { // In this example, wrap all but the first column just to demonstrate const modifier = columnIndex !== 0 ? 'wrap' : null; @@ -284,24 +236,24 @@ ComposableTableSortable = () => { } : {}; return ( - + {column} - + ); })} - - - + + + {rows.map((row, rowIndex) => ( - + {row.map((cell, cellIndex) => ( - + {cell} - + ))} - + ))} - + ); }; @@ -310,28 +262,14 @@ ComposableTableSortable = () => { ### Selectable This example demonstrates row selection. The selection column is just another column, but with selection specific props added. We add it as the first header cell and also as the first body cell for each row. -Be sure to also add `columnIndex` to `BaseHeaderCell` and `columnIndex` as well as `rowIndex` to `BaseBodyCell`. +Be sure to also add `columnIndex` to `Th` and `columnIndex` as well as `rowIndex` to `Td`. ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; ComposableTableSelectable = () => { - const columns = [ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; const rows = [ ['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], @@ -363,20 +301,20 @@ ComposableTableSelectable = () => { }; return ( - - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + {rows.map((row, rowIndex) => ( - - + { {row.map((cell, cellIndex) => { const shiftedIndex = cellIndex + 1; return ( - + {cell} - + ); })} - + ))} - + ); }; @@ -406,28 +340,14 @@ ComposableTableSelectable = () => { ### Selectable radio input -Similarly to the selectable example above, the radio buttons use the first column. The first header cell is empty, and each body row's first cell has radio button props. Just as with selectable, be sure to also add `columnIndex` to `BaseHeaderCell` and `columnIndex` as well as `rowIndex` to `BaseBodyCell`. +Similarly to the selectable example above, the radio buttons use the first column. The first header cell is empty, and each body row's first cell has radio button props. Just as with selectable, be sure to also add `columnIndex` to `Th` and `columnIndex` as well as `rowIndex` to `Td`. ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; ComposableTableSelectableRadio = () => { - const columns = [ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; const rows = [ ['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], @@ -439,20 +359,20 @@ ComposableTableSelectableRadio = () => { }; return ( - - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + {rows.map((row, rowIndex) => ( - - + { {row.map((cell, cellIndex) => { const shiftedIndex = cellIndex + 1; return ( - + {cell} - + ); })} - + ))} - + ); }; @@ -487,15 +403,7 @@ This example demonstrates adding actions as the last column. The header's last c ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; ComposableTableActions = () => { const defaultActions = [ @@ -531,13 +439,7 @@ ComposableTableActions = () => { onClick: (event, rowId, rowData, extra) => console.log(`clicked on Third action, on row ${rowId}`) } ]; - const columns = [ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; const rows = [ ['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], @@ -547,34 +449,34 @@ ComposableTableActions = () => { ]; return ( - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - - + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + {rows.map((row, rowIndex) => ( - + {row.map((cell, cellIndex) => ( - + {cell} - + ))} - - + ))} - + ); }; @@ -586,25 +488,11 @@ You can set the `BaseTable` variant to `compact` or `compactBorderless`. ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; ComposableTableCompact = () => { - const columns = [ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; const rows = [ ['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], @@ -620,36 +508,38 @@ ComposableTableCompact = () => { return ( - - Compact - + - Compact & borderless - + /> - - + + {columns.map((column, columnIndex) => ( - {column} + {column} ))} - - - + + + {rows.map((row, rowIndex) => ( - + {row.map((cell, cellIndex) => ( - + {cell} - + ))} - + ))} - + ); @@ -660,31 +550,16 @@ ComposableTableCompact = () => { This example demonstrates having expandable rows. -- Each parent/child row pair is enclosed in a `BaseTableBody` component. +- Each parent/child row pair is enclosed in a `TBody` component. - You can make the table more compact by setting the `BaseTable` variant to `compactExpandable`. ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell, - ExpandableRowContent -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td, ExpandableRowContent } from '@patternfly/react-table'; import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; ComposableTableExpandable = () => { - const columns = [ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; const rowPairs = [ { parent: ['one', 'two', 'a', 'four', 'five'], child: null }, { @@ -746,7 +621,9 @@ ComposableTableExpandable = () => { ]; const numColumns = columns.length; // Init all to true - const [expanded, setExpanded] = React.useState(Object.fromEntries(Object.entries(rowPairs).map(([k, v]) => [k, true]))); + const [expanded, setExpanded] = React.useState( + Object.fromEntries(Object.entries(rowPairs).map(([k, v]) => [k, true])) + ); const [variant, setVariant] = React.useState(null); const handleItemClick = (isSelected, event) => { const id = event.currentTarget.id; @@ -774,21 +651,21 @@ ComposableTableExpandable = () => { - - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + {rowPairs.map((pair, pairIndex) => { rowIndex += 1; const parentRow = ( - - + { onClick={() => handleExpansionToggle(pairIndex)} /> {pair.parent.map((cell, cellIndex) => ( - {cell} - + ))} - + ); if (pair.child) { rowIndex += 1; } const childRow = pair.child ? ( - - {!rowPairs[pairIndex].fullWidth && } + + {!rowPairs[pairIndex].fullWidth && } {rowPairs[pairIndex].child.map((cell, cellIndex) => { const shift = rowPairs[pairIndex].fullWidth ? 1 : 0; const shiftedCellIndex = cellIndex + shift; return ( - { } > {cell.title || cell} - + ); })} - + ) : null; return ( - + {parentRow} {childRow} - + ); })} @@ -856,16 +733,7 @@ ComposableTableExpandable = () => { ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell, - ExpandableRowContent -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td, ExpandableRowContent } from '@patternfly/react-table'; import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; @@ -875,14 +743,7 @@ import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; import DemoSortableTable from './demo/DemoSortableTable'; ComposableCompoundExpandableTable = () => { - const columns = [ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit', - '' - ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit', '']; const rows = [ ['siemur/test-space', 10, 4, 4, '20 minutes', 'Open in Github'], ['siemur/test-space', 3, 4, 2, '10 minutes', 'Open in Github'] @@ -981,23 +842,23 @@ ComposableCompoundExpandableTable = () => { return ( - - + + {columns.map((column, columnIndex) => ( - + {column} - + ))} - - + + {rows.map((row, rowIndex) => { const isRowExpanded = activeChild && activeChild.split('_')[0] === `${rowIndex}`; return ( - + - + {row.map((cell, cellIndex) => ( - { }} > {customRender(cell, cellIndex)} - + ))} - + {isRowExpanded && ( - - + + {childData[activeChild].component} - - + + )} - + ); })} @@ -1043,24 +904,10 @@ ComposableCompoundExpandableTable = () => { ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; ComposableTableCellWidth = () => { - const columns = [ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; const rows = [ ['one', 'two', 'three', 'four', 'five'], ['one - 2', null, null, 'four - 2', 'five - 2'], @@ -1068,34 +915,34 @@ ComposableTableCellWidth = () => { ]; return ( - - + + {columns.map((column, columnIndex) => ( - {column} - + ))} - - - + + + {rows.map((row, rowIndex) => ( - + {row.map((cell, cellIndex) => ( - {cell} - + ))} - + ))} - + ); }; @@ -1105,15 +952,7 @@ ComposableTableCellWidth = () => { ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; ComposableControllingText = () => { const columns = [ @@ -1139,38 +978,32 @@ ComposableControllingText = () => { ]; return ( - - - - {columns[0]} - - {columns[1]} - - {columns[2]} - - - {columns[3]} - - {columns[4]} - - - + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + {rows.map((row, rowIndex) => ( - - + + {row[0]} - - + + {row[1]} - - {row[2]} - {row[3]} - + + {row[2]} + {row[3]} + {row[4]} - - + + ))} - + ); }; @@ -1180,22 +1013,10 @@ ComposableControllingText = () => { ```js isBeta import React from 'react'; -import { - BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell, - TableText -} from '@patternfly/react-table'; +import { BaseTable, THead, TBody, Tr, Th, Td, TableText } from '@patternfly/react-table'; ComposableTableText = () => { - const columns = [ - 'Truncating text', - 'Wrapping table header text. This th text will wrap instead of truncate.' - ]; + const columns = ['Truncating text', 'Wrapping table header text. This th text will wrap instead of truncate.']; const rows = [ [ This text will truncate instead of wrap., @@ -1206,25 +1027,23 @@ ComposableTableText = () => { ]; return ( - - - - {columns[0]} - - {columns[1]} - - - + + + {columns[0]} + {columns[1]} + + + {rows.map((row, rowIndex) => ( - + {row.map((cell, cellIndex) => ( - + {cell} - + ))} - + ))} - + ); }; @@ -1236,13 +1055,12 @@ ComposableTableText = () => { import React from 'react'; import { BaseTable, - BaseTableHead, - BaseTableBody, - BaseTableHeaderRow, - BaseTableBodyRow, - BaseHeaderCell, - BaseBodyCell, - BaseTableCaption, + THead, + TBody, + Tr, + Th, + Td, + Caption, Button, EmptyState, EmptyStateBody, @@ -1253,26 +1071,20 @@ import { } from '@patternfly/react-table'; ComposableEmptyState = () => { - const columns = [ - 'Repositories', - 'Branches', - 'Pull requests', - 'Workspaces', - 'Last commit' - ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; return ( - Empty State Table Example - - + Empty State Table Example + + {columns.map((column, columnIndex) => ( - + {column} - + ))} - - + + From 598ad20d103b1e407c304b1eaae2112b453efb3a Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Thu, 22 Oct 2020 10:22:39 -0400 Subject: [PATCH 15/29] wip --- .../react-table/src/components/BaseTable/Caption.tsx | 6 +----- packages/react-table/src/components/BaseTable/Th.tsx | 12 ++++++------ packages/react-table/src/components/BaseTable/Tr.tsx | 8 +++----- 3 files changed, 10 insertions(+), 16 deletions(-) diff --git a/packages/react-table/src/components/BaseTable/Caption.tsx b/packages/react-table/src/components/BaseTable/Caption.tsx index 895175d9401..2997e2e11cf 100644 --- a/packages/react-table/src/components/BaseTable/Caption.tsx +++ b/packages/react-table/src/components/BaseTable/Caption.tsx @@ -7,11 +7,7 @@ export interface CaptionProps { className?: string; } -export const Caption: React.FunctionComponent = ({ - children, - className, - ...props -}: CaptionProps) => ( +export const Caption: React.FunctionComponent = ({ children, className, ...props }: CaptionProps) => ( {children} diff --git a/packages/react-table/src/components/BaseTable/Th.tsx b/packages/react-table/src/components/BaseTable/Th.tsx index 01ca6d3e464..471523831cb 100644 --- a/packages/react-table/src/components/BaseTable/Th.tsx +++ b/packages/react-table/src/components/BaseTable/Th.tsx @@ -18,7 +18,9 @@ import { IVisibility } from '../Table/utils/decorators/classNames'; import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; import { BaseCellProps } from './BaseTable'; -export interface ThProps extends BaseCellProps, Omit, 'onSelect' | 'width'> { +export interface ThProps + extends BaseCellProps, + Omit, 'onSelect' | 'width'> { /** The selectable variant */ selectVariant?: 'checkbox'; /** Wraps the content in a button and adds a sort icon - Click callback on the sortable cell */ @@ -132,9 +134,7 @@ const ThBase: React.FunctionComponent = ({ ); }; -export const Th = React.forwardRef( - (props: ThProps, ref: React.Ref) => ( - - ) -); +export const Th = React.forwardRef((props: ThProps, ref: React.Ref) => ( + +)); Th.displayName = 'Th'; diff --git a/packages/react-table/src/components/BaseTable/Tr.tsx b/packages/react-table/src/components/BaseTable/Tr.tsx index 7e90447bf38..6dc44214582 100644 --- a/packages/react-table/src/components/BaseTable/Tr.tsx +++ b/packages/react-table/src/components/BaseTable/Tr.tsx @@ -47,9 +47,7 @@ const TrBase: React.FunctionComponent = ({ ); }; -export const Tr = React.forwardRef( - (props: TrProps, ref: React.Ref) => ( - - ) -); +export const Tr = React.forwardRef((props: TrProps, ref: React.Ref) => ( + +)); Tr.displayName = 'Tr'; From 090d929b4a99f54e6d8d93293c84ddf7bc2c9519 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Thu, 22 Oct 2020 10:28:25 -0400 Subject: [PATCH 16/29] props order --- .../src/components/Table/examples/ComposableTable.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react-table/src/components/Table/examples/ComposableTable.md b/packages/react-table/src/components/Table/examples/ComposableTable.md index 7ed0feff7b9..1bff586b8f9 100644 --- a/packages/react-table/src/components/Table/examples/ComposableTable.md +++ b/packages/react-table/src/components/Table/examples/ComposableTable.md @@ -2,7 +2,7 @@ id: TableComposable cssPrefix: pf-c-table section: components -propComponents: ['BaseTable', 'Caption', 'THead', 'TBody', 'Tr', 'Tr', 'Th', 'Td'] +propComponents: ['BaseTable', 'THead', 'TBody', 'Tr', 'Th', 'Td', 'Caption'] ouia: true beta: true --- From 93ba6ad5431d599d55af235520fbe4973e15aa47 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Thu, 22 Oct 2020 10:38:26 -0400 Subject: [PATCH 17/29] snapshots --- .../VirtualizedTable.test.tsx.snap | 456 ++++++++++-------- 1 file changed, 246 insertions(+), 210 deletions(-) diff --git a/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap b/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap index 214a2a946c4..966069240d5 100644 --- a/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap +++ b/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap @@ -735,12 +735,12 @@ exports[`Actions virtualized table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -752,10 +752,10 @@ exports[`Actions virtualized table 1`] = ` } } > - - @@ -769,12 +769,12 @@ exports[`Actions virtualized table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -1052,11 +1052,17 @@ exports[`Actions virtualized table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - - - + + - - + + - - + + @@ -2102,12 +2108,12 @@ exports[`Selectable virtualized table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -2119,10 +2125,10 @@ exports[`Selectable virtualized table 1`] = ` } } > - - @@ -2136,12 +2142,12 @@ exports[`Selectable virtualized table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -2419,11 +2425,17 @@ exports[`Selectable virtualized table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -3746,12 +3758,12 @@ exports[`Simple Actions table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -3763,10 +3775,10 @@ exports[`Simple Actions table 1`] = ` } } > - - @@ -3780,12 +3792,12 @@ exports[`Simple Actions table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -4177,11 +4189,17 @@ exports[`Simple Actions table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - - - + + - - + + - - + + @@ -5129,12 +5147,12 @@ exports[`Simple virtualized table aria-label 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -5146,10 +5164,10 @@ exports[`Simple virtualized table aria-label 1`] = ` } } > - - @@ -5163,12 +5181,12 @@ exports[`Simple virtualized table aria-label 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -5399,18 +5417,24 @@ exports[`Simple virtualized table aria-label 1`] = ` } rowIndex={0} > - - + - + - - Header cell - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -6258,12 +6282,12 @@ exports[`Simple virtualized table className 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -6275,10 +6299,10 @@ exports[`Simple virtualized table className 1`] = ` } } > - - @@ -6292,12 +6316,12 @@ exports[`Simple virtualized table className 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -6528,18 +6552,24 @@ exports[`Simple virtualized table className 1`] = ` } rowIndex={0} > - - + - + - - Header cell - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + @@ -7394,12 +7424,12 @@ exports[`Sortable Virtualized Table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, }, @@ -7411,10 +7441,10 @@ exports[`Sortable Virtualized Table 1`] = ` } } > - - @@ -7428,12 +7458,12 @@ exports[`Sortable Virtualized Table 1`] = ` "cell": [Function], "row": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHeaderRow", + "displayName": "Tr", "render": [Function], }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTableHead", + "displayName": "THead", "render": [Function], }, } @@ -7665,11 +7695,17 @@ exports[`Sortable Virtualized Table 1`] = ` } rowIndex={0} > - - + - + - - - - + + - - Branches - - + + - - Pull requests - - + + - - Workspaces - - + + - - Last Commit - - + + - - + + - - + + From aedf22528cced8cd532ce4cf76dae700eec4ec1d Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Thu, 22 Oct 2020 13:34:51 -0400 Subject: [PATCH 18/29] consolidate examples and rename to TableComposable --- .../src/components/BaseTable/index.ts | 8 - .../src/components/Table/BodyCell.tsx | 2 +- .../src/components/Table/BodyWrapper.tsx | 8 +- .../src/components/Table/HeaderCell.tsx | 2 +- .../src/components/Table/RowWrapper.tsx | 2 +- .../src/components/Table/Table.tsx | 13 +- .../Table/__snapshots__/Table.test.tsx.snap | 1106 +++++----- .../src/components/Table/base/types.tsx | 18 +- .../Table/examples/ComposableTable.md | 1102 ---------- .../src/components/Table/examples/Table.md | 1847 +++++++++++++---- .../Caption.tsx | 0 .../TableComposable.tsx} | 12 +- .../TBody.tsx => TableComposable/Tbody.tsx} | 12 +- .../{BaseTable => TableComposable}/Td.tsx | 2 +- .../{BaseTable => TableComposable}/Th.tsx | 2 +- .../{BaseTable => TableComposable}/Thead.tsx | 12 +- .../{BaseTable => TableComposable}/Tr.tsx | 4 +- .../src/components/TableComposable/index.ts | 7 + packages/react-table/src/components/index.ts | 2 +- .../VirtualizedTable.test.tsx.snap | 132 +- 20 files changed, 2070 insertions(+), 2223 deletions(-) delete mode 100644 packages/react-table/src/components/BaseTable/index.ts delete mode 100644 packages/react-table/src/components/Table/examples/ComposableTable.md rename packages/react-table/src/components/{BaseTable => TableComposable}/Caption.tsx (100%) rename packages/react-table/src/components/{BaseTable/BaseTable.tsx => TableComposable/TableComposable.tsx} (88%) rename packages/react-table/src/components/{BaseTable/TBody.tsx => TableComposable/Tbody.tsx} (71%) rename packages/react-table/src/components/{BaseTable => TableComposable}/Td.tsx (99%) rename packages/react-table/src/components/{BaseTable => TableComposable}/Th.tsx (98%) rename packages/react-table/src/components/{BaseTable => TableComposable}/Thead.tsx (70%) rename packages/react-table/src/components/{BaseTable => TableComposable}/Tr.tsx (92%) create mode 100644 packages/react-table/src/components/TableComposable/index.ts diff --git a/packages/react-table/src/components/BaseTable/index.ts b/packages/react-table/src/components/BaseTable/index.ts deleted file mode 100644 index 3bd971f040d..00000000000 --- a/packages/react-table/src/components/BaseTable/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -export * from './BaseTable'; -export * from './THead'; -export * from './Tr'; -export * from './TBody'; -export * from './Tr'; -export * from './Th'; -export * from './Td'; -export * from './Caption'; diff --git a/packages/react-table/src/components/Table/BodyCell.tsx b/packages/react-table/src/components/Table/BodyCell.tsx index c6b3ba5ebfa..4b05d6d54b2 100644 --- a/packages/react-table/src/components/Table/BodyCell.tsx +++ b/packages/react-table/src/components/Table/BodyCell.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; import { SelectProps } from '@patternfly/react-core'; -import { Td } from '../BaseTable/Td'; +import { Td } from '../TableComposable/Td'; export interface BodyCellProps { 'data-label'?: string; diff --git a/packages/react-table/src/components/Table/BodyWrapper.tsx b/packages/react-table/src/components/Table/BodyWrapper.tsx index e8b7f9186da..2664f31c518 100644 --- a/packages/react-table/src/components/Table/BodyWrapper.tsx +++ b/packages/react-table/src/components/Table/BodyWrapper.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { IRow, IRowData, IExtraData, IHeaderRow } from './Table'; import { mapOpenedRows } from './utils/headerUtils'; -import { TBody } from '../BaseTable/TBody'; +import { Tbody } from '../TableComposable/Tbody'; export interface BodyWrapperProps { children?: React.ReactNode; @@ -32,13 +32,13 @@ export const BodyWrapper: React.FunctionComponent = ({ return ( {mapOpenedRows(mappedRows, props.children).map((oneRow, key) => ( - }> + }> {oneRow.rows} - + ))} ); } - return } />; + return } />; }; BodyWrapper.displayName = 'BodyWrapper'; diff --git a/packages/react-table/src/components/Table/HeaderCell.tsx b/packages/react-table/src/components/Table/HeaderCell.tsx index d4ac94dde74..fc6c77d6bec 100644 --- a/packages/react-table/src/components/Table/HeaderCell.tsx +++ b/packages/react-table/src/components/Table/HeaderCell.tsx @@ -1,5 +1,5 @@ import * as React from 'react'; -import { Th } from '../BaseTable/Th'; +import { Th } from '../TableComposable/Th'; export interface HeaderCellProps { 'data-label'?: string; diff --git a/packages/react-table/src/components/Table/RowWrapper.tsx b/packages/react-table/src/components/Table/RowWrapper.tsx index 5fdc6a1b3ad..ffbc7ca4344 100644 --- a/packages/react-table/src/components/Table/RowWrapper.tsx +++ b/packages/react-table/src/components/Table/RowWrapper.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { OUIAProps } from '@patternfly/react-core/dist/js/helpers/ouia'; import { debounce } from '@patternfly/react-core/dist/js/helpers/util'; -import { Tr } from '../BaseTable/Tr'; +import { Tr } from '../TableComposable/Tr'; // legacy export now, RowWrapperRow can simply be typed as IRow in the future export interface RowWrapperRow { diff --git a/packages/react-table/src/components/Table/Table.tsx b/packages/react-table/src/components/Table/Table.tsx index 4ad85129e76..c5a224447f3 100644 --- a/packages/react-table/src/components/Table/Table.tsx +++ b/packages/react-table/src/components/Table/Table.tsx @@ -13,7 +13,7 @@ import { HeaderCell } from './HeaderCell'; import { RowWrapper, RowWrapperProps } from './RowWrapper'; import { BodyWrapper } from './BodyWrapper'; import { calculateColumns } from './utils/headerUtils'; -import { formatterValueType, ColumnType, RowType, RowKeyType, ColumnsType } from './base'; +import { formatterValueType, ColumnType, RowType, RowKeyType, ColumnsType, HeaderType } from './base'; export enum TableGridBreakpoint { none = '', @@ -178,15 +178,22 @@ export type ITransform = (label?: IFormatterValueType, extra?: IExtra) => decora export type IFormatter = (data?: IFormatterValueType, extra?: IExtra) => formatterValueType & decoratorReturnType; export interface ICell { + /* cell contents */ title?: string | React.ReactNode; + /** transformations applied to the header cell */ transforms?: ITransform[]; + /** transformations applied to the cells within the column's body */ cellTransforms?: ITransform[]; + /** transformations applied to the whole column */ columnTransforms?: ITransform[]; + /** formatters applied to the header cell */ formatters?: IFormatter[]; + /** formatters applied to the cells within the column's body */ cellFormatters?: IFormatter[]; + /** Additional header props, it contains the info prop as well which can be used to add tooltip/popover */ + header?: HeaderType; props?: any; data?: any; - header?: any; cell?: any; dataLabel?: string; } @@ -291,7 +298,7 @@ export interface TableProps extends OUIAProps { dropdownDirection?: 'up' | 'down'; /** Row data */ rows: (IRow | string[])[]; - /** Cell data */ + /** Cell/column data */ cells: (ICell | string)[]; /** Wrapper for the body */ bodyWrapper?: Function; diff --git a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap index 1794e237c2e..49db422b0fa 100644 --- a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap +++ b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap @@ -415,7 +415,7 @@ exports[`Actions table 1`] = ` role="grid" variant={null} > - - - - @@ -774,7 +774,7 @@ exports[`Actions table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -1361,8 +1361,8 @@ exports[`Actions table 1`] = ` - - + + @@ -3417,13 +3417,13 @@ exports[`Actions table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -4360,10 +4360,10 @@ exports[`Actions table 1`] = ` ] } > - - @@ -13273,16 +13273,16 @@ exports[`Actions table 1`] = ` - - + + - - + + `; @@ -13658,7 +13658,7 @@ exports[`Cell header table 1`] = ` role="grid" variant={null} > - - - - @@ -13972,7 +13972,7 @@ exports[`Cell header table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -14475,8 +14475,8 @@ exports[`Cell header table 1`] = ` - - + + @@ -16441,13 +16441,13 @@ exports[`Cell header table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -17384,10 +17384,10 @@ exports[`Cell header table 1`] = ` ] } > - - @@ -22364,16 +22364,16 @@ exports[`Cell header table 1`] = ` - - + + - - + + `; @@ -22817,7 +22817,7 @@ exports[`Collapsible nested table 1`] = ` role="grid" variant={null} > - - - - @@ -23189,7 +23189,7 @@ exports[`Collapsible nested table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -23789,8 +23789,8 @@ exports[`Collapsible nested table 1`] = ` - - + + @@ -25895,13 +25895,13 @@ exports[`Collapsible nested table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -26850,12 +26850,12 @@ exports[`Collapsible nested table 1`] = ` ] } > - - - - - + + - - - - + + - @@ -31127,13 +31127,13 @@ exports[`Collapsible nested table 1`] = ` - - - + + - @@ -31791,13 +31791,13 @@ exports[`Collapsible nested table 1`] = ` - - - + + - @@ -32455,13 +32455,13 @@ exports[`Collapsible nested table 1`] = ` - - - + + - @@ -33119,16 +33119,16 @@ exports[`Collapsible nested table 1`] = ` - - + + - - + + `; @@ -33570,7 +33570,7 @@ exports[`Collapsible table 1`] = ` role="grid" variant={null} > - - - - @@ -33942,7 +33942,7 @@ exports[`Collapsible table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -34542,8 +34542,8 @@ exports[`Collapsible table 1`] = ` - - + + @@ -36640,13 +36640,13 @@ exports[`Collapsible table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -37591,12 +37591,12 @@ exports[`Collapsible table 1`] = ` ] } > - - - - - + + - @@ -39680,14 +39680,14 @@ exports[`Collapsible table 1`] = ` - - - + + - - - - + + - @@ -41771,13 +41771,13 @@ exports[`Collapsible table 1`] = ` - - - + + - @@ -42435,13 +42435,13 @@ exports[`Collapsible table 1`] = ` - - - + + - @@ -43099,13 +43099,13 @@ exports[`Collapsible table 1`] = ` - - - + + - @@ -43763,16 +43763,16 @@ exports[`Collapsible table 1`] = ` - - + + - - + + `; @@ -43993,7 +43993,7 @@ exports[`Compound Expandable table 1`] = ` role="grid" variant={null} > - - - - @@ -44179,7 +44179,7 @@ exports[`Compound Expandable table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -44380,8 +44380,8 @@ exports[`Compound Expandable table 1`] = ` - - + + @@ -45092,13 +45092,13 @@ exports[`Compound Expandable table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -45385,12 +45385,12 @@ exports[`Compound Expandable table 1`] = ` ] } > - - - - - + + - - - + + - - + + `; @@ -46988,7 +46988,7 @@ exports[`Control text table 1`] = ` role="grid" variant={null} > - - - - @@ -47307,7 +47307,7 @@ exports[`Control text table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -47766,8 +47766,8 @@ exports[`Control text table 1`] = ` - - + + @@ -49577,13 +49577,13 @@ exports[`Control text table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -50406,12 +50406,12 @@ exports[`Control text table 1`] = ` ] } > - - - - - + + - - - - + + - @@ -53729,13 +53729,13 @@ exports[`Control text table 1`] = ` - - - + + - @@ -54287,13 +54287,13 @@ exports[`Control text table 1`] = ` - - - + + - @@ -54845,13 +54845,13 @@ exports[`Control text table 1`] = ` - - - + + - @@ -55403,16 +55403,16 @@ exports[`Control text table 1`] = ` - - + + - - + + `; @@ -55762,7 +55762,7 @@ exports[`Editable table 1`] = ` role="grid" variant={null} > - - - - @@ -56075,7 +56075,7 @@ exports[`Editable table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -56521,8 +56521,8 @@ exports[`Editable table 1`] = ` - - + + @@ -57843,13 +57843,13 @@ exports[`Editable table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -58368,10 +58368,10 @@ exports[`Editable table 1`] = ` ] } > - - @@ -60594,16 +60594,16 @@ exports[`Editable table 1`] = ` - - + + - - + + @@ -60998,7 +60998,7 @@ exports[`Header width table 1`] = ` role="grid" variant={null} > - - - - @@ -61315,7 +61315,7 @@ exports[`Header width table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -61770,8 +61770,8 @@ exports[`Header width table 1`] = ` - - + + @@ -63766,13 +63766,13 @@ exports[`Header width table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -64721,12 +64721,12 @@ exports[`Header width table 1`] = ` ] } > - - - - - + + - - - - + + - @@ -68116,13 +68116,13 @@ exports[`Header width table 1`] = ` - - - + + - @@ -68686,13 +68686,13 @@ exports[`Header width table 1`] = ` - - - + + - @@ -69256,13 +69256,13 @@ exports[`Header width table 1`] = ` - - - + + - @@ -69826,16 +69826,16 @@ exports[`Header width table 1`] = ` - - + + - - + + `; @@ -70207,7 +70207,7 @@ exports[`Row click table 1`] = ` role="grid" variant={null} > - - - - @@ -70520,7 +70520,7 @@ exports[`Row click table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -71022,8 +71022,8 @@ exports[`Row click table 1`] = ` - - + + @@ -72988,13 +72988,13 @@ exports[`Row click table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -73931,10 +73931,10 @@ exports[`Row click table 1`] = ` ] } > - - @@ -78857,16 +78857,16 @@ exports[`Row click table 1`] = ` - - + + - - + + `; @@ -79299,7 +79299,7 @@ exports[`Selectable table 1`] = ` role="grid" variant={null} > - - - - @@ -79660,7 +79660,7 @@ exports[`Selectable table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -80267,8 +80267,8 @@ exports[`Selectable table 1`] = ` - - + + @@ -82351,13 +82351,13 @@ exports[`Selectable table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -83306,12 +83306,12 @@ exports[`Selectable table 1`] = ` ] } > - - - - - + + - - - - + + - @@ -87214,13 +87214,13 @@ exports[`Selectable table 1`] = ` - - - + + - @@ -87878,13 +87878,13 @@ exports[`Selectable table 1`] = ` - - - + + - @@ -88542,13 +88542,13 @@ exports[`Selectable table 1`] = ` - - - + + - @@ -89206,16 +89206,16 @@ exports[`Selectable table 1`] = ` - - + + - - + + `; @@ -89647,7 +89647,7 @@ exports[`Selectable table with Radio 1`] = ` role="grid" variant={null} > - - - - @@ -90007,7 +90007,7 @@ exports[`Selectable table with Radio 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -90594,8 +90594,8 @@ exports[`Selectable table with Radio 1`] = ` - - + + @@ -92676,13 +92676,13 @@ exports[`Selectable table with Radio 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -93631,12 +93631,12 @@ exports[`Selectable table with Radio 1`] = ` ] } > - - - - - + + - - - - + + - @@ -97533,13 +97533,13 @@ exports[`Selectable table with Radio 1`] = ` - - - + + - @@ -98196,13 +98196,13 @@ exports[`Selectable table with Radio 1`] = ` - - - + + - @@ -98859,13 +98859,13 @@ exports[`Selectable table with Radio 1`] = ` - - - + + - @@ -99522,16 +99522,16 @@ exports[`Selectable table with Radio 1`] = ` - - + + - - + + `; @@ -100095,7 +100095,7 @@ exports[`Simple Actions table 1`] = ` role="grid" variant={null} > - - - - @@ -100568,7 +100568,7 @@ exports[`Simple Actions table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -101269,8 +101269,8 @@ exports[`Simple Actions table 1`] = ` - - + + @@ -103719,13 +103719,13 @@ exports[`Simple Actions table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -104766,10 +104766,10 @@ exports[`Simple Actions table 1`] = ` ] } > - - @@ -115967,16 +115967,16 @@ exports[`Simple Actions table 1`] = ` - - + + - - + + `; @@ -116344,7 +116344,7 @@ exports[`Simple table aria-label 1`] = ` role="grid" variant={null} > - - - - @@ -116656,7 +116656,7 @@ exports[`Simple table aria-label 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -117103,8 +117103,8 @@ exports[`Simple table aria-label 1`] = ` - - + + @@ -119065,13 +119065,13 @@ exports[`Simple table aria-label 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -120008,10 +120008,10 @@ exports[`Simple table aria-label 1`] = ` ] } > - - @@ -124925,16 +124925,16 @@ exports[`Simple table aria-label 1`] = ` - - + + - - + + `; @@ -125301,7 +125301,7 @@ exports[`Simple table caption 1`] = ` role="grid" variant={null} > - - - - @@ -125613,7 +125613,7 @@ exports[`Simple table caption 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -126060,8 +126060,8 @@ exports[`Simple table caption 1`] = ` - - + + @@ -128022,13 +128022,13 @@ exports[`Simple table caption 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -128965,10 +128965,10 @@ exports[`Simple table caption 1`] = ` ] } > - - @@ -133882,16 +133882,16 @@ exports[`Simple table caption 1`] = ` - - + + - - + + `; @@ -134265,7 +134265,7 @@ exports[`Simple table header 1`] = ` role="grid" variant={null} > - - - - @@ -134574,7 +134574,7 @@ exports[`Simple table header 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -135021,8 +135021,8 @@ exports[`Simple table header 1`] = ` - - + + @@ -136983,13 +136983,13 @@ exports[`Simple table header 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -137926,10 +137926,10 @@ exports[`Simple table header 1`] = ` ] } > - - @@ -142843,16 +142843,16 @@ exports[`Simple table header 1`] = ` - - + + - - + + `; @@ -143226,7 +143226,7 @@ exports[`Sortable table 1`] = ` role="grid" variant={null} > - - - - @@ -143539,7 +143539,7 @@ exports[`Sortable table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -144042,8 +144042,8 @@ exports[`Sortable table 1`] = ` - - + + @@ -146006,13 +146006,13 @@ exports[`Sortable table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -146949,10 +146949,10 @@ exports[`Sortable table 1`] = ` ] } > - - @@ -151875,16 +151875,16 @@ exports[`Sortable table 1`] = ` - - + + - - + + `; @@ -152256,7 +152256,7 @@ exports[`Table variants Breakpoint - 1`] = ` role="grid" variant={null} > - - - - @@ -152569,7 +152569,7 @@ exports[`Table variants Breakpoint - 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -153071,8 +153071,8 @@ exports[`Table variants Breakpoint - 1`] = ` - - + + @@ -155035,13 +155035,13 @@ exports[`Table variants Breakpoint - 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -155978,10 +155978,10 @@ exports[`Table variants Breakpoint - 1`] = ` ] } > - - @@ -160904,16 +160904,16 @@ exports[`Table variants Breakpoint - 1`] = ` - - + + - - + + `; @@ -161285,7 +161285,7 @@ exports[`Table variants Breakpoint - grid 1`] = ` role="grid" variant={null} > - - - - @@ -161598,7 +161598,7 @@ exports[`Table variants Breakpoint - grid 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -162100,8 +162100,8 @@ exports[`Table variants Breakpoint - grid 1`] = ` - - + + @@ -164064,13 +164064,13 @@ exports[`Table variants Breakpoint - grid 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -165007,10 +165007,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` ] } > - - @@ -169933,16 +169933,16 @@ exports[`Table variants Breakpoint - grid 1`] = ` - - + + - - + + `; @@ -170314,7 +170314,7 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` role="grid" variant={null} > - - - - @@ -170627,7 +170627,7 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -171129,8 +171129,8 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` - - + + @@ -173093,13 +173093,13 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -174036,10 +174036,10 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` ] } > - - @@ -178962,16 +178962,16 @@ exports[`Table variants Breakpoint - grid-2xl 1`] = ` - - + + - - + + `; @@ -179343,7 +179343,7 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` role="grid" variant={null} > - - - - @@ -179656,7 +179656,7 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -180158,8 +180158,8 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` - - + + @@ -182122,13 +182122,13 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -183065,10 +183065,10 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` ] } > - - @@ -187991,16 +187991,16 @@ exports[`Table variants Breakpoint - grid-lg 1`] = ` - - + + - - + + `; @@ -188372,7 +188372,7 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` role="grid" variant={null} > - - - - @@ -188685,7 +188685,7 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -189187,8 +189187,8 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` - - + + @@ -191151,13 +191151,13 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -192094,10 +192094,10 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` ] } > - - @@ -197020,16 +197020,16 @@ exports[`Table variants Breakpoint - grid-md 1`] = ` - - + + - - + + `; @@ -197401,7 +197401,7 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` role="grid" variant={null} > - - - - @@ -197714,7 +197714,7 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -198216,8 +198216,8 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` - - + + @@ -200180,13 +200180,13 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -201123,10 +201123,10 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` ] } > - - @@ -206049,16 +206049,16 @@ exports[`Table variants Breakpoint - grid-xl 1`] = ` - - + + - - + + `; @@ -206430,7 +206430,7 @@ exports[`Table variants Size - compact 1`] = ` role="grid" variant="compact" > - - - - @@ -206743,7 +206743,7 @@ exports[`Table variants Size - compact 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -207245,8 +207245,8 @@ exports[`Table variants Size - compact 1`] = ` - - + + @@ -209209,13 +209209,13 @@ exports[`Table variants Size - compact 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -210152,10 +210152,10 @@ exports[`Table variants Size - compact 1`] = ` ] } > - - @@ -215078,16 +215078,16 @@ exports[`Table variants Size - compact 1`] = ` - - + + - - + + `; @@ -215459,7 +215459,7 @@ exports[`Table variants Size - compactBorderless 1`] = ` role="grid" variant="compactBorderless" > - - - - @@ -215772,7 +215772,7 @@ exports[`Table variants Size - compactBorderless 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -216274,8 +216274,8 @@ exports[`Table variants Size - compactBorderless 1`] = ` - - + + @@ -218238,13 +218238,13 @@ exports[`Table variants Size - compactBorderless 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -219181,10 +219181,10 @@ exports[`Table variants Size - compactBorderless 1`] = ` ] } > - - @@ -224107,16 +224107,16 @@ exports[`Table variants Size - compactBorderless 1`] = ` - - + + - - + + `; @@ -224488,7 +224488,7 @@ exports[`Table variants Size - compactExpandable 1`] = ` role="grid" variant="compactExpandable" > - - - - @@ -224801,7 +224801,7 @@ exports[`Table variants Size - compactExpandable 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -225303,8 +225303,8 @@ exports[`Table variants Size - compactExpandable 1`] = ` - - + + @@ -227267,13 +227267,13 @@ exports[`Table variants Size - compactExpandable 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, }, "table": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "BaseTable", + "displayName": "TableComposable", "render": [Function], }, } @@ -228210,10 +228210,10 @@ exports[`Table variants Size - compactExpandable 1`] = ` ] } > - - @@ -233136,16 +233136,16 @@ exports[`Table variants Size - compactExpandable 1`] = ` - - + + - - + + `; diff --git a/packages/react-table/src/components/Table/base/types.tsx b/packages/react-table/src/components/Table/base/types.tsx index a0e59bde28c..e4d2757fd05 100644 --- a/packages/react-table/src/components/Table/base/types.tsx +++ b/packages/react-table/src/components/Table/base/types.tsx @@ -7,12 +7,12 @@ import * as React from 'react'; import { TooltipProps, PopoverProps } from '@patternfly/react-core'; -import { BaseTable } from '../../BaseTable/BaseTable'; -import { THead } from '../../BaseTable/THead'; -import { TBody } from '../../BaseTable/TBody'; -import { Tr } from '../../BaseTable/Tr'; -import { Th } from '../../BaseTable/Th'; -import { Td } from '../../BaseTable/Td'; +import { TableComposable } from '../../TableComposable/TableComposable'; +import { Thead } from '../../TableComposable/Thead'; +import { Tbody } from '../../TableComposable/Tbody'; +import { Tr } from '../../TableComposable/Tr'; +import { Th } from '../../TableComposable/Th'; +import { Td } from '../../TableComposable/Td'; // Cell Type export interface CellType { @@ -60,14 +60,14 @@ export interface RowType { // Table Defaults export const TableDefaults = { renderers: { - table: BaseTable, + table: TableComposable, header: { - wrapper: THead, + wrapper: Thead, row: Tr, cell: Th }, body: { - wrapper: TBody, + wrapper: Tbody, row: Tr, cell: Td } diff --git a/packages/react-table/src/components/Table/examples/ComposableTable.md b/packages/react-table/src/components/Table/examples/ComposableTable.md deleted file mode 100644 index 1bff586b8f9..00000000000 --- a/packages/react-table/src/components/Table/examples/ComposableTable.md +++ /dev/null @@ -1,1102 +0,0 @@ ---- -id: TableComposable -cssPrefix: pf-c-table -section: components -propComponents: ['BaseTable', 'THead', 'TBody', 'Tr', 'Th', 'Td', 'Caption'] -ouia: true -beta: true ---- - -Note: Table lives in its own package at [@patternfly/react-table](https://www.npmjs.com/package/@patternfly/react-table)! - -import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; - -import SearchIcon from '@patternfly/react-icons/dist/js/icons/search-icon'; -import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; -import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; -import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; - -import DemoSortableTable from './DemoSortableTable'; - -## Examples - -### Basic - -A basic example using the Base\* table components. Some general notes: - -- Provide `dataLabel` prop to the `Td` components so that in mobile view the cell has a label to provide context. -- If you want a table caption, simply place a `My caption` as the first child within a `BaseTable`. - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td, Caption } from '@patternfly/react-table'; - -ComposableTableBasic = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; - const rows = [ - ['one', 'two', 'three', 'four', 'five'], - ['one - 2', null, null, 'four - 2', 'five - 2'], - ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3'] - ]; - return ( - - Simple table using composable components - - - {columns.map((column, columnIndex) => ( - {column} - ))} - - - - {rows.map((row, rowIndex) => ( - - {row.map((cell, cellIndex) => ( - - {cell} - - ))} - - ))} - - - ); -}; -``` - -### Row click handler, custom row wrapper, header tooltips & popovers - -This example demonstrates customizing rows, adding tooltip and popover information to header items, and some other misc. props. - -- You can wrap the header cell contents in a `HeaderCellInfoWrapper` component to give it a tooltip or popover -- If you add the `noWrap` prop to `THead`, it won't wrap it if there is no space -- You can add the `textCenter` prop to `Th` or `Td` to center the contents -- You can pass `onClick`, `className`, `style` and more to `Tr` - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td, HeaderCellInfoWrapper } from '@patternfly/react-table'; - -ComposableTableMisc = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; - const rows = [ - ['one', 'two', 'three', 'four', 'five'], - [{ title: 'one - 2', colSpan: 3 }, null, null, 'four - 2', 'five - 2'], - ['one - 3', 'two - 3', 'three - 3', 'four - 3', { title: 'five - 3 (not centered)', textCenter: false }] - ]; - const onRowClick = (event, rowIndex, row) => { - console.log(`handle row click ${rowIndex}`, row); - }; - return ( - - - - - - {columns[0]} - - - {columns[1]} - - - More information on pull requests -
- } - ariaLabel="More information on pull requests" - popoverProps={{ - headerContent: 'Pull requests', - footerContent: Click here for even more info - }} - > - {columns[2]} - - - {columns[3]} - {columns[4]} - - - - {rows.map((row, rowIndex) => { - const isOddRow = (rowIndex + 1) % 2; - const customStyle = { - borderLeft: '3px solid var(--pf-global--primary-color--100)' - }; - return ( - onRowClick(event, rowIndex, row)} - className={isOddRow ? 'odd-row-class' : 'even-row-class'} - style={isOddRow ? customStyle : {}} - > - {row.map((cell, cellIndex) => { - if (!cell) { - return null; - } - let cellObject; - if (typeof cell !== 'object') { - cellObject = { - title: cell - }; - } else { - cellObject = cell; - } - const { title, ...rest } = cellObject; - return ( - - {title} - - ); - })} - - ); - })} - - - ); -}; -``` - -### Sortable, sortable with wrapping headers - -This example demonstrates making columns sortable, and wrapping header text. For sorting it is also important to pass the `columnIndex` to the `Th`. - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; - -ComposableTableSortable = () => { - const columns = [ - 'This is a really long table header that goes on for a long time 1.', - 'This is a really long table header that goes on for a long time 2.', - 'This is a really long table header that goes on for a long time 3.', - 'This is a really long table header that goes on for a long time 4.', - 'This is a really long table header that goes on for a long time 5.' - ]; - const [rows, setRows] = React.useState([ - ['one', 'two', 'a', 'four', 'five'], - ['a', 'two', 'k', 'four', 'five'], - ['p', 'two', 'b', 'four', 'five'] - ]); - // index of the currently active column - const [activeSortIndex, setActiveSortIndex] = React.useState(-1); - // sort direction of the currently active column - const [activeSortDirection, setActiveSortDirection] = React.useState('none'); - const onSort = (event, index, direction) => { - setActiveSortIndex(index); - setActiveSortDirection(direction); - // sorts the rows - const updatedRows = rows.sort((a, b) => { - if (typeof a[index] === 'number') { - // numeric sort - if (direction === 'asc') { - return a[index] - b[index]; - } - return b[index] - a[index]; - } else { - // string sort - if (direction === 'asc') { - return a[index].localeCompare(b[index]); - } - return b[index].localeCompare(a[index]); - } - }); - setRows(updatedRows); - }; - return ( - - - - {columns.map((column, columnIndex) => { - // In this example, wrap all but the first column just to demonstrate - const modifier = columnIndex !== 0 ? 'wrap' : null; - // In this example, make the 1st and 3rd columns sortable - const sortParams = - columnIndex === 0 || columnIndex === 2 - ? { - activeSortIndex, - activeSortDirection, - onSort, - columnIndex - } - : {}; - return ( - - {column} - - ); - })} - - - - {rows.map((row, rowIndex) => ( - - {row.map((cell, cellIndex) => ( - - {cell} - - ))} - - ))} - - - ); -}; -``` - -### Selectable - -This example demonstrates row selection. The selection column is just another column, but with selection specific props added. We add it as the first header cell and also as the first body cell for each row. -Be sure to also add `columnIndex` to `Th` and `columnIndex` as well as `rowIndex` to `Td`. - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; - -ComposableTableSelectable = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; - const rows = [ - ['one', 'two', 'a', 'four', 'five'], - ['a', 'two', 'k', 'four', 'five'], - ['p', 'two', 'b', 'four', 'five'] - ]; - const [allRowsSelected, setAllRowsSelected] = React.useState(false); - const [selected, setSelected] = React.useState(rows.map(row => false)); - const onSelect = (event, isSelected, rowId) => { - setSelected(selected.map((sel, index) => (index === rowId ? isSelected : sel))); - if (!isSelected && allRowsSelected) { - setAllRowsSelected(false); - } else if (isSelected && !allRowsSelected) { - let allSelected = true; - for (let i = 0; i < selected.length; i++) { - if (i !== rowId) { - if (!selected[i]) { - allSelected = false; - } - } - } - if (allSelected) { - setAllRowsSelected(true); - } - } - }; - const onSelectAll = (event, isSelected) => { - setAllRowsSelected(isSelected); - setSelected(selected.map(sel => isSelected)); - }; - return ( - - - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - - {rows.map((row, rowIndex) => ( - - - {row.map((cell, cellIndex) => { - const shiftedIndex = cellIndex + 1; - return ( - - {cell} - - ); - })} - - ))} - - - ); -}; -``` - -### Selectable radio input - -Similarly to the selectable example above, the radio buttons use the first column. The first header cell is empty, and each body row's first cell has radio button props. Just as with selectable, be sure to also add `columnIndex` to `Th` and `columnIndex` as well as `rowIndex` to `Td`. - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; - -ComposableTableSelectableRadio = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; - const rows = [ - ['one', 'two', 'a', 'four', 'five'], - ['a', 'two', 'k', 'four', 'five'], - ['p', 'two', 'b', 'four', 'five'] - ]; - const [selected, setSelected] = React.useState(-1); - const onSelect = (event, isSelected, rowId) => { - setSelected(rowId); - }; - return ( - - - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - - {rows.map((row, rowIndex) => ( - - - {row.map((cell, cellIndex) => { - const shiftedIndex = cellIndex + 1; - return ( - - {cell} - - ); - })} - - ))} - - - ); -}; -``` - -### Actions - -This example demonstrates adding actions as the last column. The header's last cell is an empty cell, and each body row's last cell is an action cell. - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; - -ComposableTableActions = () => { - const defaultActions = [ - { - title: 'Some action', - onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) - }, - { - title: Link action - }, - { - isSeparator: true - }, - { - title: 'Third action', - onClick: (event, rowId, rowData, extra) => console.log('clicked on Third action, on row: ', rowId) - } - ]; - const lastRowActions = [ - { - title: 'Some action', - onClick: (event, rowId, rowData, extra) => console.log(`clicked on Some action, on row ${rowId}`) - }, - { - title:
Another action
, - onClick: (event, rowId, rowData, extra) => console.log(`clicked on Another action, on row ${rowId}`) - }, - { - isSeparator: true - }, - { - title: 'Third action', - onClick: (event, rowId, rowData, extra) => console.log(`clicked on Third action, on row ${rowId}`) - } - ]; - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; - const rows = [ - ['one', 'two', 'a', 'four', 'five'], - ['a', 'two', 'k', 'four', 'five'], - ['p', 'two', 'b', 'four', 'five'], - ['4', '2', 'b', 'four', 'five'], - ['5', '2', 'b', 'four', 'five'] - ]; - return ( - - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - - - {rows.map((row, rowIndex) => ( - - {row.map((cell, cellIndex) => ( - - {cell} - - ))} - - - ))} - - - ); -}; -``` - -### Compact, compact borderless - -You can set the `BaseTable` variant to `compact` or `compactBorderless`. - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; -import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; - -ComposableTableCompact = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; - const rows = [ - ['one', 'two', 'a', 'four', 'five'], - ['a', 'two', 'k', 'four', 'five'], - ['p', 'two', 'b', 'four', 'five'], - ['4', '2', 'b', 'four', 'five'], - ['5', '2', 'b', 'four', 'five'] - ]; - const [variant, setVariant] = React.useState('compact'); - const handleItemClick = (isSelected, event) => { - const id = event.currentTarget.id; - setVariant(id); - }; - return ( - - - - - - - - - {columns.map((column, columnIndex) => ( - {column} - ))} - - - - {rows.map((row, rowIndex) => ( - - {row.map((cell, cellIndex) => ( - - {cell} - - ))} - - ))} - - - - ); -}; -``` - -### Expandable - -This example demonstrates having expandable rows. - -- Each parent/child row pair is enclosed in a `TBody` component. -- You can make the table more compact by setting the `BaseTable` variant to `compactExpandable`. - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td, ExpandableRowContent } from '@patternfly/react-table'; -import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; - -ComposableTableExpandable = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; - const rowPairs = [ - { parent: ['one', 'two', 'a', 'four', 'five'], child: null }, - { - parent: ['parent 1', 'two', 'k', 'four', 'five'], - child: ['single cell'] - }, - { - parent: ['parent 2', 'two', 'b', 'four', 'five'], - child: ['single cell - fullWidth'], - fullWidth: true - }, - { - parent: ['parent 3', '2', 'b', 'four', 'five'], - child: ['single cell - noPadding'], - noPadding: true - }, - { - parent: ['parent 4', '2', 'b', 'four', 'five'], - child: ['single cell - fullWidth & noPadding'], - fullWidth: true, - noPadding: true - }, - { - parent: ['parent 5', '2', 'b', 'four', 'five'], - child: [ - { - title: "spans 'Repositories' and 'Branches'", - props: { - colSpan: 2 - } - }, - { - title: "spans 'Pull requests' and 'Workspaces', and 'Last commit'", - props: { - colSpan: 3 - } - } - ] - }, - { - parent: ['parent 6', '2', 'b', 'four', 'five'], - child: [ - { - title: "fullWidth, spans the collapsible column and 'Repositories'", - props: { - colSpan: 2 - } - }, - { - title: "fullWidth, spans 'Branches' and 'Pull requests' and 'Workspaces'", - props: { - colSpan: 3 - } - }, - "fullWidth, spans 'Last commit'" - ], - fullWidth: true - } - ]; - const numColumns = columns.length; - // Init all to true - const [expanded, setExpanded] = React.useState( - Object.fromEntries(Object.entries(rowPairs).map(([k, v]) => [k, true])) - ); - const [variant, setVariant] = React.useState(null); - const handleItemClick = (isSelected, event) => { - const id = event.currentTarget.id; - setVariant(id === 'default' ? null : id); - }; - const handleExpansionToggle = rowIndex => { - setExpanded({ - ...expanded, - [rowIndex]: !expanded[rowIndex] - }); - }; - let rowIndex = -1; - return ( - - - - Default expandable - - - Compact expandable - - - - - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - {rowPairs.map((pair, pairIndex) => { - rowIndex += 1; - const parentRow = ( - - handleExpansionToggle(pairIndex)} - /> - {pair.parent.map((cell, cellIndex) => ( - - {cell} - - ))} - - ); - if (pair.child) { - rowIndex += 1; - } - const childRow = pair.child ? ( - - {!rowPairs[pairIndex].fullWidth && } - {rowPairs[pairIndex].child.map((cell, cellIndex) => { - const shift = rowPairs[pairIndex].fullWidth ? 1 : 0; - const shiftedCellIndex = cellIndex + shift; - return ( - - {cell.title || cell} - - ); - })} - - ) : null; - return ( - - - {parentRow} - {childRow} - - - ); - })} - - - ); -}; -``` - -### Compound expandable - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td, ExpandableRowContent } from '@patternfly/react-table'; - -import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; -import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; -import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; - -// https://github.com/patternfly/patternfly-react/blob/master/packages/react-table/src/components/Table/demo/DemoSortableTable.js -import DemoSortableTable from './demo/DemoSortableTable'; - -ComposableCompoundExpandableTable = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit', '']; - const rows = [ - ['siemur/test-space', 10, 4, 4, '20 minutes', 'Open in Github'], - ['siemur/test-space', 3, 4, 2, '10 minutes', 'Open in Github'] - ]; - const [activeChild, setActiveChild] = React.useState('0_1'); - // key = row_col of the parent it corresponds to - const childData = { - '0_1': { - component: ( - - ) - }, - '0_2': { - component: ( - - ) - }, - '0_3': { - component: ( - - ) - }, - '1_1': { - component: ( - - ) - }, - '1_2': { - component: ( - - ) - }, - '1_3': { - component: ( - - ) - } - }; - const customRender = (cell, index) => { - if (index === 0) { - return {cell}; - } else if (index === 1) { - return ( - - {cell} - - ); - } else if (index === 2) { - return ( - - {cell} - - ); - } else if (index === 3) { - return ( - - {cell} - - ); - } else if (index === 5) { - return {cell}; - } - return cell; - }; - const isCompoundExpanded = (rowIndex, cellIndex) => { - // only columns 1 - 3 are compound expansion toggles in this example - if (1 <= cellIndex && cellIndex <= 3) { - return activeChild === `${rowIndex}_${cellIndex}`; - } - return null; - }; - return ( - - - - - {columns.map((column, columnIndex) => ( - - {column} - - ))} - - - {rows.map((row, rowIndex) => { - const isRowExpanded = activeChild && activeChild.split('_')[0] === `${rowIndex}`; - return ( - - - - {row.map((cell, cellIndex) => ( - { - // only columns 1 - 3 are clickable - if (1 <= cellIndex && cellIndex <= 3) { - const current = `${rowIndex}_${cellIndex}`; - if (activeChild === current) { - // closing the expansion on the current toggle - setActiveChild(null); - } else { - // expanding - setActiveChild(current); - } - } - }} - > - {customRender(cell, cellIndex)} - - ))} - - {isRowExpanded && ( - - - {childData[activeChild].component} - - - )} - - - ); - })} - - - ); -}; -``` - -### Cell width, breakpoint modifiers - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; - -ComposableTableCellWidth = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; - const rows = [ - ['one', 'two', 'three', 'four', 'five'], - ['one - 2', null, null, 'four - 2', 'five - 2'], - ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3'] - ]; - return ( - - - - {columns.map((column, columnIndex) => ( - - {column} - - ))} - - - - {rows.map((row, rowIndex) => ( - - {row.map((cell, cellIndex) => ( - - {cell} - - ))} - - ))} - - - ); -}; -``` - -### Controlling text - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td } from '@patternfly/react-table'; - -ComposableControllingText = () => { - const columns = [ - 'Truncate (width 20%)', - 'Break word', - 'Wrapping table header text. This th text will wrap instead of truncate.', - 'Fit content', - 'No wrap' - ]; - const rows = [ - [ - 'This text will truncate instead of wrap.', - http://thisisaverylongurlthatneedstobreakusethebreakwordmodifier.org, -

- By default, - thead cells will truncate and - tbody cells will wrap. Use - .pf-m-wrap on ath to change its behavior. -

, - "This cell's content will adjust itself to the parent th width. This modifier only affects table layouts.", - No wrap - ] - ]; - return ( - - - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - - - - {rows.map((row, rowIndex) => ( - - - {row[0]} - - - {row[1]} - - {row[2]} - {row[3]} - - {row[4]} - - - ))} - - - ); -}; -``` - -### Modifiers with table text - -```js isBeta -import React from 'react'; -import { BaseTable, THead, TBody, Tr, Th, Td, TableText } from '@patternfly/react-table'; - -ComposableTableText = () => { - const columns = ['Truncating text', 'Wrapping table header text. This th text will wrap instead of truncate.']; - const rows = [ - [ - This text will truncate instead of wrap., - - This is a link that needs to be on one line and fully readable. - - ] - ]; - return ( - - - - {columns[0]} - {columns[1]} - - - - {rows.map((row, rowIndex) => ( - - {row.map((cell, cellIndex) => ( - - {cell} - - ))} - - ))} - - - ); -}; -``` - -### Empty state - -```js isBeta -import React from 'react'; -import { - BaseTable, - THead, - TBody, - Tr, - Th, - Td, - Caption, - Button, - EmptyState, - EmptyStateBody, - EmptyStatePrimary, - Bullseye, - Title, - EmptyStateIcon -} from '@patternfly/react-table'; - -ComposableEmptyState = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; - return ( - - - Empty State Table Example - - - {columns.map((column, columnIndex) => ( - - {column} - - ))} - - - - - - - No results found - - - No results match the filter criteria. Remove all filters or clear all filters to show results. - - - - - ); -}; -``` diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index 3d119895e11..64922d652b9 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -22,6 +22,13 @@ propComponents: 'IRowCell', 'IValidatorDef', 'IRow', + 'TableComposable', + 'Thead', + 'Tbody', + 'Tr', + 'Th', + 'Td', + 'Caption', ] ouia: true --- @@ -33,22 +40,128 @@ import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-ic import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; +import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; + import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; import DemoSortableTable from './DemoSortableTable'; -## Examples +## Table examples ### Basic +The `Table` component is a configuration based component that takes a less declarative and more implicit approach about laying out the table structure, such as the rows and cells within it. For a more explicit and declarative approach, you can use the `TableComposable` component. + ```js import React from 'react'; +import { Table, TableHeader, TableBody } from '@patternfly/react-table'; + +class SimpleTable extends React.Component { + constructor(props) { + super(props); + this.state = { + columns: ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit'], + rows: [ + ['Repository one', 'Branch one', 'PR one', 'Workspace one', 'Commit one'], + ['Repository two', 'Branch two', 'PR two', 'Workspace two', 'Commit two'], + ['Repository three', 'Branch three', 'PR three', 'Workspace three', 'Commit three'] + ] + }; + } + + render() { + const { columns, rows } = this.state; + + return ( + + + +
+ ); + } +} +``` + +### Row click handler and header cell tooltips/popovers + +Array items for columns provided to the `Table`'s `cells` prop, can be simple strings or objects. + +``` +cells: (ICell | string)[]; +``` + +ICell (excerpt): + +``` +interface ICell { + /* cell contents */ + title?: string | React.ReactNode; + /** transformations applied to the header cell */ + transforms?: ITransform[]; + /** transformations applied to the cells within the column's body */ + cellTransforms?: ITransform[]; + /** Additional header props, it contains the info prop as well which can be used to add tooltip/popover */ + header?: HeaderType; +} +``` + +If you wish to pass additional `props`, `formatters`, or add a tooltip/popover, use objects. +Examples: + +``` +// simple +columns: ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit'] +// tooltip +columns: [ + { + title: 'Repositories', + header: { + info: { + tooltip: 'More information about repositories' + } + } + } +] +// center header and body cells within the column +columns: [ + { + title: 'Last commit', + transforms: [textCenter], + cellTransforms: [textCenter] + } +] +``` + +Similarly, the rows array can contain string arrays, or object arrays + +``` +rows: (IRow | string[])[] +``` + +IRow (excerpt): + +``` +interface IRow extends RowType { + cells?: (React.ReactNode | IRowCell)[]; + props?: any; + fullWidth?: boolean; + noPadding?: boolean; +} +interface IRowCell { + title?: string | React.ReactNode; + props?: any; + formatters?: IFormatter[]; +} +``` + +```js +import React from 'react'; import { Table, TableHeader, TableBody, textCenter } from '@patternfly/react-table'; import styles from '@patternfly/react-styles/css/components/Table/table'; -class SimpleTable extends React.Component { +class RowClickTable extends React.Component { constructor(props) { super(props); this.state = { @@ -91,9 +204,7 @@ class SimpleTable extends React.Component { } ], rows: [ - { - cells: ['one', 'two', 'three', 'four', 'five'] - }, + ['Repository one', 'Branch one', 'PR one', 'Workspace one', 'Commit one'], { cells: [ { @@ -118,44 +229,6 @@ class SimpleTable extends React.Component { } ] }; - } - - render() { - const { columns, rows } = this.state; - - return ( - - - -
- ); - } -} -``` - -### Row click handler - -```js -import React from 'react'; -import { Table, TableHeader, TableBody } from '@patternfly/react-table'; - -class RowClickTable extends React.Component { - constructor(props) { - super(props); - this.state = { - columns: [{ title: 'Repositories' }, 'Branches', { title: 'Pull requests' }, 'Workspaces'], - rows: [ - { - cells: ['Repositories one', 'Branches one', 'Pull requests one', 'Workspaces one'] - }, - { - cells: ['Repositories two', 'Branches two', 'Pull requests two', 'Workspaces two'] - }, - { - cells: ['Repositories three', 'Branches three', 'Pull requests three', 'Workspaces three'] - } - ] - }; this.rowClickHandler = (event, row) => { console.log('handle row click', row); }; @@ -165,8 +238,8 @@ class RowClickTable extends React.Component { const { columns, rows } = this.state; return ( - - +
+
); @@ -241,11 +314,19 @@ class RowWrapperTable extends React.Component { } ``` -### Sortable +### Sortable & wrapping headers ```js import React from 'react'; -import { Table, TableHeader, TableBody, sortable, SortByDirection } from '@patternfly/react-table'; +import { + Table, + TableHeader, + TableBody, + sortable, + SortByDirection, + wrappable, + cellWidth +} from '@patternfly/react-table'; class SortableTable extends React.Component { constructor(props) { @@ -254,7 +335,10 @@ class SortableTable extends React.Component { columns: [ { title: 'Repositories', transforms: [sortable] }, 'Branches', - { title: 'Pull requests', transforms: [sortable] }, + { + title: 'Pull requests and this header will wrap since we have also applied the wrappable transform', + transforms: [sortable, wrappable, cellWidth(20)] + }, 'Workspaces', 'Last commit' ], @@ -292,78 +376,6 @@ class SortableTable extends React.Component { } ``` -### Sortable with wrapping headers - -```js -import React from 'react'; -import { Table, TableHeader, TableBody, sortable, SortByDirection, wrappable } from '@patternfly/react-table'; - -class SortableWrappingHeaders extends React.Component { - constructor(props) { - super(props); - this.state = { - columns: [ - { - title: 'This is a really long table header that goes on for a long time 1.', - transforms: [sortable, wrappable] - }, - { - title: 'This is a really long table header that goes on for a long time 2.', - transforms: [sortable, wrappable] - }, - { - title: 'This is a really long table header that goes on for a long time 3.', - transforms: [sortable, wrappable] - }, - { - title: 'This is a really long table header that goes on for a long time 4.', - transforms: [sortable, wrappable] - }, - { - title: 'This is a really long table header that goes on for a long time 5.', - transforms: [sortable, wrappable] - } - ], - rows: [ - ['one', 'two', 'a', 'four', 'five'], - ['a', 'two', 'k', 'four', 'five'], - ['p', 'two', 'b', 'four', 'five'] - ], - sortBy: {} - }; - this.onSort = this.onSort.bind(this); - } - - onSort(_event, index, direction) { - const sortedRows = this.state.rows.sort((a, b) => (a[index] < b[index] ? -1 : a[index] > b[index] ? 1 : 0)); - this.setState({ - sortBy: { - index, - direction - }, - rows: direction === SortByDirection.asc ? sortedRows : sortedRows.reverse() - }); - } - - render() { - const { columns, rows, sortBy } = this.state; - - return ( - - - -
- ); - } -} -``` - ### Selectable ```js @@ -376,8 +388,7 @@ import { SortByDirection, headerCol, TableVariant, - expandable, - cellWidth + expandable } from '@patternfly/react-table'; import { Checkbox } from '@patternfly/react-core'; @@ -475,8 +486,7 @@ import { SortByDirection, headerCol, TableVariant, - expandable, - cellWidth + expandable } from '@patternfly/react-table'; class SelectableTable extends React.Component { @@ -542,16 +552,20 @@ class SelectableTable extends React.Component { } ``` -### Simple actions +### Actions and first cell in body rows as th + +To use actions you can either specify an array of actions and pass that into the `Table`'s `actions` prop, or for more control you can use the `actionResolver` callback prop to add actions conditionally. ```js import React from 'react'; import { Table, TableHeader, TableBody, headerCol } from '@patternfly/react-table'; +import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; -class SimpleActionsTable extends React.Component { +class ActionsTable extends React.Component { constructor(props) { super(props); this.state = { + propToUse: 'actions', columns: [ { title: 'Repositories', cellTransforms: [headerCol()] }, 'Branches', @@ -561,108 +575,77 @@ class SimpleActionsTable extends React.Component { ], rows: [ { - cells: ['one', 'two', 'a', 'four', 'five'] - }, - { - cells: ['a', 'two', 'k', 'four', 'five'] + cells: ['a', 'two', 1, 'four', 'five'] }, { - cells: ['p', 'two', 'b', 'four', 'five'], + cells: ['disable actions', 'two', 3, 'four', 'five'], disableActions: true - } - ], - actions: [ - { - title: 'Some action', - onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) - }, - { - title: Link action - }, - { - isSeparator: true }, { - title: 'Third action', - onClick: (event, rowId, rowData, extra) => console.log('clicked on Third action, on row: ', rowId) - } - ] - }; - } - - render() { - const { columns, rows, actions } = this.state; - return ( - - - -
- ); - } -} -``` - -### Actions - -```js -import React from 'react'; -import { Table, TableHeader, TableBody, headerCol } from '@patternfly/react-table'; - -class ActionsTable extends React.Component { - constructor(props) { - super(props); - this.state = { - columns: [ - { title: 'Repositories', cellTransforms: [headerCol()] }, - 'Branches', - { title: 'Pull requests' }, - 'Workspaces', - 'Last commit' - ], - rows: [ - { - cells: ['one', 'two', 'a', 'four', 'five'], + cells: ['green actions', 'two', 4, 'four', 'five'], type: 'green' }, { - cells: ['a', 'two', 'k', 'four', 'five'], + cells: ['extra action props', 'two', 5, 'four', 'five'], actionProps: { 'data-specific-attr': 'some-value' } }, { - cells: ['p', 'two', 'b', 'four', 'five'], + cells: ['blue actions', 'two', 6, 'four', 'five'], type: 'blue' - }, - { - cells: ['5', '2', 'b', 'four', 'five'] } ] }; + this.handleItemClick = this.handleItemClick.bind(this); } + /** + * Use actions or actionResolver, not both + */ + actions() { + return [ + { + title: 'Some action', + onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) + }, + { + title: Link action + }, + { + isSeparator: true + }, + { + title: 'Third action', + onClick: (event, rowId, rowData, extra) => console.log('clicked on Third action, on row: ', rowId) + } + ]; + } + + /** + * Use actions or actionResolver, not both + */ actionResolver(rowData, { rowIndex }) { if (rowIndex === 1) { return null; } - const thirdAction = - rowData.type === 'blue' - ? [ - { - isSeparator: true - }, - { - title: 'Third action', - onClick: (event, rowId, rowData, extra) => - console.log(`clicked on Third action, on row ${rowId} of type ${rowData.type}`) - } - ] - : []; + const thirdAction = rowData.type + ? [ + { + isSeparator: true + }, + { + title: `${rowData.type} action`, + onClick: (event, rowId, rowData, extra) => + console.log(`clicked on ${rowData.type} action, on row ${rowId} of type ${rowData.type}`) + } + ] + : []; return [ { - title: 'Some action', + title: 'actionResolver action', onClick: (event, rowId, rowData, extra) => console.log(`clicked on Some action, on row ${rowId} of type ${rowData.type}`) }, @@ -679,55 +662,45 @@ class ActionsTable extends React.Component { return rowIndex === 3; } - render() { - const { columns, rows } = this.state; - return ( - - - -
- ); - } -} -``` - -### First cell as header - -```js -import React from 'react'; -import { Table, TableHeader, TableBody, headerCol } from '@patternfly/react-table'; - -class CellHeader extends React.Component { - constructor(props) { - super(props); - this.state = { - columns: [ - { title: 'Header cell', cellTransforms: [headerCol('selectable')] }, - 'Branches', - { title: 'Pull requests' }, - 'Workspaces', - 'Last commit' - ], - rows: [['one', 'two', 'three', 'four', 'five']] - }; + handleItemClick(isSelected, event) { + const action = event.currentTarget.id; + this.setState({ + propToUse: action + }); } render() { - const { columns, rows } = this.state; - + const { columns, rows, propToUse } = this.state; return ( - - - -
+ + + + + + + + +
+
); } } @@ -737,12 +710,14 @@ class CellHeader extends React.Component { ```js import React from 'react'; -import { Table, TableHeader, TableBody, TableVariant } from '@patternfly/react-table'; +import { Table, TableHeader, TableBody } from '@patternfly/react-table'; +import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; class CompactTable extends React.Component { constructor(props) { super(props); this.state = { + variant: 'compact', columns: [ { title: 'Header cell' }, 'Branches', @@ -755,74 +730,57 @@ class CompactTable extends React.Component { ['one', 'two', 'three', 'four'] ] }; + this.handleItemClick = this.handleItemClick.bind(this); } - render() { - const { columns, rows } = this.state; - - return ( - - - -
- ); - } -} -``` - -### Compact borderless rows - -```js -import React from 'react'; -import { Table, TableHeader, TableBody, TableVariant } from '@patternfly/react-table'; - -class CompactTableBorderlessRows extends React.Component { - constructor(props) { - super(props); - this.state = { - columns: [ - { title: 'Header cell' }, - 'Branches', - { title: 'Pull requests', props: { className: 'pf-u-text-align-center' } }, - { title: '' /* deliberately empty */, dataLabel: 'Label for mobile view' } - ], - rows: [ - ['one', 'two', 'three', 'four'], - ['one', 'two', 'three', 'four'], - ['one', 'two', 'three', 'four'] - ] - }; + handleItemClick(isSelected, event) { + const variant = event.currentTarget.id; + this.setState({ + variant + }); } render() { - const { columns, rows } = this.state; + const { columns, rows, variant } = this.state; return ( - - - -
+ + + + + + + + +
+
); } } ``` -### Compact expandable +### Expandable (compact) ```js import React from 'react'; import { Table, TableHeader, TableBody, TableVariant, expandable } from '@patternfly/react-table'; +import { Checkbox } from '@patternfly/react-core'; class CompactExpandableTable extends React.Component { constructor(props) { super(props); this.state = { + isCompact: true, columns: [ { title: 'Header cell', @@ -919,6 +877,7 @@ class CompactExpandableTable extends React.Component { ] }; this.onCollapse = this.onCollapse.bind(this); + this.toggleCompact = this.toggleCompact.bind(this); } onCollapse(event, rowKey, isOpen) { @@ -933,103 +892,33 @@ class CompactExpandableTable extends React.Component { }); } - render() { - const { columns, rows } = this.state; - - return ( - - - -
- ); - } -} -``` - -### Expandable - -```js -import React from 'react'; -import { Table, TableHeader, TableBody, expandable } from '@patternfly/react-table'; - -class ExpandableTable extends React.Component { - constructor(props) { - super(props); - this.state = { - columns: [ - { - title: 'Header cell', - cellFormatters: [expandable] - }, - 'Branches', - { title: 'Pull requests' }, - 'Workspaces', - { - title: 'Last commit' - } - ], - rows: [ - { - cells: ['one', 'two', 'three', 'four', 'five'] - }, - { - isOpen: true, - cells: ['parent - 1', 'two', 'three', 'four', 'five'] - }, - { - parent: 1, - fullWidth: true, - cells: ['child - 1'] - }, - { - isOpen: false, - cells: ['parent - 2', 'two', 'three', 'four', 'five'] - }, - { - parent: 3, - cells: ['child - 2'] - }, - { - isOpen: false, - cells: ['parent - 3', 'two', 'three', 'four', 'five'] - }, - { - parent: 5, - fullWidth: true, - noPadding: true, - cells: ['child - 3'] - } - ] - }; - this.onCollapse = this.onCollapse.bind(this); - } - - onCollapse(event, rowKey, isOpen) { - const { rows } = this.state; - /** - * Please do not use rowKey as row index for more complex tables. - * Rather use some kind of identifier like ID passed with each row. - */ - rows[rowKey].isOpen = isOpen; + toggleCompact(checked) { this.setState({ - rows + isCompact: checked }); } render() { - const { columns, rows } = this.state; + const { columns, rows, isCompact } = this.state; return ( - - - -
+ + + + + +
+
); } } @@ -1231,64 +1120,30 @@ class CompoundExpandableTable extends React.Component { }; this.onExpand = this.onExpand.bind(this); } - - onExpand(event, rowIndex, colIndex, isOpen, rowData, extraData) { - const { rows } = this.state; - if (!isOpen) { - // set all other expanded cells false in this row if we are expanding - rows[rowIndex].cells.forEach(cell => { - if (cell.props) cell.props.isOpen = false; - }); - rows[rowIndex].cells[colIndex].props.isOpen = true; - rows[rowIndex].isOpen = true; - } else { - rows[rowIndex].cells[colIndex].props.isOpen = false; - rows[rowIndex].isOpen = rows[rowIndex].cells.some(cell => cell.props && cell.props.isOpen); - } - this.setState({ - rows - }); - } - - render() { - const { columns, rows } = this.state; - - return ( - - - -
- ); - } -} -``` - -### With width modifiers - -```js -import React from 'react'; -import { Table, TableHeader, TableBody, cellWidth } from '@patternfly/react-table'; - -class WidthTable extends React.Component { - constructor(props) { - super(props); - this.state = { - columns: [ - { title: 'Header cell', transforms: [cellWidth(10)] }, - 'Branches', - { title: 'Pull requests', transforms: [cellWidth(30)] }, - 'Workspaces', - { title: 'Last commit' } - ], - rows: [['one', 'two', 'three', 'four', 'five']] - }; + + onExpand(event, rowIndex, colIndex, isOpen, rowData, extraData) { + const { rows } = this.state; + if (!isOpen) { + // set all other expanded cells false in this row if we are expanding + rows[rowIndex].cells.forEach(cell => { + if (cell.props) cell.props.isOpen = false; + }); + rows[rowIndex].cells[colIndex].props.isOpen = true; + rows[rowIndex].isOpen = true; + } else { + rows[rowIndex].cells[colIndex].props.isOpen = false; + rows[rowIndex].isOpen = rows[rowIndex].cells.some(cell => cell.props && cell.props.isOpen); + } + this.setState({ + rows + }); } render() { const { columns, rows } = this.state; return ( - +
@@ -1297,39 +1152,42 @@ class WidthTable extends React.Component { } ``` -### Breakpoint modifiers +### With width and breakpoint visibility modifiers ```js import React from 'react'; -import { Table, TableHeader, TableBody, sortable, classNames, Visibility } from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, cellWidth, classNames, Visibility } from '@patternfly/react-table'; -class HiddenVisibleBreakpointTable extends React.Component { +class WidthTable extends React.Component { constructor(props) { super(props); this.state = { columns: [ - { - title: 'Repositories', + { title: 'Header cell', transforms: [cellWidth(10)] }, + { + title: 'Branches (visible only on md)', columnTransforms: [ classNames(Visibility.hidden, Visibility.visibleOnMd, Visibility.hiddenOnLg, Visibility.visibleOn2Xl) ] }, - 'Branches', - { - title: 'Pull requests', + { + title: 'Pull requests (hidden only on md)', columnTransforms: [classNames(Visibility.hiddenOnMd, Visibility.visibleOnLg)] }, - 'Workspaces', - { + { + title: 'Workspaces (hidden on xs)', + columnTransforms: [ + classNames(Visibility.hidden, Visibility.visibleOnSm) + ] + }, + { title: 'Last commit', - columnTransforms: [classNames(Visibility.hidden, Visibility.visibleOnSm)] + transforms: [cellWidth(30)] } ], rows: [ - ['Visible only on md breakpoint', '10', 'Hidden only on md breakpoint', '5', 'Hidden on xs breakpoint'], - ['Repository 2', '10', '25', '5', '2 days ago'], - ['Repository 3', '10', '25', '5', '2 days ago'], - ['Repository 4', '10', '25', '5', '2 days ago'] + ['one - 1', 'two - 1 (visible only on md)', 'three - 1 (hidden only on md)', 'four - 1 (hidden on xs)', 'five - 1'], + ['one - 2', 'two - 2 (visible only on md)', 'three - 2 (hidden only on md)', 'four - 2 (hidden on xs)', 'five - 2'] ] }; } @@ -1338,7 +1196,7 @@ class HiddenVisibleBreakpointTable extends React.Component { const { columns, rows } = this.state; return ( - +
@@ -1961,3 +1819,1088 @@ class EditableRowsTable extends React.Component { } } ``` + +## TableComposable examples + +### TableComposable: Basic + +A basic example using the composable table components. The `TableComposable` component differs from the regular `Table` component, in that it allows you to compose the table by nesting the relevant `Thead`, `Tbody`, `Tr`, `Th` and `Td` components within it. For a less declarative and more implicit approach, use the `Table` component instead. + +Some general notes: + +- Provide `dataLabel` prop to the `Td` components so that in mobile view the cell has a label to provide context. +- If you want a table caption, simply place a `My caption` as the first child within a `TableComposable`. + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td, Caption } from '@patternfly/react-table'; + +ComposableTableBasic = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'three', 'four', 'five'], + ['one - 2', null, null, 'four - 2', 'five - 2'], + ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3'] + ]; + return ( + + Simple table using composable components + + + {columns.map((column, columnIndex) => ( + {column} + ))} + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + ))} + + + ); +}; +``` + +### TableComposable: Row click handler, custom row wrapper, header tooltips & popovers + +This example demonstrates customizing rows, adding tooltip and popover information to header items, and some other misc. props. + +- You can wrap the header cell contents in a `HeaderCellInfoWrapper` component to give it a tooltip or popover +- If you add the `noWrap` prop to `Thead`, it won't wrap it if there is no space +- You can add the `textCenter` prop to `Th` or `Td` to center the contents +- You can pass `onClick`, `className`, `style` and more to `Tr` + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td, HeaderCellInfoWrapper } from '@patternfly/react-table'; + +ComposableTableMisc = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'three', 'four', 'five'], + [{ title: 'one - 2', colSpan: 3 }, null, null, 'four - 2', 'five - 2'], + ['one - 3', 'two - 3', 'three - 3', 'four - 3', { title: 'five - 3 (not centered)', textCenter: false }] + ]; + const onRowClick = (event, rowIndex, row) => { + console.log(`handle row click ${rowIndex}`, row); + }; + return ( + + + + + + {columns[0]} + + + {columns[1]} + + + More information on pull requests +
+ } + ariaLabel="More information on pull requests" + popoverProps={{ + headerContent: 'Pull requests', + footerContent: Click here for even more info + }} + > + {columns[2]} + + + {columns[3]} + {columns[4]} + + + + {rows.map((row, rowIndex) => { + const isOddRow = (rowIndex + 1) % 2; + const customStyle = { + borderLeft: '3px solid var(--pf-global--primary-color--100)' + }; + return ( + onRowClick(event, rowIndex, row)} + className={isOddRow ? 'odd-row-class' : 'even-row-class'} + style={isOddRow ? customStyle : {}} + > + {row.map((cell, cellIndex) => { + if (!cell) { + return null; + } + let cellObject; + if (typeof cell !== 'object') { + cellObject = { + title: cell + }; + } else { + cellObject = cell; + } + const { title, ...rest } = cellObject; + return ( + + {title} + + ); + })} + + ); + })} + + + ); +}; +``` + +### TableComposable: Sortable & wrapping headers + +This example demonstrates making columns sortable, and wrapping header text. For sorting it is also important to pass the `columnIndex` to the `Th`. + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td } from '@patternfly/react-table'; + +ComposableTableSortable = () => { + const columns = [ + 'This is a really long table header that goes on for a long time 1.', + 'This is a really long table header that goes on for a long time 2.', + 'This is a really long table header that goes on for a long time 3.', + 'This is a really long table header that goes on for a long time 4.', + 'This is a really long table header that goes on for a long time 5.' + ]; + const [rows, setRows] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]); + // index of the currently active column + const [activeSortIndex, setActiveSortIndex] = React.useState(-1); + // sort direction of the currently active column + const [activeSortDirection, setActiveSortDirection] = React.useState('none'); + const onSort = (event, index, direction) => { + setActiveSortIndex(index); + setActiveSortDirection(direction); + // sorts the rows + const updatedRows = rows.sort((a, b) => { + if (typeof a[index] === 'number') { + // numeric sort + if (direction === 'asc') { + return a[index] - b[index]; + } + return b[index] - a[index]; + } else { + // string sort + if (direction === 'asc') { + return a[index].localeCompare(b[index]); + } + return b[index].localeCompare(a[index]); + } + }); + setRows(updatedRows); + }; + return ( + + + + {columns.map((column, columnIndex) => { + // In this example, wrap all but the first column just to demonstrate + const modifier = columnIndex !== 0 ? 'wrap' : null; + // In this example, make the 1st and 3rd columns sortable + const sortParams = + columnIndex === 0 || columnIndex === 2 + ? { + activeSortIndex, + activeSortDirection, + onSort, + columnIndex + } + : {}; + return ( + + {column} + + ); + })} + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + ))} + + + ); +}; +``` + +### TableComposable: Selectable + +This example demonstrates row selection. The selection column is just another column, but with selection specific props added. We add it as the first header cell and also as the first body cell for each row. +Be sure to also add `columnIndex` to `Th` and `columnIndex` as well as `rowIndex` to `Td`. + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td } from '@patternfly/react-table'; + +ComposableTableSelectable = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]; + const [allRowsSelected, setAllRowsSelected] = React.useState(false); + const [selected, setSelected] = React.useState(rows.map(row => false)); + const onSelect = (event, isSelected, rowId) => { + setSelected(selected.map((sel, index) => (index === rowId ? isSelected : sel))); + if (!isSelected && allRowsSelected) { + setAllRowsSelected(false); + } else if (isSelected && !allRowsSelected) { + let allSelected = true; + for (let i = 0; i < selected.length; i++) { + if (i !== rowId) { + if (!selected[i]) { + allSelected = false; + } + } + } + if (allSelected) { + setAllRowsSelected(true); + } + } + }; + const onSelectAll = (event, isSelected) => { + setAllRowsSelected(isSelected); + setSelected(selected.map(sel => isSelected)); + }; + return ( + + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + {rows.map((row, rowIndex) => ( + + + {row.map((cell, cellIndex) => { + const shiftedIndex = cellIndex + 1; + return ( + + {cell} + + ); + })} + + ))} + + + ); +}; +``` + +### TableComposable: Selectable radio input + +Similarly to the selectable example above, the radio buttons use the first column. The first header cell is empty, and each body row's first cell has radio button props. Just as with selectable, be sure to also add `columnIndex` to `Th` and `columnIndex` as well as `rowIndex` to `Td`. + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td } from '@patternfly/react-table'; + +ComposableTableSelectableRadio = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]; + const [selected, setSelected] = React.useState(-1); + const onSelect = (event, isSelected, rowId) => { + setSelected(rowId); + }; + return ( + + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + {rows.map((row, rowIndex) => ( + + + {row.map((cell, cellIndex) => { + const shiftedIndex = cellIndex + 1; + return ( + + {cell} + + ); + })} + + ))} + + + ); +}; +``` + +### TableComposable: Actions + +This example demonstrates adding actions as the last column. The header's last cell is an empty cell, and each body row's last cell is an action cell. + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td } from '@patternfly/react-table'; + +ComposableTableActions = () => { + const defaultActions = [ + { + title: 'Some action', + onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) + }, + { + title: Link action + }, + { + isSeparator: true + }, + { + title: 'Third action', + onClick: (event, rowId, rowData, extra) => console.log('clicked on Third action, on row: ', rowId) + } + ]; + const lastRowActions = [ + { + title: 'Some action', + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Some action, on row ${rowId}`) + }, + { + title:
Another action
, + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Another action, on row ${rowId}`) + }, + { + isSeparator: true + }, + { + title: 'Third action', + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Third action, on row ${rowId}`) + } + ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'], + ['4', '2', 'b', 'four', 'five'], + ['5', '2', 'b', 'four', 'five'] + ]; + return ( + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + + ))} + + + ); +}; +``` + +### TableComposable: Compact, compact borderless + +You can set the `TableComposable` variant to `compact` or `compactBorderless`. + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td } from '@patternfly/react-table'; +import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; + +ComposableTableCompact = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'], + ['4', '2', 'b', 'four', 'five'], + ['5', '2', 'b', 'four', 'five'] + ]; + const [variant, setVariant] = React.useState('compact'); + const handleItemClick = (isSelected, event) => { + const id = event.currentTarget.id; + setVariant(id); + }; + return ( + + + + + + + + + {columns.map((column, columnIndex) => ( + {column} + ))} + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + ))} + + + + ); +}; +``` + +### TableComposable: Expandable + +This example demonstrates having expandable rows. + +- Each parent/child row pair is enclosed in a `Tbody` component. +- You can make the table more compact by setting the `TableComposable` variant to `compactExpandable`. + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td, ExpandableRowContent } from '@patternfly/react-table'; +import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; + +ComposableTableExpandable = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rowPairs = [ + { parent: ['one', 'two', 'a', 'four', 'five'], child: null }, + { + parent: ['parent 1', 'two', 'k', 'four', 'five'], + child: ['single cell'] + }, + { + parent: ['parent 2', 'two', 'b', 'four', 'five'], + child: ['single cell - fullWidth'], + fullWidth: true + }, + { + parent: ['parent 3', '2', 'b', 'four', 'five'], + child: ['single cell - noPadding'], + noPadding: true + }, + { + parent: ['parent 4', '2', 'b', 'four', 'five'], + child: ['single cell - fullWidth & noPadding'], + fullWidth: true, + noPadding: true + }, + { + parent: ['parent 5', '2', 'b', 'four', 'five'], + child: [ + { + title: "spans 'Repositories' and 'Branches'", + props: { + colSpan: 2 + } + }, + { + title: "spans 'Pull requests' and 'Workspaces', and 'Last commit'", + props: { + colSpan: 3 + } + } + ] + }, + { + parent: ['parent 6', '2', 'b', 'four', 'five'], + child: [ + { + title: "fullWidth, spans the collapsible column and 'Repositories'", + props: { + colSpan: 2 + } + }, + { + title: "fullWidth, spans 'Branches' and 'Pull requests' and 'Workspaces'", + props: { + colSpan: 3 + } + }, + "fullWidth, spans 'Last commit'" + ], + fullWidth: true + } + ]; + const numColumns = columns.length; + // Init all to true + const [expanded, setExpanded] = React.useState( + Object.fromEntries(Object.entries(rowPairs).map(([k, v]) => [k, true])) + ); + const [variant, setVariant] = React.useState(null); + const handleItemClick = (isSelected, event) => { + const id = event.currentTarget.id; + setVariant(id === 'default' ? null : id); + }; + const handleExpansionToggle = rowIndex => { + setExpanded({ + ...expanded, + [rowIndex]: !expanded[rowIndex] + }); + }; + let rowIndex = -1; + return ( + + + + Default expandable + + + Compact expandable + + + + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + {rowPairs.map((pair, pairIndex) => { + rowIndex += 1; + const parentRow = ( + + handleExpansionToggle(pairIndex)} + /> + {pair.parent.map((cell, cellIndex) => ( + + {cell} + + ))} + + ); + if (pair.child) { + rowIndex += 1; + } + const childRow = pair.child ? ( + + {!rowPairs[pairIndex].fullWidth && } + {rowPairs[pairIndex].child.map((cell, cellIndex) => { + const shift = rowPairs[pairIndex].fullWidth ? 1 : 0; + const shiftedCellIndex = cellIndex + shift; + return ( + + {cell.title || cell} + + ); + })} + + ) : null; + return ( + + + {parentRow} + {childRow} + + + ); + })} + + + ); +}; +``` + +### TableComposable: Compound expandable + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td, ExpandableRowContent } from '@patternfly/react-table'; + +import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; +import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; +import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; + +// https://github.com/patternfly/patternfly-react/blob/master/packages/react-table/src/components/Table/demo/DemoSortableTable.js +import DemoSortableTable from './demo/DemoSortableTable'; + +ComposableCompoundExpandableTable = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit', '']; + const rows = [ + ['siemur/test-space', 10, 4, 4, '20 minutes', 'Open in Github'], + ['siemur/test-space', 3, 4, 2, '10 minutes', 'Open in Github'] + ]; + const [activeChild, setActiveChild] = React.useState('0_1'); + // key = row_col of the parent it corresponds to + const childData = { + '0_1': { + component: ( + + ) + }, + '0_2': { + component: ( + + ) + }, + '0_3': { + component: ( + + ) + }, + '1_1': { + component: ( + + ) + }, + '1_2': { + component: ( + + ) + }, + '1_3': { + component: ( + + ) + } + }; + const customRender = (cell, index) => { + if (index === 0) { + return {cell}; + } else if (index === 1) { + return ( + + {cell} + + ); + } else if (index === 2) { + return ( + + {cell} + + ); + } else if (index === 3) { + return ( + + {cell} + + ); + } else if (index === 5) { + return {cell}; + } + return cell; + }; + const isCompoundExpanded = (rowIndex, cellIndex) => { + // only columns 1 - 3 are compound expansion toggles in this example + if (1 <= cellIndex && cellIndex <= 3) { + return activeChild === `${rowIndex}_${cellIndex}`; + } + return null; + }; + return ( + + + + + {columns.map((column, columnIndex) => ( + + {column} + + ))} + + + {rows.map((row, rowIndex) => { + const isRowExpanded = activeChild && activeChild.split('_')[0] === `${rowIndex}`; + return ( + + + + {row.map((cell, cellIndex) => ( + { + // only columns 1 - 3 are clickable + if (1 <= cellIndex && cellIndex <= 3) { + const current = `${rowIndex}_${cellIndex}`; + if (activeChild === current) { + // closing the expansion on the current toggle + setActiveChild(null); + } else { + // expanding + setActiveChild(current); + } + } + }} + > + {customRender(cell, cellIndex)} + + ))} + + {isRowExpanded && ( + + + {childData[activeChild].component} + + + )} + + + ); + })} + + + ); +}; +``` + +### TableComposable: Cell width, breakpoint modifiers + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td } from '@patternfly/react-table'; + +ComposableTableCellWidth = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'three', 'four', 'five'], + ['one - 2', null, null, 'four - 2', 'five - 2'], + ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3'] + ]; + return ( + + + + {columns.map((column, columnIndex) => ( + + {column} + + ))} + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + ))} + + + ); +}; +``` + +### TableComposable: Controlling text + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td } from '@patternfly/react-table'; + +ComposableControllingText = () => { + const columns = [ + 'Truncate (width 20%)', + 'Break word', + 'Wrapping table header text. This th text will wrap instead of truncate.', + 'Fit content', + 'No wrap' + ]; + const rows = [ + [ + 'This text will truncate instead of wrap.', + http://thisisaverylongurlthatneedstobreakusethebreakwordmodifier.org, +

+ By default, + thead cells will truncate and + tbody cells will wrap. Use + .pf-m-wrap on ath to change its behavior. +

, + "This cell's content will adjust itself to the parent th width. This modifier only affects table layouts.", + No wrap + ] + ]; + return ( + + + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + + + + {rows.map((row, rowIndex) => ( + + + {row[0]} + + + {row[1]} + + {row[2]} + {row[3]} + + {row[4]} + + + ))} + + + ); +}; +``` + +### TableComposable: Modifiers with table text + +```js isBeta +import React from 'react'; +import { TableComposable, Thead, Tbody, Tr, Th, Td, TableText } from '@patternfly/react-table'; + +ComposableTableText = () => { + const columns = ['Truncating text', 'Wrapping table header text. This th text will wrap instead of truncate.']; + const rows = [ + [ + This text will truncate instead of wrap., + + This is a link that needs to be on one line and fully readable. + + ] + ]; + return ( + + + + {columns[0]} + {columns[1]} + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + ))} + + + ); +}; +``` + +### TableComposable: Empty state + +```js isBeta +import React from 'react'; +import { + TableComposable, + Thead, + Tbody, + Tr, + Th, + Td, + Caption, + Button, + EmptyState, + EmptyStateBody, + EmptyStatePrimary, + Bullseye, + Title, + EmptyStateIcon +} from '@patternfly/react-table'; + +ComposableEmptyState = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + return ( + + + Empty State Table Example + + + {columns.map((column, columnIndex) => ( + + {column} + + ))} + + + + + + + No results found + + + No results match the filter criteria. Remove all filters or clear all filters to show results. + + + + + ); +}; +``` diff --git a/packages/react-table/src/components/BaseTable/Caption.tsx b/packages/react-table/src/components/TableComposable/Caption.tsx similarity index 100% rename from packages/react-table/src/components/BaseTable/Caption.tsx rename to packages/react-table/src/components/TableComposable/Caption.tsx diff --git a/packages/react-table/src/components/BaseTable/BaseTable.tsx b/packages/react-table/src/components/TableComposable/TableComposable.tsx similarity index 88% rename from packages/react-table/src/components/BaseTable/BaseTable.tsx rename to packages/react-table/src/components/TableComposable/TableComposable.tsx index 520052d4c8b..989e7447bb1 100644 --- a/packages/react-table/src/components/BaseTable/BaseTable.tsx +++ b/packages/react-table/src/components/TableComposable/TableComposable.tsx @@ -31,7 +31,7 @@ export interface BaseCellProps { innerRef?: React.Ref; } -export interface BaseTableProps extends React.HTMLProps, OUIAProps { +export interface TableComposableProps extends React.HTMLProps, OUIAProps { /** Adds an accessible name for the Table */ 'aria-label'?: string; /** Content rendered inside the Table */ @@ -55,7 +55,7 @@ export interface BaseTableProps extends React.HTMLProps, OUIAP innerRef?: React.Ref; } -const BaseTableBase: React.FunctionComponent = ({ +const TableComposableBase: React.FunctionComponent = ({ children, className, variant, @@ -67,7 +67,7 @@ const BaseTableBase: React.FunctionComponent = ({ ouiaId, ouiaSafe = true, ...props -}: BaseTableProps) => { +}: TableComposableProps) => { const ouiaProps = useOUIAProps('Table', ouiaId, ouiaSafe); const variantModifiers = () => { if (variant === 'compact') { @@ -101,7 +101,7 @@ const BaseTableBase: React.FunctionComponent = ({ ); }; -export const BaseTable = React.forwardRef((props: BaseTableProps, ref: React.Ref) => ( - +export const TableComposable = React.forwardRef((props: TableComposableProps, ref: React.Ref) => ( + )); -BaseTable.displayName = 'BaseTable'; +TableComposable.displayName = 'TableComposable'; diff --git a/packages/react-table/src/components/BaseTable/TBody.tsx b/packages/react-table/src/components/TableComposable/Tbody.tsx similarity index 71% rename from packages/react-table/src/components/BaseTable/TBody.tsx rename to packages/react-table/src/components/TableComposable/Tbody.tsx index 1e3f314cef6..f48424ae45b 100644 --- a/packages/react-table/src/components/BaseTable/TBody.tsx +++ b/packages/react-table/src/components/TableComposable/Tbody.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -export interface TBodyProps extends React.HTMLProps { +export interface TbodyProps extends React.HTMLProps { /** Content rendered inside the row */ children?: React.ReactNode; /** Additional classes added to the row */ @@ -13,19 +13,19 @@ export interface TBodyProps extends React.HTMLProps { innerRef?: React.Ref; } -const TBodyBase: React.FunctionComponent = ({ +const TbodyBase: React.FunctionComponent = ({ children, className, isExpanded, innerRef, ...props -}: TBodyProps) => ( +}: TbodyProps) => ( {children} ); -export const TBody = React.forwardRef((props: TBodyProps, ref: React.Ref) => ( - +export const Tbody = React.forwardRef((props: TbodyProps, ref: React.Ref) => ( + )); -TBody.displayName = 'TBody'; +Tbody.displayName = 'Tbody'; diff --git a/packages/react-table/src/components/BaseTable/Td.tsx b/packages/react-table/src/components/TableComposable/Td.tsx similarity index 99% rename from packages/react-table/src/components/BaseTable/Td.tsx rename to packages/react-table/src/components/TableComposable/Td.tsx index fd9dbe5853c..6abefd3bfc7 100644 --- a/packages/react-table/src/components/BaseTable/Td.tsx +++ b/packages/react-table/src/components/TableComposable/Td.tsx @@ -26,7 +26,7 @@ import { DropdownDirection, DropdownPosition } from '@patternfly/react-core/dist/js/components/Dropdown/dropdownConstants'; -import { BaseCellProps } from './BaseTable'; +import { BaseCellProps } from './TableComposable'; export interface TdProps extends BaseCellProps, Omit, 'onSelect' | 'width'> { /** The selectable variant */ diff --git a/packages/react-table/src/components/BaseTable/Th.tsx b/packages/react-table/src/components/TableComposable/Th.tsx similarity index 98% rename from packages/react-table/src/components/BaseTable/Th.tsx rename to packages/react-table/src/components/TableComposable/Th.tsx index 471523831cb..5357155dd9c 100644 --- a/packages/react-table/src/components/BaseTable/Th.tsx +++ b/packages/react-table/src/components/TableComposable/Th.tsx @@ -16,7 +16,7 @@ import { } from '../Table'; import { IVisibility } from '../Table/utils/decorators/classNames'; import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; -import { BaseCellProps } from './BaseTable'; +import { BaseCellProps } from './TableComposable'; export interface ThProps extends BaseCellProps, diff --git a/packages/react-table/src/components/BaseTable/Thead.tsx b/packages/react-table/src/components/TableComposable/Thead.tsx similarity index 70% rename from packages/react-table/src/components/BaseTable/Thead.tsx rename to packages/react-table/src/components/TableComposable/Thead.tsx index a8e40bbc5d0..4e7ff7395b1 100644 --- a/packages/react-table/src/components/BaseTable/Thead.tsx +++ b/packages/react-table/src/components/TableComposable/Thead.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -export interface THeadProps extends React.HTMLProps { +export interface TheadProps extends React.HTMLProps { /** Content rendered inside the row */ children?: React.ReactNode; /** Additional classes added to the row */ @@ -13,19 +13,19 @@ export interface THeadProps extends React.HTMLProps { innerRef?: React.Ref; } -const THeadBase: React.FunctionComponent = ({ +const TheadBase: React.FunctionComponent = ({ children, className, noWrap = false, innerRef, ...props -}: THeadProps) => ( +}: TheadProps) => ( {children} ); -export const THead = React.forwardRef((props: THeadProps, ref: React.Ref) => ( - +export const Thead = React.forwardRef((props: TheadProps, ref: React.Ref) => ( + )); -THead.displayName = 'THead'; +Thead.displayName = 'Thead'; diff --git a/packages/react-table/src/components/BaseTable/Tr.tsx b/packages/react-table/src/components/TableComposable/Tr.tsx similarity index 92% rename from packages/react-table/src/components/BaseTable/Tr.tsx rename to packages/react-table/src/components/TableComposable/Tr.tsx index 6dc44214582..e16b4541699 100644 --- a/packages/react-table/src/components/BaseTable/Tr.tsx +++ b/packages/react-table/src/components/TableComposable/Tr.tsx @@ -12,9 +12,9 @@ export interface TrProps extends React.HTMLProps, OUIAProps /** Forwarded ref */ innerRef?: React.Ref; - /** Only applicable to Tr within the TBody: Makes the row expandable and determines if it's expanded or not */ + /** Only applicable to Tr within the Tbody: Makes the row expandable and determines if it's expanded or not */ isExpanded?: boolean; - /** Only applicable to Tr within the TBody: Whether the row is editable */ + /** Only applicable to Tr within the Tbody: Whether the row is editable */ isEditable?: boolean; } diff --git a/packages/react-table/src/components/TableComposable/index.ts b/packages/react-table/src/components/TableComposable/index.ts new file mode 100644 index 00000000000..f5b88eaaf1e --- /dev/null +++ b/packages/react-table/src/components/TableComposable/index.ts @@ -0,0 +1,7 @@ +export * from './TableComposable'; +export * from './Thead'; +export * from './Tbody'; +export * from './Tr'; +export * from './Th'; +export * from './Td'; +export * from './Caption'; diff --git a/packages/react-table/src/components/index.ts b/packages/react-table/src/components/index.ts index 6089b1a01e7..676493ae1c1 100644 --- a/packages/react-table/src/components/index.ts +++ b/packages/react-table/src/components/index.ts @@ -1,2 +1,2 @@ export * from './Table'; -export * from './BaseTable'; +export * from './TableComposable'; diff --git a/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap b/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap index 966069240d5..97a0deb9336 100644 --- a/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap +++ b/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap @@ -415,7 +415,7 @@ exports[`Actions virtualized table 1`] = ` role="grid" variant={null} > - - - - @@ -774,7 +774,7 @@ exports[`Actions virtualized table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -1361,15 +1361,15 @@ exports[`Actions virtualized table 1`] = ` - - + +
- - + + `; @@ -1788,7 +1788,7 @@ exports[`Selectable virtualized table 1`] = ` role="grid" variant={null} > - - - - @@ -2147,7 +2147,7 @@ exports[`Selectable virtualized table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -2752,15 +2752,15 @@ exports[`Selectable virtualized table 1`] = ` - - + +
- - + + `; @@ -3324,7 +3324,7 @@ exports[`Simple Actions table 1`] = ` role="grid" variant={null} > - - - - @@ -3797,7 +3797,7 @@ exports[`Simple Actions table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -4498,15 +4498,15 @@ exports[`Simple Actions table 1`] = ` - - + + - - + + `; @@ -4874,7 +4874,7 @@ exports[`Simple virtualized table aria-label 1`] = ` role="grid" variant={null} > - - - - @@ -5186,7 +5186,7 @@ exports[`Simple virtualized table aria-label 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -5633,15 +5633,15 @@ exports[`Simple virtualized table aria-label 1`] = ` - - + + - - + + `; @@ -6009,7 +6009,7 @@ exports[`Simple virtualized table className 1`] = ` role="grid" variant={null} > - - - - @@ -6321,7 +6321,7 @@ exports[`Simple virtualized table className 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -6768,15 +6768,15 @@ exports[`Simple virtualized table className 1`] = ` - - + + - - + + `; @@ -7150,7 +7150,7 @@ exports[`Sortable Virtualized Table 1`] = ` role="grid" variant={null} > - - - - @@ -7463,7 +7463,7 @@ exports[`Sortable Virtualized Table 1`] = ` }, "wrapper": Object { "$$typeof": Symbol(react.forward_ref), - "displayName": "THead", + "displayName": "Thead", "render": [Function], }, } @@ -7966,15 +7966,15 @@ exports[`Sortable Virtualized Table 1`] = ` - - + + - - + + `; From ef1d6bedae67ab92c0fa933826044e1949e8a1eb Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Thu, 22 Oct 2020 13:57:16 -0400 Subject: [PATCH 19/29] for a11y --- .../src/components/Table/examples/Table.md | 76 ++++++++++--------- 1 file changed, 42 insertions(+), 34 deletions(-) diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index 64922d652b9..facc374c259 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -903,11 +903,7 @@ class CompactExpandableTable extends React.Component { return ( - + { }; ``` -### TableComposable: Row click handler, custom row wrapper, header tooltips & popovers +### Composable: Row click handler, custom row wrapper, header tooltips & popovers This example demonstrates customizing rows, adding tooltip and popover information to header items, and some other misc. props. @@ -1976,7 +1982,7 @@ ComposableTableMisc = () => { }; ``` -### TableComposable: Sortable & wrapping headers +### Composable: Sortable & wrapping headers This example demonstrates making columns sortable, and wrapping header text. For sorting it is also important to pass the `columnIndex` to the `Th`. @@ -2063,7 +2069,7 @@ ComposableTableSortable = () => { }; ``` -### TableComposable: Selectable +### Composable: Selectable This example demonstrates row selection. The selection column is just another column, but with selection specific props added. We add it as the first header cell and also as the first body cell for each row. Be sure to also add `columnIndex` to `Th` and `columnIndex` as well as `rowIndex` to `Td`. @@ -2142,7 +2148,7 @@ ComposableTableSelectable = () => { }; ``` -### TableComposable: Selectable radio input +### Composable: Selectable radio input Similarly to the selectable example above, the radio buttons use the first column. The first header cell is empty, and each body row's first cell has radio button props. Just as with selectable, be sure to also add `columnIndex` to `Th` and `columnIndex` as well as `rowIndex` to `Td`. @@ -2201,7 +2207,7 @@ ComposableTableSelectableRadio = () => { }; ``` -### TableComposable: Actions +### Composable: Actions This example demonstrates adding actions as the last column. The header's last cell is an empty cell, and each body row's last cell is an action cell. @@ -2286,7 +2292,7 @@ ComposableTableActions = () => { }; ``` -### TableComposable: Compact, compact borderless +### Composable: Compact, compact borderless You can set the `TableComposable` variant to `compact` or `compactBorderless`. @@ -2350,7 +2356,7 @@ ComposableTableCompact = () => { }; ``` -### TableComposable: Expandable +### Composable: Expandable This example demonstrates having expandable rows. @@ -2443,16 +2449,18 @@ ComposableTableExpandable = () => { return ( - - Default expandable - + - Compact expandable - + /> @@ -2533,7 +2541,7 @@ ComposableTableExpandable = () => { }; ``` -### TableComposable: Compound expandable +### Composable: Compound expandable ```js isBeta import React from 'react'; @@ -2704,7 +2712,7 @@ ComposableCompoundExpandableTable = () => { }; ``` -### TableComposable: Cell width, breakpoint modifiers +### Composable: Cell width, breakpoint modifiers ```js isBeta import React from 'react'; @@ -2752,7 +2760,7 @@ ComposableTableCellWidth = () => { }; ``` -### TableComposable: Controlling text +### Composable: Controlling text ```js isBeta import React from 'react'; @@ -2813,7 +2821,7 @@ ComposableControllingText = () => { }; ``` -### TableComposable: Modifiers with table text +### Composable: Modifiers with table text ```js isBeta import React from 'react'; @@ -2853,7 +2861,7 @@ ComposableTableText = () => { }; ``` -### TableComposable: Empty state +### Composable: Empty state ```js isBeta import React from 'react'; From 867703d9e58c485d8a8cb2c7cf74395ce7f654d9 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Thu, 22 Oct 2020 14:26:40 -0400 Subject: [PATCH 20/29] one more --- .../react-table/src/components/Table/examples/Table.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index facc374c259..1375ecddeea 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -903,7 +903,14 @@ class CompactExpandableTable extends React.Component { return ( - +
Date: Thu, 22 Oct 2020 16:53:57 -0400 Subject: [PATCH 21/29] feedback --- .../src/components/Table/examples/Table.md | 188 +++++++----------- .../src/components/TableComposable/Td.tsx | 36 +--- 2 files changed, 82 insertions(+), 142 deletions(-) diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index 1375ecddeea..106c25f7f15 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -903,9 +903,9 @@ class CompactExpandableTable extends React.Component { return ( - { ) : null; return ( - - {parentRow} - {childRow} - + {parentRow} + {childRow} ); })} @@ -2558,7 +2556,7 @@ import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-ic import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; -// https://github.com/patternfly/patternfly-react/blob/master/packages/react-table/src/components/Table/demo/DemoSortableTable.js +// https://github.com/patternfly/patternfly-react/blob/master/packages/react-table/src/components/Table/examples/DemoSortableTable.js import DemoSortableTable from './demo/DemoSortableTable'; ComposableCompoundExpandableTable = () => { @@ -2567,7 +2565,8 @@ ComposableCompoundExpandableTable = () => { ['siemur/test-space', 10, 4, 4, '20 minutes', 'Open in Github'], ['siemur/test-space', 3, 4, 2, '10 minutes', 'Open in Github'] ]; - const [activeChild, setActiveChild] = React.useState('0_1'); + // index corresponds to row index, and value corresponds to column index of the expanded, null means no cell is expanded + const [activeChild, setActiveChild] = React.useState([1, null]); // key = row_col of the parent it corresponds to const childData = { '0_1': { @@ -2654,67 +2653,74 @@ ComposableCompoundExpandableTable = () => { const isCompoundExpanded = (rowIndex, cellIndex) => { // only columns 1 - 3 are compound expansion toggles in this example if (1 <= cellIndex && cellIndex <= 3) { - return activeChild === `${rowIndex}_${cellIndex}`; + return activeChild[rowIndex] === cellIndex; } return null; }; return ( - - - - - {columns.map((column, columnIndex) => ( - - ))} - - - {rows.map((row, rowIndex) => { - const isRowExpanded = activeChild && activeChild.split('_')[0] === `${rowIndex}`; - return ( - - - - {row.map((cell, cellIndex) => ( - + + {columns.map((column, columnIndex) => ( + + ))} + + + {rows.map((row, rowIndex) => { + const isRowExpanded = activeChild[rowIndex] !== null; + return ( + + + + {row.map((cell, cellIndex) => ( + - ))} + } + }} + > + {customRender(cell, cellIndex)} + + ))} + + {isRowExpanded && ( + + - {isRowExpanded && ( - - - - )} - - - ); - })} - - + )} + + + ); + })} + ); }; ``` @@ -2867,55 +2873,3 @@ ComposableTableText = () => { ); }; ``` - -### Composable: Empty state - -```js isBeta -import React from 'react'; -import { - TableComposable, - Thead, - Tbody, - Tr, - Th, - Td, - Caption, - Button, - EmptyState, - EmptyStateBody, - EmptyStatePrimary, - Bullseye, - Title, - EmptyStateIcon -} from '@patternfly/react-table'; - -ComposableEmptyState = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; - return ( - - - - - - {columns.map((column, columnIndex) => ( - - ))} - - - - - - - No results found - - - No results match the filter criteria. Remove all filters or clear all filters to show results. - - - - - ); -}; -``` diff --git a/packages/react-table/src/components/TableComposable/Td.tsx b/packages/react-table/src/components/TableComposable/Td.tsx index 6abefd3bfc7..3200c399935 100644 --- a/packages/react-table/src/components/TableComposable/Td.tsx +++ b/packages/react-table/src/components/TableComposable/Td.tsx @@ -20,7 +20,6 @@ import { Visibility, classNames } from '../Table'; -import { mergeProps } from '../Table/base/merge-props'; import { IVisibility } from '../Table/utils/decorators/classNames'; import { DropdownDirection, @@ -124,31 +123,18 @@ const TdBase: React.FunctionComponent = ({ : null; const expandableParams = isExpanded !== null - ? mergeProps( - collapsible(null, { - rowIndex, - columnIndex, - rowData: { - isOpen: isExpanded - }, - column: { - extraParams: { - onCollapse - } - } - }) - /* expandedRow()('true', { - rowIndex, - columnIndex, - rowData: { - parent: 0, - noPadding - }, - column: { - extraParams: {} + ? collapsible(null, { + rowIndex, + columnIndex, + rowData: { + isOpen: isExpanded + }, + column: { + extraParams: { + onCollapse } - }) */ - ) + } + }) : null; const compoundParams = isCompoundExpanded !== null From c403785b239444ccb69d1ec4482fecad81dcb984 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Fri, 23 Oct 2020 11:36:11 -0400 Subject: [PATCH 22/29] add types version of the composable examples to demo --- .../demo-app-ts/src/Demos.ts | 5 + .../demos/TableDemo/TableComposableDemo.tsx | 1006 +++++++++++++++++ .../demo-app-ts/src/components/demos/index.ts | 1 + .../src/components/Table/examples/Table.md | 2 +- 4 files changed, 1013 insertions(+), 1 deletion(-) create mode 100644 packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx diff --git a/packages/react-integration/demo-app-ts/src/Demos.ts b/packages/react-integration/demo-app-ts/src/Demos.ts index 0993d7782b5..bea7313862f 100644 --- a/packages/react-integration/demo-app-ts/src/Demos.ts +++ b/packages/react-integration/demo-app-ts/src/Demos.ts @@ -696,6 +696,11 @@ export const Demos: DemoInterface[] = [ name: 'Table Width Modifers Demo', componentType: Examples.TableWidthModifiersDemo }, + { + id: 'table-composable-demo', + name: 'Table Composable Demo', + componentType: Examples.TableComposableDemo + }, { id: 'tab-string-event-key-demo', name: 'Tab String Event Key Demo', diff --git a/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx b/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx new file mode 100644 index 00000000000..bb189d502ca --- /dev/null +++ b/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx @@ -0,0 +1,1006 @@ +import * as React from 'react'; +import { + TableComposable, + Thead, + Tbody, + Tr, + Th, + Td, + Caption, + TableText, + HeaderCellInfoWrapper, + ExpandableRowContent, + OnSelect, + IActions +} from '@patternfly/react-table'; +import { ToggleGroup, ToggleGroupItem, Stack, StackItem } from '@patternfly/react-core'; +import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; +import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; +import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; + +export const TableComposableDemo = () => { + const ComposableTableBasic = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'three', 'four', 'five'], + ['one - 2', null, null, 'four - 2', 'five - 2'], + ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3'] + ]; + return ( + + + + + {columns.map((column, columnIndex) => ( + + ))} + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + ))} + + ))} + + + ); + }; + + const ComposableTableMisc = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows: any[] = [ + ['one', 'two', 'three', 'four', 'five'], + [{ title: 'one - 2', colSpan: 3 }, null, null, 'four - 2', 'five - 2'], + ['one - 3', 'two - 3', 'three - 3', 'four - 3', { title: 'five - 3 (not centered)', textCenter: false }] + ]; + const onRowClick = (event: React.MouseEvent, rowIndex: number, row: any[]) => { + // eslint-disable-next-line no-console + console.log(`handle row click ${rowIndex}`, row); + }; + return ( + + + + + + + + + + + + {rows.map((row, rowIndex) => { + const isOddRow = (rowIndex + 1) % 2; + const customStyle = { + borderLeft: '3px solid var(--pf-global--primary-color--100)' + }; + return ( + onRowClick(event, rowIndex, row)} + className={isOddRow ? 'odd-row-class' : 'even-row-class'} + style={isOddRow ? customStyle : {}} + > + {row.map((cell: any, cellIndex: number) => { + if (!cell) { + return null; + } + let cellObject; + if (typeof cell !== 'object') { + cellObject = { + title: cell + }; + } else { + cellObject = cell; + } + const { title, ...rest } = cellObject; + return ( + + ); + })} + + ); + })} + + + ); + }; + + const ComposableTableSortable = () => { + const columns = [ + 'This is a really long table header that goes on for a long time 1.', + 'This is a really long table header that goes on for a long time 2.', + 'This is a really long table header that goes on for a long time 3.', + 'This is a really long table header that goes on for a long time 4.', + 'This is a really long table header that goes on for a long time 5.' + ]; + const [rows, setRows] = React.useState([ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]); + // index of the currently active column + const [activeSortIndex, setActiveSortIndex] = React.useState(-1); + // sort direction of the currently active column + const [activeSortDirection, setActiveSortDirection] = React.useState<'asc' | 'desc' | 'none'>('none'); + const onSort = (event: React.MouseEvent, index: number, direction: 'asc' | 'desc' | 'none') => { + setActiveSortIndex(index); + setActiveSortDirection(direction); + // sorts the rows + const updatedRows = rows.sort((a, b) => { + // string sort + if (direction === 'asc') { + return a[index].localeCompare(b[index]); + } + return b[index].localeCompare(a[index]); + }); + setRows(updatedRows); + }; + return ( + + + + {columns.map((column, columnIndex) => { + // In this example, wrap all but the first column just to demonstrate + const modifier = columnIndex !== 0 ? 'wrap' : null; + // In this example, make the 1st and 3rd columns sortable + const sortParams = + columnIndex === 0 || columnIndex === 2 + ? { + activeSortIndex, + activeSortDirection, + onSort, + columnIndex + } + : {}; + return ( + + ); + })} + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + ))} + + ))} + + + ); + }; + + const ComposableTableSelectable = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]; + const [allRowsSelected, setAllRowsSelected] = React.useState(false); + // eslint-disable-next-line @typescript-eslint/no-unused-vars + const [selected, setSelected] = React.useState(rows.map(row => false)); + const onSelect: OnSelect = (event, isSelected, rowId) => { + setSelected(selected.map((sel, index) => (index === rowId ? isSelected : sel))); + if (!isSelected && allRowsSelected) { + setAllRowsSelected(false); + } else if (isSelected && !allRowsSelected) { + let allSelected = true; + for (let i = 0; i < selected.length; i++) { + if (i !== rowId) { + if (!selected[i]) { + allSelected = false; + } + } + } + if (allSelected) { + setAllRowsSelected(true); + } + } + }; + const onSelectAll: OnSelect = (event, isSelected) => { + setAllRowsSelected(isSelected); + // eslint-disable-next-line @typescript-eslint/no-unused-vars + setSelected(selected.map(sel => isSelected)); + }; + return ( + + + + + + + + + + + + {rows.map((row, rowIndex) => ( + + + ); + })} + + ))} + + + ); + }; + + const ComposableTableSelectableRadio = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] + ]; + const [selected, setSelected] = React.useState(-1); + const onSelect: OnSelect = (event, isSelected, rowId) => { + setSelected(rowId); + }; + return ( + + + + + + + + + + + + {rows.map((row, rowIndex) => ( + + + ); + })} + + ))} + + + ); + }; + + const ComposableTableActions = () => { + const defaultActions: IActions = [ + { + title: 'Some action', + // eslint-disable-next-line + onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) + }, + { + title: Link action + }, + { + isSeparator: true + }, + { + title: 'Third action', + // eslint-disable-next-line + onClick: (event, rowId, rowData, extra) => console.log('clicked on Third action, on row: ', rowId) + } + ]; + const lastRowActions: IActions = [ + { + title: 'Some action', + // eslint-disable-next-line + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Some action, on row ${rowId}`) + }, + { + title:
Another action
, + // eslint-disable-next-line + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Another action, on row ${rowId}`) + }, + { + isSeparator: true + }, + { + title: 'Third action', + // eslint-disable-next-line + onClick: (event, rowId, rowData, extra) => console.log(`clicked on Third action, on row ${rowId}`) + } + ]; + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'], + ['4', '2', 'b', 'four', 'five'], + ['5', '2', 'b', 'four', 'five'] + ]; + return ( + + + + + + + + + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + ))} + + ))} + + + ); + }; + + const ComposableTableCompact = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'], + ['4', '2', 'b', 'four', 'five'], + ['5', '2', 'b', 'four', 'five'] + ]; + const [variant, setVariant] = React.useState<'compact' | 'compactBorderless'>('compact'); + const handleItemClick = (isSelected: boolean, event: React.MouseEvent) => { + const id = event.currentTarget.id as 'compact' | 'compactBorderless'; + setVariant(id); + }; + return ( + + + + + + + + + {columns.map((column, columnIndex) => ( + + ))} + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + ))} + + ))} + + + + ); + }; + + const ComposableTableExpandable = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rowPairs: any[] = [ + { parent: ['one', 'two', 'a', 'four', 'five'], child: null }, + { + parent: ['parent 1', 'two', 'k', 'four', 'five'], + child: ['single cell'] + }, + { + parent: ['parent 2', 'two', 'b', 'four', 'five'], + child: ['single cell - fullWidth'], + fullWidth: true + }, + { + parent: ['parent 3', '2', 'b', 'four', 'five'], + child: ['single cell - noPadding'], + noPadding: true + }, + { + parent: ['parent 4', '2', 'b', 'four', 'five'], + child: ['single cell - fullWidth & noPadding'], + fullWidth: true, + noPadding: true + }, + { + parent: ['parent 5', '2', 'b', 'four', 'five'], + child: [ + { + title: "spans 'Repositories' and 'Branches'", + props: { + colSpan: 2 + } + }, + { + title: "spans 'Pull requests' and 'Workspaces', and 'Last commit'", + props: { + colSpan: 3 + } + } + ] + }, + { + parent: ['parent 6', '2', 'b', 'four', 'five'], + child: [ + { + title: "fullWidth, spans the collapsible column and 'Repositories'", + props: { + colSpan: 2 + } + }, + { + title: "fullWidth, spans 'Branches' and 'Pull requests' and 'Workspaces'", + props: { + colSpan: 3 + } + }, + "fullWidth, spans 'Last commit'" + ], + fullWidth: true + } + ]; + const numColumns = columns.length; + // Init all to true + const [expanded, setExpanded] = React.useState( + Object.fromEntries(Object.entries(rowPairs).map(([k]) => [k, true])) + ); + const [variant, setVariant] = React.useState(null); + const handleItemClick = (isSelected: boolean, event: React.MouseEvent) => { + const id = event.currentTarget.id; + setVariant(id === 'default' ? null : id); + }; + const handleExpansionToggle = (rowIndex: number) => { + setExpanded({ + ...expanded, + [rowIndex]: !expanded[rowIndex] + }); + }; + let rowIndex = -1; + return ( + + + + + + + + + + + + + + + + {rowPairs.map((pair, pairIndex) => { + rowIndex += 1; + const parentRow = ( + + + ))} + + ); + if (pair.child) { + rowIndex += 1; + } + const childRow = pair.child ? ( + + {!rowPairs[pairIndex].fullWidth && + ); + })} + + ) : null; + return ( + + {parentRow} + {childRow} + + ); + })} + + + ); + }; + + const ComposableCompoundExpandableTable = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit', '']; + const rows = [ + ['siemur/test-space', 10, 4, 4, '20 minutes', 'Open in Github'], + ['siemur/test-space', 3, 4, 2, '10 minutes', 'Open in Github'] + ]; + // index corresponds to row index, and value corresponds to column index of the expanded, null means no cell is expanded + const [activeChild, setActiveChild] = React.useState([1, null]); + const DemoSortableTable = ({ firstColumnRows, id }: { firstColumnRows: string[]; id: string }) => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last Commit']; + const rows = [firstColumnRows, ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five']]; + + return ( + + + + {columns.map((column, columnIndex) => ( + + ))} + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + ))} + + ))} + + + ); + }; + // key = row_col of the parent it corresponds to + const childData: { + [key: string]: any; + } = { + '0_1': { + component: ( + + ) + }, + '0_2': { + component: ( + + ) + }, + '0_3': { + component: ( + + ) + }, + '1_1': { + component: ( + + ) + }, + '1_2': { + component: ( + + ) + }, + '1_3': { + component: ( + + ) + } + }; + const customRender = (cell: any, index: number) => { + if (index === 0) { + return {cell}; + } else if (index === 1) { + return ( + + {cell} + + ); + } else if (index === 2) { + return ( + + {cell} + + ); + } else if (index === 3) { + return ( + + {cell} + + ); + } else if (index === 5) { + return {cell}; + } + return cell; + }; + const isCompoundExpanded = (rowIndex: number, cellIndex: number) => { + // only columns 1 - 3 are compound expansion toggles in this example + if (1 <= cellIndex && cellIndex <= 3) { + return activeChild[rowIndex] === cellIndex; + } + return null; + }; + return ( + + + + {columns.map((column, columnIndex) => ( + + ))} + + + {rows.map((row, rowIndex) => { + const isRowExpanded = activeChild[rowIndex] !== null; + const childIndex: string = `${rowIndex}_${activeChild[rowIndex]}`; + return ( + + + + {row.map((cell, cellIndex) => ( + + ))} + + {isRowExpanded && ( + + + + )} + + + ); + })} + + ); + }; + + const ComposableTableCellWidth = () => { + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; + const rows = [ + ['one', 'two', 'three', 'four', 'five'], + ['one - 2', null, null, 'four - 2', 'five - 2'], + ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3'] + ]; + return ( + + + + {columns.map((column, columnIndex) => ( + + ))} + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + ))} + + ))} + + + ); + }; + + const ComposableControllingText = () => { + const columns = [ + 'Truncate (width 20%)', + 'Break word', + 'Wrapping table header text. This th text will wrap instead of truncate.', + 'Fit content', + 'No wrap' + ]; + const rows = [ + [ + 'This text will truncate instead of wrap.', + http://thisisaverylongurlthatneedstobreakusethebreakwordmodifier.org, +

+ By default, + thead cells will truncate and + tbody cells will wrap. Use + .pf-m-wrap on ath to change its behavior. +

, + "This cell's content will adjust itself to the parent th width. This modifier only affects table layouts.", + No wrap + ] + ]; + return ( + + + + + + + + + + + + {rows.map((row, rowIndex) => ( + + + + + + + + ))} + + + ); + }; + + const ComposableTableText = () => { + const columns = ['Truncating text', 'Wrapping table header text. This th text will wrap instead of truncate.']; + const rows = [ + [ + This text will truncate instead of wrap., + + This is a link that needs to be on one line and fully readable. + + ] + ]; + return ( + + + + + + + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + ))} + + ))} + + + ); + }; + + return ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ); +}; diff --git a/packages/react-integration/demo-app-ts/src/components/demos/index.ts b/packages/react-integration/demo-app-ts/src/components/demos/index.ts index 10aa2065bcf..e01744796cd 100644 --- a/packages/react-integration/demo-app-ts/src/components/demos/index.ts +++ b/packages/react-integration/demo-app-ts/src/components/demos/index.ts @@ -137,6 +137,7 @@ export * from './TableDemo/TableSimpleDemo'; export * from './TableDemo/TableStickyHeaderDemo'; export * from './TableDemo/TableSortableDemo'; export * from './TableDemo/TableWidthModifiersDemo'; +export * from './TableDemo/TableComposableDemo'; export * from './TabsDemo/TabsDemo'; export * from './TabsDemo/TabsInsetDemo'; export * from './TabsDemo/TabsStringEventKeyDemo'; diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index 106c25f7f15..734781f0316 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -2709,7 +2709,7 @@ ComposableCompoundExpandableTable = () => { {isRowExpanded && ( - ); - } + }; } render() { const { columns, rows } = this.state; return ( -
- {column} -
{ - // only columns 1 - 3 are clickable - if (1 <= cellIndex && cellIndex <= 3) { - const current = `${rowIndex}_${cellIndex}`; - if (activeChild === current) { - // closing the expansion on the current toggle - setActiveChild(null); - } else { - // expanding - setActiveChild(current); - } + +
+ {column} +
{ + // only columns 1 - 3 are clickable + if (1 <= cellIndex && cellIndex <= 3) { + if (activeChild[rowIndex] === cellIndex) { + // closing the expansion on the current toggle + // set the corresponding item to null + const updatedActiveChild = activeChild.map((item, index) => + index === rowIndex ? null : item + ); + setActiveChild(updatedActiveChild); + } else { + // expanding + // set the corresponding cell index + const updatedActiveChild = activeChild.map((item, index) => + index === rowIndex ? cellIndex : item + ); + setActiveChild(updatedActiveChild); } - }} - > - {customRender(cell, cellIndex)} -
+ + {childData[`${rowIndex}_${activeChild[rowIndex]}`].component} + +
- {childData[activeChild].component} -
Empty State Table Example
- {column} -
Simple table using composable components
{column}
+ {cell} +
+ + {columns[0]} + + {columns[1]} + + More information on pull requests + + } + ariaLabel="More information on pull requests" + popoverProps={{ + headerContent: 'Pull requests', + footerContent: Click here for even more info + }} + > + {columns[2]} + + {columns[3]}{columns[4]}
+ {title} +
+ {column} +
+ {cell} +
+ {columns[0]}{columns[1]}{columns[2]}{columns[3]}{columns[4]}
+ {row.map((cell, cellIndex) => { + const shiftedIndex = cellIndex + 1; + return ( + + {cell} +
+ {columns[0]}{columns[1]}{columns[2]}{columns[3]}{columns[4]}
+ {row.map((cell, cellIndex) => { + const shiftedIndex = cellIndex + 1; + return ( + + {cell} +
{columns[0]}{columns[1]}{columns[2]}{columns[3]}{columns[4]} +
+ {cell} + +
{column}
+ {cell} +
+ {columns[0]}{columns[1]}{columns[2]}{columns[3]}{columns[4]}
handleExpansionToggle(pairIndex)} + /> + {pair.parent.map((cell: any, cellIndex: number) => ( + + {cell} +
} + {rowPairs[pairIndex].child.map((cell: any, cellIndex: number) => { + const shift = rowPairs[pairIndex].fullWidth ? 1 : 0; + const shiftedCellIndex = cellIndex + shift; + return ( + + {cell.title || cell} +
{column}
+ {cell} +
+ {column} +
{ + // only columns 1 - 3 are clickable + if (1 <= cellIndex && cellIndex <= 3) { + if (activeChild[rowIndex] === cellIndex) { + // closing the expansion on the current toggle + // set the corresponding item to null + const updatedActiveChild = activeChild.map((item, index) => + index === rowIndex ? null : item + ); + setActiveChild(updatedActiveChild); + } else { + // expanding + // set the corresponding cell index + const updatedActiveChild = activeChild.map((item, index) => + index === rowIndex ? cellIndex : item + ); + setActiveChild(updatedActiveChild); + } + } + }} + > + {customRender(cell, cellIndex)} +
+ {childData[childIndex].component} +
+ {column} +
+ {cell} +
{columns[0]}{columns[1]}{columns[2]}{columns[3]}{columns[4]}
+ {row[0]} + + {row[1]} + {row[2]}{row[3]} + {row[4]} +
{columns[0]}{columns[1]}
+ {cell} +
+ {childData[`${rowIndex}_${activeChild[rowIndex]}`].component} From 428310f055f47989b7bae3bfbb7e3b6354a13a21 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Fri, 23 Oct 2020 11:36:53 -0400 Subject: [PATCH 23/29] demo --- .../demos/TableDemo/TableComposableDemo.tsx | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx b/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx index bb189d502ca..e67d8c996bb 100644 --- a/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx +++ b/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx @@ -887,7 +887,9 @@ export const TableComposableDemo = () => { const rows = [ [ 'This text will truncate instead of wrap.', - http://thisisaverylongurlthatneedstobreakusethebreakwordmodifier.org, + + http://thisisaverylongurlthatneedstobreakusethebreakwordmodifier.org + ,

By default, thead cells will truncate and @@ -895,7 +897,9 @@ export const TableComposableDemo = () => { .pf-m-wrap on ath to change its behavior.

, "This cell's content will adjust itself to the parent th width. This modifier only affects table layouts.", - No wrap + + No wrap + ] ]; return ( @@ -934,7 +938,9 @@ export const TableComposableDemo = () => { const columns = ['Truncating text', 'Wrapping table header text. This th text will wrap instead of truncate.']; const rows = [ [ - This text will truncate instead of wrap., + + This text will truncate instead of wrap. + , This is a link that needs to be on one line and fully readable. From 4a70851fea712216577215810af4a38ee7388862 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Wed, 28 Oct 2020 13:01:29 -0400 Subject: [PATCH 24/29] info transform --- .../Table/HeaderCellInfoWrapper.tsx | 3 +- .../src/components/Table/base/header-row.tsx | 28 + .../src/components/Table/base/merge-props.ts | 8 + .../src/components/Table/examples/Table.md | 630 ++++++++++-------- .../Table/utils/decorators/info.tsx | 34 + .../components/Table/utils/transformers.tsx | 1 + 6 files changed, 415 insertions(+), 289 deletions(-) create mode 100644 packages/react-table/src/components/Table/utils/decorators/info.tsx diff --git a/packages/react-table/src/components/Table/HeaderCellInfoWrapper.tsx b/packages/react-table/src/components/Table/HeaderCellInfoWrapper.tsx index 72f06a4dc82..e478fdd0bce 100644 --- a/packages/react-table/src/components/Table/HeaderCellInfoWrapper.tsx +++ b/packages/react-table/src/components/Table/HeaderCellInfoWrapper.tsx @@ -3,6 +3,7 @@ import HelpIcon from '@patternfly/react-icons/dist/js/icons/help-icon'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; import { Button, Tooltip, Popover, TooltipProps, PopoverProps } from '@patternfly/react-core'; +import { TableText } from './TableText'; export interface ColumnHelpWrapperProps { /** @@ -45,7 +46,7 @@ export const HeaderCellInfoWrapper: React.FunctionComponent (
- {children} + {typeof children === 'string' ? {children} : children} {variant === 'tooltip' ? ( diff --git a/packages/react-table/src/components/Table/base/header-row.tsx b/packages/react-table/src/components/Table/base/header-row.tsx index f7cd078f310..477bf22bd43 100644 --- a/packages/react-table/src/components/Table/base/header-row.tsx +++ b/packages/react-table/src/components/Table/base/header-row.tsx @@ -45,6 +45,34 @@ export const HeaderRow: React.FunctionComponent = ({ let cellNode; const { tooltip, tooltipProps, popover, popoverProps, ariaLabel, className } = info; + // consumer can specify header cell tooltip/popover in two ways, but the transforms approach is preferred, + // especially for sorting tables that use `transforms: [sortable]` + // { + // title: 'Repositories', + // header: { + // info: { + // tooltip: 'More information about repositories', + // className: 'repositories-info-tip', + // tooltipProps: { + // isContentLeftAligned: true + // } + // } + // } + // } + // + // { + // title: 'Repositories', + // transforms: [ + // info({ + // tooltip: 'More information about repositories', + // className: 'repositories-info-tip', + // tooltipProps: { + // isContentLeftAligned: true + // } + // }), + // sortable + // ] + // }, if (tooltip) { cellNode = ( { if (key === 'children') { + if (a && b) { + // compose the two + return React.cloneElement(a, { + children: b + }); + } + // Children have to be merged in reverse order for Reactabular // logic to work. return { ...b, ...a }; diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index d14e9c00b29..18fe45933b4 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -2,38 +2,58 @@ id: Table cssPrefix: pf-c-table section: components -propComponents: ['Table', 'TableHeader', 'TableBody', 'EditableSelectInputCell', 'EditableTextCell', 'RowErrors', 'IHeaderRow', 'IRowData', 'IColumn', 'IExtraRowData', 'IExtraColumnData', 'ISortBy', 'IAction', 'ISeparator', 'ICell', 'IRowCell', 'IValidatorDef', 'IRow'] +propComponents: + [ + 'Table', + 'TableHeader', + 'TableBody', + 'EditableSelectInputCell', + 'EditableTextCell', + 'RowErrors', + 'IHeaderRow', + 'IRowData', + 'IColumn', + 'IExtraRowData', + 'IExtraColumnData', + 'ISortBy', + 'IAction', + 'ISeparator', + 'ICell', + 'IRowCell', + 'IValidatorDef', + 'IRow', + ] ouia: true --- Note: Table lives in its own package at [@patternfly/react-table](https://www.npmjs.com/package/@patternfly/react-table)! import { - Table, - TableHeader, - TableBody, - TableText, - sortable, - SortByDirection, - headerCol, - TableVariant, - expandable, - compoundExpand, - cellWidth, - textCenter, - wrappable, - truncate, - nowrap, - breakWord, - fitContent, - classNames, - Visibility, - getErrorTextByValidator, - cancelCellEdits, - validateCellEdits, - applyCellEdits, - EditableTextCell, - EditableSelectInputCell +Table, +TableHeader, +TableBody, +TableText, +sortable, +SortByDirection, +headerCol, +TableVariant, +expandable, +compoundExpand, +cellWidth, +textCenter, +wrappable, +truncate, +nowrap, +breakWord, +fitContent, +classNames, +Visibility, +getErrorTextByValidator, +cancelCellEdits, +validateCellEdits, +applyCellEdits, +EditableTextCell, +EditableSelectInputCell } from '@patternfly/react-table'; import { EmptyStateIcon } from '@patternfly/react-core'; @@ -51,15 +71,11 @@ import DemoSortableTable from './DemoSortableTable'; ## Examples ### Basic + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - textCenter, -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, textCenter, info } from '@patternfly/react-table'; import styles from '@patternfly/react-styles/css/components/Table/table'; class SimpleTable extends React.Component { @@ -67,31 +83,35 @@ class SimpleTable extends React.Component { super(props); this.state = { columns: [ - { + { title: 'Repositories', - header: { - info: { + transforms: [ + info({ tooltip: 'More information about repositories', className: 'repositories-info-tip', tooltipProps: { isContentLeftAligned: true } - } - } + }) + ] }, 'Branches', - { + { title: 'Pull requests', - header: { - info: { - popover:
More information on pull requests
, + transforms: [ + info({ + popover: ( +
+ More information on pull requests +
+ ), ariaLabel: 'More information on pull requests', popoverProps: { headerContent: 'Pull requests', footerContent: Click here for even more info } - } - } + }) + ] }, 'Workspaces', { @@ -135,7 +155,7 @@ class SimpleTable extends React.Component { return ( - +
); @@ -143,26 +163,17 @@ class SimpleTable extends React.Component { } ``` - ### Row click handler + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody } from '@patternfly/react-table'; class RowClickTable extends React.Component { constructor(props) { super(props); this.state = { - columns: [ - { title: 'Repositories' }, - 'Branches', - { title: 'Pull requests' }, - 'Workspaces' - ], + columns: [{ title: 'Repositories' }, 'Branches', { title: 'Pull requests' }, 'Workspaces'], rows: [ { cells: ['Repositories one', 'Branches one', 'Pull requests one', 'Workspaces one'] @@ -177,7 +188,7 @@ class RowClickTable extends React.Component { }; this.rowClickHandler = (event, row) => { console.log('handle row click', row); - } + }; } render() { @@ -194,13 +205,10 @@ class RowClickTable extends React.Component { ``` ### Custom row wrapper + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody } from '@patternfly/react-table'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; @@ -208,12 +216,7 @@ class RowWrapperTable extends React.Component { constructor(props) { super(props); this.state = { - columns: [ - { title: 'Repositories' }, - 'Branches', - { title: 'Pull requests' }, - 'Workspaces' - ], + columns: [{ title: 'Repositories' }, 'Branches', { title: 'Pull requests' }, 'Workspaces'], rows: [ { cells: ['Repositories one', 'Branches one', 'Pull requests one', 'Workspaces one'] @@ -226,24 +229,18 @@ class RowWrapperTable extends React.Component { } ] }; - this.customRowWrapper = ({ - trRef, - className, - rowProps, - row: { isExpanded, isHeightAuto }, - ...props - }) => { + this.customRowWrapper = ({ trRef, className, rowProps, row: { isExpanded, isHeightAuto }, ...props }) => { const isOddRow = (rowProps.rowIndex + 1) % 2; const customStyle = { borderLeft: '3px solid var(--pf-global--primary-color--100)' - } + }; return (
+
@@ -270,15 +272,10 @@ class RowWrapperTable extends React.Component { ``` ### Sortable + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - sortable, - SortByDirection -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, sortable, info, SortByDirection } from '@patternfly/react-table'; class SortableTable extends React.Component { constructor(props) { @@ -286,12 +283,31 @@ class SortableTable extends React.Component { this.state = { columns: [ { title: 'Repositories', transforms: [sortable] }, - 'Branches', + { + title: 'Branches', + transforms: [ + info({ + tooltip: 'More information about branches' + }), + sortable + ] + }, { title: 'Pull requests', transforms: [sortable] }, 'Workspaces', - 'Last Commit' + { + title: 'Last commit', + transforms: [ + info({ + tooltip: 'More information about commits' + }) + ] + } + ], + rows: [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] ], - rows: [['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five']], sortBy: {} }; this.onSort = this.onSort.bind(this); @@ -322,16 +338,10 @@ class SortableTable extends React.Component { ``` ### Sortable with wrapping headers + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - sortable, - SortByDirection, - wrappable, -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, sortable, SortByDirection, wrappable } from '@patternfly/react-table'; class SortableWrappingHeaders extends React.Component { constructor(props) { @@ -348,7 +358,7 @@ class SortableWrappingHeaders extends React.Component { }, { title: 'This is a really long table header that goes on for a long time 3.', - transforms: [sortable,wrappable] + transforms: [sortable, wrappable] }, { title: 'This is a really long table header that goes on for a long time 4.', @@ -357,9 +367,13 @@ class SortableWrappingHeaders extends React.Component { { title: 'This is a really long table header that goes on for a long time 5.', transforms: [sortable, wrappable] - }, + } + ], + rows: [ + ['one', 'two', 'a', 'four', 'five'], + ['a', 'two', 'k', 'four', 'five'], + ['p', 'two', 'b', 'four', 'five'] ], - rows: [['one', 'two', 'a', 'four', 'five'], ['a', 'two', 'k', 'four', 'five'], ['p', 'two', 'b', 'four', 'five']], sortBy: {} }; this.onSort = this.onSort.bind(this); @@ -380,7 +394,13 @@ class SortableWrappingHeaders extends React.Component { const { columns, rows, sortBy } = this.state; return ( - +
@@ -390,6 +410,7 @@ class SortableWrappingHeaders extends React.Component { ``` ### Selectable + ```js import React from 'react'; import { @@ -403,9 +424,7 @@ import { expandable, cellWidth } from '@patternfly/react-table'; -import { - Checkbox -} from '@patternfly/react-core'; +import { Checkbox } from '@patternfly/react-core'; class SelectableTable extends React.Component { constructor(props) { @@ -424,7 +443,7 @@ class SelectableTable extends React.Component { }, { cells: ['a', 'two', 'k', 'four', 'five'], - disableSelection: true, + disableSelection: true }, { cells: ['p', 'two', 'b', 'four', 'five'] @@ -471,13 +490,14 @@ class SelectableTable extends React.Component { aria-label="toggle select all checkbox" id="toggle-select-all" name="toggle-select-all" - /> + /> + rows={rows} + >
@@ -488,6 +508,7 @@ class SelectableTable extends React.Component { ``` ### Selectable radio input + ```js import React from 'react'; import { @@ -520,12 +541,12 @@ class SelectableTable extends React.Component { }, { cells: ['a', 'two', 'k', 'four', 'five'], - disableSelection: true, + disableSelection: true }, { cells: ['p', 'two', 'b', 'four', 'five'] } - ], + ] }; this.onSelect = this.onSelect.bind(this); this.toggleSelect = this.toggleSelect.bind(this); @@ -556,7 +577,8 @@ class SelectableTable extends React.Component { selectVariant={RowSelectVariant.radio} aria-label="Selectable Table" cells={columns} - rows={rows}> + rows={rows} + > @@ -566,14 +588,10 @@ class SelectableTable extends React.Component { ``` ### Simple actions + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - headerCol -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, headerCol } from '@patternfly/react-table'; class SimpleActionsTable extends React.Component { constructor(props) { @@ -630,14 +648,10 @@ class SimpleActionsTable extends React.Component { ``` ### Actions + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - headerCol -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, headerCol } from '@patternfly/react-table'; class ActionsTable extends React.Component { constructor(props) { @@ -653,7 +667,7 @@ class ActionsTable extends React.Component { rows: [ { cells: ['one', 'two', 'a', 'four', 'five'], - type: 'green', + type: 'green' }, { cells: ['a', 'two', 'k', 'four', 'five'], @@ -719,8 +733,8 @@ class ActionsTable extends React.Component { rows={rows} actionResolver={this.actionResolver} areActionsDisabled={this.areActionsDisabled} - dropdownPosition='right' - dropdownDirection='up' + dropdownPosition="right" + dropdownDirection="up" > @@ -731,14 +745,10 @@ class ActionsTable extends React.Component { ``` ### First cell as header + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - headerCol -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, headerCol } from '@patternfly/react-table'; class CellHeader extends React.Component { constructor(props) { @@ -769,14 +779,10 @@ class CellHeader extends React.Component { ``` ### Compact + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - TableVariant -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, TableVariant } from '@patternfly/react-table'; class CompactTable extends React.Component { constructor(props) { @@ -788,7 +794,11 @@ class CompactTable extends React.Component { { title: 'Pull requests', props: { className: 'pf-u-text-align-center' } }, { title: '' /* deliberately empty */, dataLabel: 'Label for mobile view' } ], - rows: [['one', 'two', 'three', 'four'], ['one', 'two', 'three', 'four'], ['one', 'two', 'three', 'four']] + rows: [ + ['one', 'two', 'three', 'four'], + ['one', 'two', 'three', 'four'], + ['one', 'two', 'three', 'four'] + ] }; } @@ -806,14 +816,10 @@ class CompactTable extends React.Component { ``` ### Compact borderless rows + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - TableVariant -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, TableVariant } from '@patternfly/react-table'; class CompactTableBorderlessRows extends React.Component { constructor(props) { @@ -825,7 +831,11 @@ class CompactTableBorderlessRows extends React.Component { { title: 'Pull requests', props: { className: 'pf-u-text-align-center' } }, { title: '' /* deliberately empty */, dataLabel: 'Label for mobile view' } ], - rows: [['one', 'two', 'three', 'four'], ['one', 'two', 'three', 'four'], ['one', 'two', 'three', 'four']] + rows: [ + ['one', 'two', 'three', 'four'], + ['one', 'two', 'three', 'four'], + ['one', 'two', 'three', 'four'] + ] }; } @@ -849,15 +859,10 @@ class CompactTableBorderlessRows extends React.Component { ``` ### Compact expandable + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - TableVariant, - expandable -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, TableVariant, expandable } from '@patternfly/react-table'; class CompactExpandableTable extends React.Component { constructor(props) { @@ -953,7 +958,7 @@ class CompactExpandableTable extends React.Component { colSpan: 2 } }, - "fullWidth, spans the empty column" + 'fullWidth, spans the empty column' ] } ] @@ -993,14 +998,10 @@ class CompactExpandableTable extends React.Component { ``` ### Expandable + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - expandable -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, expandable } from '@patternfly/react-table'; class ExpandableTable extends React.Component { constructor(props) { @@ -1080,14 +1081,10 @@ class ExpandableTable extends React.Component { ``` ### Compound expandable + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - compoundExpand -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, compoundExpand } from '@patternfly/react-table'; import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; @@ -1124,14 +1121,14 @@ class CompoundExpandableTable extends React.Component { { isOpen: true, cells: [ - { title: siemur/test-space, props: { component: 'th'} }, + { title: siemur/test-space, props: { component: 'th' } }, { title: ( 10 ), - props: { isOpen: true, ariaControls : 'compound-expansion-table-1' } + props: { isOpen: true, ariaControls: 'compound-expansion-table-1' } }, { title: ( @@ -1139,7 +1136,7 @@ class CompoundExpandableTable extends React.Component { 4
), - props: { isOpen: false, ariaControls : 'compound-expansion-table-2' } + props: { isOpen: false, ariaControls: 'compound-expansion-table-2' } }, { title: ( @@ -1147,7 +1144,7 @@ class CompoundExpandableTable extends React.Component { 4 ), - props: { isOpen: false, ariaControls : 'compound-expansion-table-3' } + props: { isOpen: false, ariaControls: 'compound-expansion-table-3' } }, '20 minutes', { title: Open in Github } @@ -1158,7 +1155,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 1, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1168,7 +1170,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 2, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1178,7 +1185,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 3, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1186,14 +1198,14 @@ class CompoundExpandableTable extends React.Component { { isOpen: false, cells: [ - { title: siemur/test-space, props: { component: 'th'} }, + { title: siemur/test-space, props: { component: 'th' } }, { title: ( 3 ), - props: { isOpen: false, ariaControls : 'compound-expansion-table-4' } + props: { isOpen: false, ariaControls: 'compound-expansion-table-4' } }, { title: ( @@ -1201,7 +1213,7 @@ class CompoundExpandableTable extends React.Component { 4 ), - props: { isOpen: false, ariaControls : 'compound-expansion-table-5' } + props: { isOpen: false, ariaControls: 'compound-expansion-table-5' } }, { title: ( @@ -1209,7 +1221,7 @@ class CompoundExpandableTable extends React.Component { 2 ), - props: { isOpen: false, ariaControls : 'compound-expansion-table-6' } + props: { isOpen: false, ariaControls: 'compound-expansion-table-6' } }, '20 minutes', { title: Open in Github } @@ -1220,7 +1232,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 1, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1230,7 +1247,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 2, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1240,7 +1262,12 @@ class CompoundExpandableTable extends React.Component { compoundParent: 3, cells: [ { - title: , + title: ( + + ), props: { colSpan: 6, className: 'pf-m-no-padding' } } ] @@ -1282,14 +1309,10 @@ class CompoundExpandableTable extends React.Component { ``` ### With width modifiers + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - cellWidth -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, cellWidth } from '@patternfly/react-table'; class WidthTable extends React.Component { constructor(props) { @@ -1323,16 +1346,10 @@ class WidthTable extends React.Component { ``` ### Breakpoint modifiers + ```js import React from 'react'; -import { - Table, - TableHeader, - TableBody, - sortable, - classNames, - Visibility -} from '@patternfly/react-table'; +import { Table, TableHeader, TableBody, sortable, classNames, Visibility } from '@patternfly/react-table'; class HiddenVisibleBreakpointTable extends React.Component { constructor(props) { @@ -1341,7 +1358,9 @@ class HiddenVisibleBreakpointTable extends React.Component { columns: [ { title: 'Repositories', - columnTransforms: [classNames(Visibility.hidden, Visibility.visibleOnMd, Visibility.hiddenOnLg, Visibility.visibleOn_2xl)] + columnTransforms: [ + classNames(Visibility.hidden, Visibility.visibleOnMd, Visibility.hiddenOnLg, Visibility.visibleOn_2xl) + ] }, 'Branches', { @@ -1377,6 +1396,7 @@ class HiddenVisibleBreakpointTable extends React.Component { ``` ### Controlling text + ```js import React from 'react'; import { @@ -1388,7 +1408,7 @@ import { nowrap, breakWord, cellWidth, - fitContent, + fitContent } from '@patternfly/react-table'; class ControllingText extends React.Component { @@ -1396,24 +1416,28 @@ class ControllingText extends React.Component { super(props); this.state = { columns: [ - {title: 'Truncate (width 20%)', transforms: [cellWidth(20)], cellTransforms: [truncate]}, - {title: 'Break word', cellTransforms: [breakWord]}, - {title: 'Wrapping table header text. This th text will wrap instead of truncate.', transforms: [wrappable]}, - {title: 'Fit content', transforms: [fitContent]}, - {title: '', cellTransforms: [nowrap]}, + { title: 'Truncate (width 20%)', transforms: [cellWidth(20)], cellTransforms: [truncate] }, + { title: 'Break word', cellTransforms: [breakWord] }, + { title: 'Wrapping table header text. This th text will wrap instead of truncate.', transforms: [wrappable] }, + { title: 'Fit content', transforms: [fitContent] }, + { title: '', cellTransforms: [nowrap] } ], rows: [ [ 'This text will truncate instead of wrap.', - {title: http://thisisaverylongurlthatneedstobreakusethebreakwordmodifier.org}, - {title:

By default, - thead cells will truncate and - tbody cells will wrap. Use - .pf-m-wrap on a - th to change its behavior.

+ { title: http://thisisaverylongurlthatneedstobreakusethebreakwordmodifier.org }, + { + title: ( +

+ By default, + thead cells will truncate and + tbody cells will wrap. Use + .pf-m-wrap on ath to change its behavior. +

+ ) }, - 'This cell\'s content will adjust itself to the parent th width. This modifier only affects table layouts.', - {title: No wrap} + "This cell's content will adjust itself to the parent th width. This modifier only affects table layouts.", + { title: No wrap } ] ] }; @@ -1433,6 +1457,7 @@ class ControllingText extends React.Component { ``` ### Modifiers with table text + ```js import React from 'react'; import { @@ -1445,7 +1470,7 @@ import { nowrap, breakWord, cellWidth, - fitContent, + fitContent } from '@patternfly/react-table'; class ModifiersWithTableText extends React.Component { @@ -1453,13 +1478,19 @@ class ModifiersWithTableText extends React.Component { super(props); this.state = { columns: [ - {title: 'Truncating text', transforms: [cellWidth(30)]}, - {title: 'Wrapping table header text. This th text will wrap instead of truncate.'}, + { title: 'Truncating text', transforms: [cellWidth(30)] }, + { title: 'Wrapping table header text. This th text will wrap instead of truncate.' } ], rows: [ [ - {title: This text will truncate instead of wrap.}, - {title: This is a link that needs to be on one line and fully readable.}, + { title: This text will truncate instead of wrap. }, + { + title: ( + + This is a link that needs to be on one line and fully readable. + + ) + } ] ] }; @@ -1479,37 +1510,47 @@ class ModifiersWithTableText extends React.Component { ``` ### Empty state + ```js import React from 'react'; import { Table, TableHeader, TableBody } from '@patternfly/react-table'; -import { Button, EmptyState, EmptyStateBody, EmptyStatePrimary, Bullseye, Title, EmptyStateIcon } from '@patternfly/react-core'; +import { + Button, + EmptyState, + EmptyStateBody, + EmptyStatePrimary, + Bullseye, + Title, + EmptyStateIcon +} from '@patternfly/react-core'; import SearchIcon from '@patternfly/react-icons/dist/js/icons/search-icon'; EmptyStateTable = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last Commit'] - const rows = [] + const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last Commit']; + const rows = []; return ( - - - -
- - - - No results found - - - No results match the filter criteria. Remove all filters or clear all filters to show results. - - - + + + +
+ + + + No results found + + + No results match the filter criteria. Remove all filters or clear all filters to show results. + + +
); -} +}; ``` ### Editable rows + ```js isBeta import React from 'react'; import { TextInput, SelectOption } from '@patternfly/react-core'; @@ -1531,16 +1572,13 @@ class EditableRowsTable extends React.Component { super(props); this.state = { - columns: [ - 'Text input col 1', - 'Disabled text input col 2', - 'Text input col 3', - 'Text input col 4' + columns: ['Text input col 1', 'Disabled text input col 2', 'Text input col 3', 'Text input col 4'], + actions: [ + { + title: 'Some action', + onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) + } ], - actions: [{ - title: 'Some action', - onClick: (event, rowId, rowData, extra) => console.log('clicked on Some action, on row: ', rowId) - }], rows: [ { rowEditBtnAriaLabel: idx => `Edit row ${idx}`, @@ -1562,7 +1600,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 1 cell 1 content" /> + inputAriaLabel="Row 1 cell 1 content" + /> ), props: { value: 'Row 1 cell 1 content', @@ -1578,7 +1617,8 @@ class EditableRowsTable extends React.Component { props={props} handleTextInputChange={this.handleTextInputChange} isDisabled - inputAriaLabel="Row 1 cell 2 content" /> + inputAriaLabel="Row 1 cell 2 content" + /> ), props: { value: 'Row 1 cell 2, disabled content', @@ -1593,7 +1633,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 1 cell 3 content" /> + inputAriaLabel="Row 1 cell 3 content" + /> ), props: { value: 'Row 1 cell 3 content', @@ -1617,7 +1658,9 @@ class EditableRowsTable extends React.Component { isPlaceholder={option.isPlaceholder} /> ))} - onToggle={(isOpen) => {this.onToggle(isOpen, rowIndex, cellIndex)}} + onToggle={isOpen => { + this.onToggle(isOpen, rowIndex, cellIndex); + }} selections={props.selected} /> ), @@ -1627,19 +1670,19 @@ class EditableRowsTable extends React.Component { isSelectOpen: props.isSelectOpen || false, selected: props.selected || ['Option 1'], options: [ - {value: 'Placeholder...', isPlaceholder: true}, - {value: 'Option 1'}, - {value: 'Option 2'}, - {value: 'Option 3'}, - {value: 'Option 4'}, - {value: 'Option 5'} + { value: 'Placeholder...', isPlaceholder: true }, + { value: 'Option 1' }, + { value: 'Option 2' }, + { value: 'Option 3' }, + { value: 'Option 4' }, + { value: 'Option 5' } ], editableSelectProps: { variant: 'single', - 'aria-label': "Row 1 cell 4 content", + 'aria-label': 'Row 1 cell 4 content' } } - }, + } ] }, { @@ -1652,7 +1695,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 2 cell 1 content" /> + inputAriaLabel="Row 2 cell 1 content" + /> ), props: { value: 'Row 2 cell 1 content', @@ -1668,7 +1712,8 @@ class EditableRowsTable extends React.Component { props={props} handleTextInputChange={this.handleTextInputChange} isDisabled - inputAriaLabel="Row 2 cell 2 content" /> + inputAriaLabel="Row 2 cell 2 content" + /> ), props: { value: 'Row 2 cell 2, disabled content', @@ -1683,7 +1728,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 2 cell 3 content" /> + inputAriaLabel="Row 2 cell 3 content" + /> ), props: { value: 'Row 2 cell 3 content', @@ -1702,17 +1748,19 @@ class EditableRowsTable extends React.Component { isOpen={props.isSelectOpen} options={props.options.map((option, index) => { return ( - - ) + + ); })} - onToggle={(isOpen) => {this.onToggle(isOpen, rowIndex, cellIndex)}} + onToggle={isOpen => { + this.onToggle(isOpen, rowIndex, cellIndex); + }} selections={props.selected} - /> + /> ), props: { value: ['Placeholder...'], @@ -1720,20 +1768,20 @@ class EditableRowsTable extends React.Component { isSelectOpen: props.isSelectOpen || false, selected: props.selected || [], options: [ - {value: 'Placeholder...', isPlaceholder: true}, - {value: 'Option 1'}, - {value: 'Option 2'}, - {value: 'Option 3'}, - {value: 'Option 4'}, - {value: 'Option 5'} + { value: 'Placeholder...', isPlaceholder: true }, + { value: 'Option 1' }, + { value: 'Option 2' }, + { value: 'Option 3' }, + { value: 'Option 4' }, + { value: 'Option 5' } ], editableSelectProps: { variant: 'typeaheadmulti', - 'aria-label': "Row 2 cell 4 content", + 'aria-label': 'Row 2 cell 4 content', toggleId: 'editable-toggle' } } - }, + } ] }, { @@ -1768,7 +1816,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 3 cell 1 content" /> + inputAriaLabel="Row 3 cell 1 content" + /> ), props: { value: 'Row 3 cell 1 content', @@ -1784,7 +1833,8 @@ class EditableRowsTable extends React.Component { props={props} handleTextInputChange={this.handleTextInputChange} isDisabled - inputAriaLabel="Row 3 cell 2 content" /> + inputAriaLabel="Row 3 cell 2 content" + /> ), props: { value: 'Row 3 cell 2, disabled content', @@ -1799,7 +1849,8 @@ class EditableRowsTable extends React.Component { cellIndex={cellIndex} props={props} handleTextInputChange={this.handleTextInputChange} - inputAriaLabel="Row 3 cell 3 content" /> + inputAriaLabel="Row 3 cell 3 content" + /> ), props: { value: 'Row 3 cell 3 content', @@ -1824,9 +1875,11 @@ class EditableRowsTable extends React.Component { isPlaceholder={option.isPlaceholder} /> ))} - onToggle={(isOpen) => {this.onToggle(isOpen, rowIndex, cellIndex)}} + onToggle={isOpen => { + this.onToggle(isOpen, rowIndex, cellIndex); + }} selections={props.selected} - /> + /> ), props: { value: ['Option 3'], @@ -1834,16 +1887,16 @@ class EditableRowsTable extends React.Component { isSelectOpen: props.isSelectOpen || false, selected: props.selected || ['Option 3'], options: [ - {value: 'Placeholder...', isPlaceholder: true}, - {value: 'Option 1'}, - {value: 'Option 2'}, - {value: 'Option 3'}, - {value: 'Option 4'}, - {value: 'Option 5'} + { value: 'Placeholder...', isPlaceholder: true }, + { value: 'Option 1' }, + { value: 'Option 2' }, + { value: 'Option 3' }, + { value: 'Option 4' }, + { value: 'Option 5' } ], editableSelectProps: { variant: 'checkbox', - 'aria-label': "Row 3 cell 4 content", + 'aria-label': 'Row 3 cell 4 content' } } } @@ -1917,7 +1970,7 @@ class EditableRowsTable extends React.Component { rows: newRows }); }; - + this.clearSelection = (rowIndex, cellIndex) => { const newRows = Array.from(this.state.rows); const newCellProps = newRows[rowIndex].cells[cellIndex].props; @@ -1947,9 +2000,10 @@ class EditableRowsTable extends React.Component { aria-label="Editable Rows Table" variant={TableVariant.compact} cells={columns} - rows={rows}> - - + rows={rows} + > + + ); } diff --git a/packages/react-table/src/components/Table/utils/decorators/info.tsx b/packages/react-table/src/components/Table/utils/decorators/info.tsx new file mode 100644 index 00000000000..b4c15740cd9 --- /dev/null +++ b/packages/react-table/src/components/Table/utils/decorators/info.tsx @@ -0,0 +1,34 @@ +import * as React from 'react'; +import { InfoType } from '../../base/types'; +import { HeaderCellInfoWrapper } from '../../HeaderCellInfoWrapper'; +import { IFormatterValueType, ITransform } from '../../Table'; +import styles from '@patternfly/react-styles/css/components/Table/table'; + +export const info = ({ tooltip, tooltipProps, popover, popoverProps, className, ariaLabel }: InfoType) => { + const infoObj: ITransform = (value: IFormatterValueType) => ({ + className: styles.modifiers.help, + children: tooltip ? ( + + {value} + + ) : ( + + {value} + + ) + }); + + return infoObj; +}; diff --git a/packages/react-table/src/components/Table/utils/transformers.tsx b/packages/react-table/src/components/Table/utils/transformers.tsx index 1e57f75a121..bd020534777 100644 --- a/packages/react-table/src/components/Table/utils/transformers.tsx +++ b/packages/react-table/src/components/Table/utils/transformers.tsx @@ -9,6 +9,7 @@ export { collapsible, expandedRow, expandable } from './decorators/collapsible'; export { compoundExpand } from './decorators/compoundExpand'; export { headerCol } from './decorators/headerCol'; export { classNames, Visibility } from './decorators/classNames'; +export { info } from './decorators/info'; import { IFormatterValueType, IExtra, ITransform } from '../Table'; From 512bb43732994ed619f4690f587de70c5693f4bd Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Wed, 4 Nov 2020 14:55:44 -0500 Subject: [PATCH 25/29] comments and API cleanup --- .../demos/TableDemo/TableComposableDemo.tsx | 260 +++++++------- .../src/components/Table/Table.tsx | 1 - .../src/components/Table/examples/Table.md | 329 +++++++++--------- .../components/Table/utils/headerUtils.tsx | 12 +- .../TableComposable/TableComposable.tsx | 29 +- .../src/components/TableComposable/Td.tsx | 178 +++++----- .../src/components/TableComposable/Th.tsx | 95 ++--- 7 files changed, 458 insertions(+), 446 deletions(-) diff --git a/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx b/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx index e67d8c996bb..cd84ea609b9 100644 --- a/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx +++ b/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx @@ -253,12 +253,17 @@ export const TableComposableDemo = () => { - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} @@ -266,16 +271,17 @@ export const TableComposableDemo = () => { {row.map((cell, cellIndex) => { const shiftedIndex = cellIndex + 1; return ( - + {cell} ); @@ -302,12 +308,12 @@ export const TableComposableDemo = () => { - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} @@ -315,17 +321,18 @@ export const TableComposableDemo = () => { {row.map((cell, cellIndex) => { const shiftedIndex = cellIndex + 1; return ( - + {cell} ); @@ -388,28 +395,28 @@ export const TableComposableDemo = () => { - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + {rows.map((row, rowIndex) => ( {row.map((cell, cellIndex) => ( - + {cell} ))} ))} @@ -498,37 +505,14 @@ export const TableComposableDemo = () => { }, { parent: ['parent 5', '2', 'b', 'four', 'five'], - child: [ - { - title: "spans 'Repositories' and 'Branches'", - props: { - colSpan: 2 - } - }, - { - title: "spans 'Pull requests' and 'Workspaces', and 'Last commit'", - props: { - colSpan: 3 - } - } - ] + child: ["spans 'Repositories' and 'Branches'", "spans 'Pull requests' and 'Workspaces', and 'Last commit'"] }, { parent: ['parent 6', '2', 'b', 'four', 'five'], child: [ - { - title: "fullWidth, spans the collapsible column and 'Repositories'", - props: { - colSpan: 2 - } - }, - { - title: "fullWidth, spans 'Branches' and 'Pull requests' and 'Workspaces'", - props: { - colSpan: 3 - } - }, - "fullWidth, spans 'Last commit'" + "fullWidth, spans the collapsible column and 'Repositories'", + "fullWidth, spans 'Branches' and 'Pull requests'", + "fullWidth, spans 'Workspaces' and 'Last commit'" ], fullWidth: true } @@ -543,10 +527,10 @@ export const TableComposableDemo = () => { const id = event.currentTarget.id; setVariant(id === 'default' ? null : id); }; - const handleExpansionToggle = (rowIndex: number) => { + const handleExpansionToggle = (event: any, pairIndex: number) => { setExpanded({ ...expanded, - [rowIndex]: !expanded[rowIndex] + [pairIndex]: !expanded[pairIndex] }); }; let rowIndex = -1; @@ -569,12 +553,12 @@ export const TableComposableDemo = () => { - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} {rowPairs.map((pair, pairIndex) => { @@ -583,18 +567,18 @@ export const TableComposableDemo = () => { handleExpansionToggle(pairIndex)} + expand={ + pair.child + ? { + rowIndex, + isExpanded: expanded[pairIndex], + onToggle: event => handleExpansionToggle(event, pairIndex) + } + : null + } /> {pair.parent.map((cell: any, cellIndex: number) => ( - + {cell} ))} @@ -605,24 +589,39 @@ export const TableComposableDemo = () => { } const childRow = pair.child ? ( - {!rowPairs[pairIndex].fullWidth && } + {!rowPairs[pairIndex].fullWidth && } {rowPairs[pairIndex].child.map((cell: any, cellIndex: number) => { + const numChildCells = rowPairs[pairIndex].child.length; const shift = rowPairs[pairIndex].fullWidth ? 1 : 0; const shiftedCellIndex = cellIndex + shift; + // some examples of how you could customize colSpan based on your needs + const getColSpan = () => { + // we have 6 columns (1 expandable column + 5 regular columns) + // for the rowPairs where we've specificed `fullWidth`, add +1 to account for the expandable column + let colSpan = 1; + if (numChildCells === 1) { + // single child cell: take up full width + colSpan = numColumns + shift; + } else if (numChildCells === 2) { + // 2 children + // child 1: 2 colspan + // child 2: 3 or 4 colspan depending on fullWidth + colSpan = cellIndex === 0 ? 2 : 3 + shift; + } else if (numChildCells === 3) { + // 3 children + // child 1: 2 colspam + // child 2: 2 colspan + // child 3: 1 or 2 colspan depending on fullWidth + colSpan = cellIndex === 2 ? 1 + shift : 2; + } + return colSpan; + }; return ( {cell.title || cell} @@ -774,56 +773,61 @@ export const TableComposableDemo = () => { {columns.map((column, columnIndex) => ( - - {column} - + {column} ))} {rows.map((row, rowIndex) => { const isRowExpanded = activeChild[rowIndex] !== null; - const childIndex: string = `${rowIndex}_${activeChild[rowIndex]}`; return ( - {row.map((cell, cellIndex) => ( - { - // only columns 1 - 3 are clickable - if (1 <= cellIndex && cellIndex <= 3) { - if (activeChild[rowIndex] === cellIndex) { - // closing the expansion on the current toggle - // set the corresponding item to null - const updatedActiveChild = activeChild.map((item, index) => - index === rowIndex ? null : item - ); - setActiveChild(updatedActiveChild); - } else { - // expanding - // set the corresponding cell index - const updatedActiveChild = activeChild.map((item, index) => - index === rowIndex ? cellIndex : item - ); - setActiveChild(updatedActiveChild); + {row.map((cell, cellIndex) => { + // for this example, only columns 1 - 3 are clickable + const compoundExpandParams = + 1 <= cellIndex && cellIndex <= 3 + ? { + compoundExpand: { + isExpanded: isCompoundExpanded(rowIndex, cellIndex), + onToggle: () => { + if (activeChild[rowIndex] === cellIndex) { + // closing the expansion on the current toggle + // set the corresponding item to null + const updatedActiveChild = activeChild.map((item, index) => + index === rowIndex ? null : item + ); + setActiveChild(updatedActiveChild); + } else { + // expanding + // set the corresponding cell index + const updatedActiveChild = activeChild.map((item, index) => + index === rowIndex ? cellIndex : item + ); + setActiveChild(updatedActiveChild); + } + } + } } - } - }} - > - {customRender(cell, cellIndex)} - - ))} + : {}; + return ( + + {customRender(cell, cellIndex)} + + ); + })} {isRowExpanded && ( - - {childData[childIndex].component} + + + {childData[`${rowIndex}_${activeChild[rowIndex]}`].component} + )} diff --git a/packages/react-table/src/components/Table/Table.tsx b/packages/react-table/src/components/Table/Table.tsx index 7a9c3f55e2c..c5a2b1e69a1 100644 --- a/packages/react-table/src/components/Table/Table.tsx +++ b/packages/react-table/src/components/Table/Table.tsx @@ -420,7 +420,6 @@ export class Table extends React.Component { } else if (onCollapse || onExpand) { return 'compactExpandable'; } - return 'compact'; } return variant; }; diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index fd9839b0255..6f847c6f9f5 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -1903,14 +1903,13 @@ ComposableTableBasic = () => { This example demonstrates customizing rows, adding tooltip and popover information to header items, and some other misc. props. -- You can wrap the header cell contents in a `HeaderCellInfoWrapper` component to give it a tooltip or popover - If you add the `noWrap` prop to `Thead`, it won't wrap it if there is no space - You can add the `textCenter` prop to `Th` or `Td` to center the contents - You can pass `onClick`, `className`, `style` and more to `Tr` ```js isBeta import React from 'react'; -import { TableComposable, Thead, Tbody, Tr, Th, Td, HeaderCellInfoWrapper } from '@patternfly/react-table'; +import { TableComposable, Thead, Tbody, Tr, Th, Td } from '@patternfly/react-table'; ComposableTableMisc = () => { const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; @@ -1926,35 +1925,33 @@ ComposableTableMisc = () => { - - - {columns[0]} - + } + }} + > + {columns[0]} {columns[1]} - - More information on pull requests - } - ariaLabel="More information on pull requests" - popoverProps={{ + ), + ariaLabel: 'More information on pull requests', + popoverProps: { headerContent: 'Pull requests', footerContent: Click here for even more info - }} - > - {columns[2]} - + } + }} + > + {columns[2]} {columns[3]} {columns[4]} @@ -1989,7 +1986,6 @@ ComposableTableMisc = () => { return ( { ### Composable: Sortable & wrapping headers -This example demonstrates making columns sortable, and wrapping header text. For sorting it is also important to pass the `columnIndex` to the `Th`. +This example demonstrates making columns sortable, and wrapping header text. ```js isBeta import React from 'react'; @@ -2064,14 +2060,26 @@ ComposableTableSortable = () => { const sortParams = columnIndex === 0 || columnIndex === 2 ? { - activeSortIndex, - activeSortDirection, - onSort, - columnIndex + sort: { + sortBy: { + index: activeSortIndex, + direction: activeSortDirection + }, + onSort, + columnIndex + } + } + : {}; + const infoParams = + columnIndex === 2 + ? { + info: { + tooltip: 'More information' + } } : {}; return ( - + {column} ); @@ -2097,7 +2105,7 @@ ComposableTableSortable = () => { ### Composable: Selectable This example demonstrates row selection. The selection column is just another column, but with selection specific props added. We add it as the first header cell and also as the first body cell for each row. -Be sure to also add `columnIndex` to `Th` and `columnIndex` as well as `rowIndex` to `Td`. +Be sure to also add `rowIndex` to `Td`. ```js isBeta import React from 'react'; @@ -2138,12 +2146,17 @@ ComposableTableSelectable = () => { - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} @@ -2151,16 +2164,17 @@ ComposableTableSelectable = () => { {row.map((cell, cellIndex) => { const shiftedIndex = cellIndex + 1; return ( - + {cell} ); @@ -2175,7 +2189,7 @@ ComposableTableSelectable = () => { ### Composable: Selectable radio input -Similarly to the selectable example above, the radio buttons use the first column. The first header cell is empty, and each body row's first cell has radio button props. Just as with selectable, be sure to also add `columnIndex` to `Th` and `columnIndex` as well as `rowIndex` to `Td`. +Similarly to the selectable example above, the radio buttons use the first column. The first header cell is empty, and each body row's first cell has radio button props. Just as with selectable, be sure to also add `rowIndex` to `Td`. ```js isBeta import React from 'react'; @@ -2196,12 +2210,12 @@ ComposableTableSelectableRadio = () => { - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} @@ -2209,17 +2223,18 @@ ComposableTableSelectableRadio = () => { {row.map((cell, cellIndex) => { const shiftedIndex = cellIndex + 1; return ( - + {cell} ); @@ -2286,28 +2301,28 @@ ComposableTableActions = () => { - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} - + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} + {rows.map((row, rowIndex) => ( {row.map((cell, cellIndex) => ( - + {cell} ))} ))} @@ -2419,37 +2434,14 @@ ComposableTableExpandable = () => { }, { parent: ['parent 5', '2', 'b', 'four', 'five'], - child: [ - { - title: "spans 'Repositories' and 'Branches'", - props: { - colSpan: 2 - } - }, - { - title: "spans 'Pull requests' and 'Workspaces', and 'Last commit'", - props: { - colSpan: 3 - } - } - ] + child: ["spans 'Repositories' and 'Branches'", "spans 'Pull requests' and 'Workspaces', and 'Last commit'"] }, { parent: ['parent 6', '2', 'b', 'four', 'five'], child: [ - { - title: "fullWidth, spans the collapsible column and 'Repositories'", - props: { - colSpan: 2 - } - }, - { - title: "fullWidth, spans 'Branches' and 'Pull requests' and 'Workspaces'", - props: { - colSpan: 3 - } - }, - "fullWidth, spans 'Last commit'" + "fullWidth, spans the collapsible column and 'Repositories'", + "fullWidth, spans 'Branches' and 'Pull requests'", + "fullWidth, spans 'Workspaces' and 'Last commit'" ], fullWidth: true } @@ -2457,17 +2449,17 @@ ComposableTableExpandable = () => { const numColumns = columns.length; // Init all to true const [expanded, setExpanded] = React.useState( - Object.fromEntries(Object.entries(rowPairs).map(([k, v]) => [k, true])) + Object.fromEntries(Object.entries(rowPairs).map(([k, v]) => [k, Boolean(v.child)])) ); const [variant, setVariant] = React.useState(null); const handleItemClick = (isSelected, event) => { const id = event.currentTarget.id; setVariant(id === 'default' ? null : id); }; - const handleExpansionToggle = rowIndex => { + const handleExpansionToggle = (event, pairIndex) => { setExpanded({ ...expanded, - [rowIndex]: !expanded[rowIndex] + [pairIndex]: !expanded[pairIndex] }); }; let rowIndex = -1; @@ -2490,12 +2482,12 @@ ComposableTableExpandable = () => { - - {columns[0]} - {columns[1]} - {columns[2]} - {columns[3]} - {columns[4]} + + {columns[0]} + {columns[1]} + {columns[2]} + {columns[3]} + {columns[4]} {rowPairs.map((pair, pairIndex) => { @@ -2504,18 +2496,18 @@ ComposableTableExpandable = () => { handleExpansionToggle(pairIndex)} + expand={ + pair.child + ? { + rowIndex, + isExpanded: expanded[pairIndex], + onToggle: event => handleExpansionToggle(event, pairIndex) + } + : null + } /> {pair.parent.map((cell, cellIndex) => ( - + {cell} ))} @@ -2526,24 +2518,39 @@ ComposableTableExpandable = () => { } const childRow = pair.child ? ( - {!rowPairs[pairIndex].fullWidth && } + {!rowPairs[pairIndex].fullWidth && } {rowPairs[pairIndex].child.map((cell, cellIndex) => { + const numChildCells = rowPairs[pairIndex].child.length; const shift = rowPairs[pairIndex].fullWidth ? 1 : 0; const shiftedCellIndex = cellIndex + shift; + // some examples of how you could customize colSpan based on your needs + const getColSpan = () => { + // we have 6 columns (1 expandable column + 5 regular columns) + // for the rowPairs where we've specificed `fullWidth`, add +1 to account for the expandable column + let colSpan = 1; + if (numChildCells === 1) { + // single child cell: take up full width + colSpan = numColumns + shift; + } else if (numChildCells === 2) { + // 2 children + // child 1: 2 colspan + // child 2: 3 or 4 colspan depending on fullWidth + colSpan = cellIndex === 0 ? 2 : 3 + shift; + } else if (numChildCells === 3) { + // 3 children + // child 1: 2 colspam + // child 2: 2 colspan + // child 3: 1 or 2 colspan depending on fullWidth + colSpan = cellIndex === 2 ? 1 + shift : 2; + } + return colSpan; + }; return ( {cell.title || cell} @@ -2680,9 +2687,7 @@ ComposableCompoundExpandableTable = () => { {columns.map((column, columnIndex) => ( - - {column} - + {column} ))} @@ -2692,42 +2697,48 @@ ComposableCompoundExpandableTable = () => { - {row.map((cell, cellIndex) => ( - { - // only columns 1 - 3 are clickable - if (1 <= cellIndex && cellIndex <= 3) { - if (activeChild[rowIndex] === cellIndex) { - // closing the expansion on the current toggle - // set the corresponding item to null - const updatedActiveChild = activeChild.map((item, index) => - index === rowIndex ? null : item - ); - setActiveChild(updatedActiveChild); - } else { - // expanding - // set the corresponding cell index - const updatedActiveChild = activeChild.map((item, index) => - index === rowIndex ? cellIndex : item - ); - setActiveChild(updatedActiveChild); + {row.map((cell, cellIndex) => { + // for this example, only columns 1 - 3 are clickable + const compoundExpandParams = + 1 <= cellIndex && cellIndex <= 3 + ? { + compoundExpand: { + isExpanded: isCompoundExpanded(rowIndex, cellIndex), + onToggle: () => { + if (activeChild[rowIndex] === cellIndex) { + // closing the expansion on the current toggle + // set the corresponding item to null + const updatedActiveChild = activeChild.map((item, index) => + index === rowIndex ? null : item + ); + setActiveChild(updatedActiveChild); + } else { + // expanding + // set the corresponding cell index + const updatedActiveChild = activeChild.map((item, index) => + index === rowIndex ? cellIndex : item + ); + setActiveChild(updatedActiveChild); + } + } + } } - } - }} - > - {customRender(cell, cellIndex)} - - ))} + : {}; + return ( + + {customRender(cell, cellIndex)} + + ); + })} {isRowExpanded && ( - + {childData[`${rowIndex}_${activeChild[rowIndex]}`].component} diff --git a/packages/react-table/src/components/Table/utils/headerUtils.tsx b/packages/react-table/src/components/Table/utils/headerUtils.tsx index eac1ffb7fc4..7ad85e6bc3a 100644 --- a/packages/react-table/src/components/Table/utils/headerUtils.tsx +++ b/packages/react-table/src/components/Table/utils/headerUtils.tsx @@ -30,17 +30,7 @@ import { * @returns {*} header, label, transforms: Array, formatters: Array. */ const generateHeader = ( - { - transforms: origTransforms, - formatters: origFormatters, - columnTransforms, - header - }: { - transforms?: ICell['transforms']; - formatters?: ICell['formatters']; - columnTransforms?: ICell['columnTransforms']; - header?: ICell; - }, + { transforms: origTransforms, formatters: origFormatters, columnTransforms, header }: ICell, title?: string | ICell ) => ({ ...header, diff --git a/packages/react-table/src/components/TableComposable/TableComposable.tsx b/packages/react-table/src/components/TableComposable/TableComposable.tsx index 989e7447bb1..4c55b97b24a 100644 --- a/packages/react-table/src/components/TableComposable/TableComposable.tsx +++ b/packages/react-table/src/components/TableComposable/TableComposable.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import styles from '@patternfly/react-styles/css/components/Table/table'; import stylesGrid from '@patternfly/react-styles/css/components/Table/table-grid'; import { css } from '@patternfly/react-styles'; -import { TableGridBreakpoint, TableVariant, toCamel, OnSelect } from '../Table'; +import { TableGridBreakpoint, TableVariant, toCamel } from '../Table'; import { IVisibility } from '../Table/utils/decorators/classNames'; import { useOUIAProps, OUIAProps } from '@patternfly/react-core'; @@ -17,12 +17,6 @@ export interface BaseCellProps { textCenter?: boolean; /** Style modifier to apply */ modifier?: 'breakWord' | 'fitContent' | 'nowrap' | 'truncate' | 'wrap'; - /** The column index */ - columnIndex?: number; - /** Transforms the cell into a selectable cell - Click callback on select */ - onSelect?: OnSelect; - /** Whether the cell is selected */ - isSelected?: boolean; /** Width percentage modifier */ width?: 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 | 50 | 60 | 70 | 80 | 90 | 100; /** Visibility breakpoint modifiers */ @@ -69,14 +63,10 @@ const TableComposableBase: React.FunctionComponent = ({ ...props }: TableComposableProps) => { const ouiaProps = useOUIAProps('Table', ouiaId, ouiaSafe); - const variantModifiers = () => { - if (variant === 'compact') { - return styles.modifiers.compact; - } else if (variant === 'compactBorderless') { - return css(styles.modifiers.compact, styles.modifiers.noBorderRows); - } else if (variant === 'compactExpandable') { - return css(styles.modifiers.compact, styles.modifiers.expandable); - } + const variantModifiers = { + compact: styles.modifiers.compact, + compactBorderless: css(styles.modifiers.compact, styles.modifiers.noBorderRows), + compactExpandable: css(styles.modifiers.compact, styles.modifiers.expandable) }; return ( = ({ className={css( className, styles.table, - gridBreakPoint && - stylesGrid.modifiers[ - toCamel(gridBreakPoint).replace(/-?2xl/, '_2xl') as 'grid' | 'gridMd' | 'gridLg' | 'gridXl' | 'grid_2xl' - ], - variantModifiers(), + stylesGrid.modifiers?.[ + toCamel(gridBreakPoint || '').replace(/-?2xl/, '_2xl') as 'grid' | 'gridMd' | 'gridLg' | 'gridXl' | 'grid_2xl' + ], + variantModifiers?.[variant] || '', isStickyHeader && styles.modifiers.stickyHeader )} ref={innerRef} diff --git a/packages/react-table/src/components/TableComposable/Td.tsx b/packages/react-table/src/components/TableComposable/Td.tsx index 3200c399935..dc220ecdd33 100644 --- a/packages/react-table/src/components/TableComposable/Td.tsx +++ b/packages/react-table/src/components/TableComposable/Td.tsx @@ -5,21 +5,17 @@ import { OnSelect, selectable, cellActions, - /* eslint-disable @typescript-eslint/no-unused-vars */ - IAreActionsDisabled, - IActionsResolver, - expandedRow, - /* eslint-enable @typescript-eslint/no-unused-vars */ IActions, IFormatterValueType, collapsible, - IRowData, - IExtraData, compoundExpand, + OnExpand, cellWidth, Visibility, - classNames + classNames, + OnCollapse } from '../Table'; +import { mergeProps } from '../Table/base'; import { IVisibility } from '../Table/utils/decorators/classNames'; import { DropdownDirection, @@ -28,37 +24,52 @@ import { import { BaseCellProps } from './TableComposable'; export interface TdProps extends BaseCellProps, Omit, 'onSelect' | 'width'> { - /** The selectable variant */ - selectVariant?: 'checkbox' | 'radio'; /** * The column header the cell corresponds to. * This attribute replaces table header in mobile viewport. It is rendered by ::before pseudo element. */ dataLabel?: string; - /** The row index */ - rowIndex?: number; - /** Whether to disable the selection */ - disableSelection?: boolean; - /** Cell actions */ - actions?: IActions; - /** Whether to disable the actions */ - actionsDisabled?: boolean; - /** Actions dropdown position */ - actionsDropdownPosition?: DropdownPosition; - /** Actions dropdown direction */ - actionsDropdownDirection?: DropdownDirection; + /** Renders a checkbox or radio select */ + select?: { + /** The selectable variant */ + variant?: 'checkbox' | 'radio'; + /** Callback on select */ + onSelect?: OnSelect; + /** Whether the cell is selected */ + isSelected: boolean; + /** Whether to disable the selection */ + disable?: boolean; + /** The row index */ + rowIndex: number; + }; + /** Turns the cell into an actions cell */ + actions?: { + /** Cell actions */ + items: IActions; + /** Whether to disable the actions */ + disable?: boolean; + /** Actions dropdown position */ + dropdownPosition?: DropdownPosition; + /** Actions dropdown direction */ + dropdownDirection?: DropdownDirection; + }; /** Turns the cell into an expansion toggle and determines if the corresponding expansion row is open */ - isExpanded?: boolean; - /** Turns the cell into a compound expansion toggle and determines if the corresponding expansion row is open */ - isCompoundExpanded?: boolean; - /** On toggling the expansion */ - onCollapse?: ( - event: React.MouseEvent, - rowIndex: number, - isOpen: boolean, - rowData: IRowData, - extraData: IExtraData - ) => undefined; + expand?: { + isExpanded: boolean; + /** The row index */ + rowIndex: number; + /** The column index */ + columnIndex?: number; + /** On toggling the expansion */ + onToggle?: OnCollapse; + }; + /** Turns the cell into a compound expansion toggle */ + compoundExpand?: { + /** determines if the corresponding expansion row is open */ + isExpanded: boolean; + /** Callback on toggling of the expansion */ + onToggle?: OnExpand; + }; /** True to remove padding */ noPadding?: boolean; } @@ -68,88 +79,76 @@ const TdBase: React.FunctionComponent = ({ className, component = 'td', dataLabel, - columnIndex, - rowIndex, textCenter = false, modifier, - onSelect, - isSelected = false, - selectVariant = 'checkbox', - disableSelection = false, - actions, - actionsDisabled, - actionsDropdownPosition, - actionsDropdownDirection, - isExpanded = null, - isCompoundExpanded = null, - onCollapse, + select = null, + actions = null, + expand = null, + compoundExpand: compoundExpandProp = null, noPadding, width, visibility, innerRef, ...props }: TdProps) => { - const selectParams = onSelect + const selectParams = select ? selectable(children as IFormatterValueType, { - columnIndex, - rowIndex, + rowIndex: select.rowIndex, rowData: { - selected: isSelected, - disableSelection + selected: select.isSelected, + disableSelection: select?.disable }, column: { extraParams: { - onSelect: onSelect as OnSelect, - selectVariant: selectVariant as 'checkbox' | 'radio' + onSelect: select?.onSelect, + selectVariant: select.variant || 'checkbox' } } }) : null; - const actionParamsFunc = actions ? cellActions(actions, null, null) : null; + const actionParamsFunc = actions ? cellActions(actions.items, null, null) : null; const actionParams = actionParamsFunc ? actionParamsFunc(null, { - rowIndex, - columnIndex, rowData: { - disableActions: actionsDisabled + disableActions: actions?.disable }, column: { extraParams: { - dropdownPosition: actionsDropdownPosition, - dropdownDirection: actionsDropdownDirection + dropdownPosition: actions?.dropdownPosition, + dropdownDirection: actions?.dropdownDirection } } }) : null; const expandableParams = - isExpanded !== null + expand !== null ? collapsible(null, { - rowIndex, - columnIndex, + rowIndex: expand.rowIndex, + columnIndex: expand?.columnIndex, rowData: { - isOpen: isExpanded + isOpen: expand.isExpanded }, column: { extraParams: { - onCollapse + onCollapse: expand?.onToggle } } }) : null; const compoundParams = - isCompoundExpanded !== null + compoundExpandProp !== null ? compoundExpand( { title: children, props: { - isOpen: isCompoundExpanded + isOpen: compoundExpandProp.isExpanded } } as IFormatterValueType, { - columnIndex, - rowIndex, column: { - extraParams: {} + extraParams: { + onExpand: compoundExpandProp?.onToggle + } } } ) @@ -158,34 +157,39 @@ const TdBase: React.FunctionComponent = ({ const visibilityParams = visibility ? classNames(...visibility.map((vis: keyof IVisibility) => Visibility[vis]))() : null; - const Component: any = (selectParams && selectParams.component) || component; - const transformedChildren = - (selectParams && selectParams.children) || - (actionParams && actionParams.children) || - (expandableParams && expandableParams.children) || - (compoundParams && compoundParams.children) || - children; + const merged = mergeProps( + selectParams, + actionParams, + expandableParams, + compoundParams, + widthParams, + visibilityParams + ); + const { + // selectable adds this but we don't want it + // eslint-disable-next-line @typescript-eslint/no-unused-vars + isVisible = null, + children: mergedChildren = null, + className: mergedClassName = '', + component: MergedComponent = component, + ...mergedProps + } = merged; return ( - - {transformedChildren} - + {mergedChildren || children} + ); }; diff --git a/packages/react-table/src/components/TableComposable/Th.tsx b/packages/react-table/src/components/TableComposable/Th.tsx index 5357155dd9c..afe3fe3a268 100644 --- a/packages/react-table/src/components/TableComposable/Th.tsx +++ b/packages/react-table/src/components/TableComposable/Th.tsx @@ -2,7 +2,6 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; import { - SortByDirection, sortable, selectable, OnSelect, @@ -12,8 +11,10 @@ import { OnSort, cellWidth, Visibility, - classNames + classNames, + info } from '../Table'; +import { InfoType, mergeProps } from '../Table/base'; import { IVisibility } from '../Table/utils/decorators/classNames'; import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; import { BaseCellProps } from './TableComposable'; @@ -21,14 +22,21 @@ import { BaseCellProps } from './TableComposable'; export interface ThProps extends BaseCellProps, Omit, 'onSelect' | 'width'> { - /** The selectable variant */ - selectVariant?: 'checkbox'; - /** Wraps the content in a button and adds a sort icon - Click callback on the sortable cell */ - onSort?: Function; - /** Sort direction of the currently sorted column */ - activeSortDirection?: SortByDirection | 'asc' | 'desc' | 'none'; - /** Index of the currently sorted column */ - activeSortIndex?: number; + /** Renders a checkbox select so that all row checkboxes can be selected/deselected */ + select?: { + /** Callback on select */ + onSelect?: OnSelect; + /** Whether the cell is selected */ + isSelected: boolean; + }; + sort?: { + /** Wraps the content in a button and adds a sort icon - Click callback on the sortable cell */ + onSort?: OnSort; + /** Provide the currently active column's index and direction */ + sortBy: ISortBy; + /** The column index */ + columnIndex: number; + }; /** * Tooltip to show on the header cell * Note: If the header cell is truncated and has simple string content, it will already attempt to display the header text @@ -38,6 +46,8 @@ export interface ThProps tooltip?: React.ReactNode; /** Callback on mouse enter */ onMouseEnter?: (event: any) => void; + /** Adds tooltip/popover info button */ + info?: InfoType; } const ThBase: React.FunctionComponent = ({ @@ -45,19 +55,15 @@ const ThBase: React.FunctionComponent = ({ className, component = 'th', textCenter = false, - onSort, - activeSortDirection = 'none', - activeSortIndex, - columnIndex, + sort = null, modifier, - onSelect, - selectVariant = 'checkbox', - isSelected, + select = null, tooltip = '', onMouseEnter: onMouseEnterProp = () => {}, width, visibility, innerRef, + info: infoProps, ...props }: ThProps) => { const [showTooltip, setShowTooltip] = React.useState(false); @@ -69,28 +75,24 @@ const ThBase: React.FunctionComponent = ({ } onMouseEnterProp(event); }; - const sortParams = onSort + const sortParams = sort ? sortable(children as IFormatterValueType, { - columnIndex, + columnIndex: sort.columnIndex, column: { extraParams: { - sortBy: { - index: activeSortIndex, - direction: activeSortDirection - } as ISortBy, - onSort: onSort as OnSort + sortBy: sort.sortBy, + onSort: sort?.onSort } } as IColumn }) : null; - const selectParams = onSelect + const selectParams = select ? selectable(children as IFormatterValueType, { - columnIndex, column: { extraParams: { - onSelect: onSelect as OnSelect, - selectVariant: selectVariant as 'checkbox' | 'radio', - allRowsSelected: isSelected + onSelect: select?.onSelect, + selectVariant: 'checkbox', + allRowsSelected: select.isSelected } } }) @@ -99,29 +101,42 @@ const ThBase: React.FunctionComponent = ({ const visibilityParams = visibility ? classNames(...visibility.map((vis: keyof IVisibility) => Visibility[vis]))() : null; - const Component: any = (sortParams && sortParams.component) || (selectParams && selectParams.component) || component; - const transformedChildren = - (sortParams && sortParams.children) || (selectParams && selectParams.children) || children; + let transformedChildren = sortParams?.children || selectParams?.children || children; + // info can wrap other transformedChildren + let infoParams = null; + if (infoProps) { + infoParams = info(infoProps)(transformedChildren); + transformedChildren = infoParams.children; + } + const merged = mergeProps(sortParams, selectParams, widthParams, visibilityParams, infoParams); + const { + // ignore the merged children since we transform them ourselves so we can wrap it with info + // eslint-disable-next-line @typescript-eslint/no-unused-vars + children: mergedChildren = null, + // selectable adds this but we don't want it + // eslint-disable-next-line @typescript-eslint/no-unused-vars + isVisible = null, + className: mergedClassName = '', + component: MergedComponent = component, + ...mergedProps + } = merged; + const cell = ( - {transformedChildren} - + ); const canDefault = tooltip === '' ? typeof children === 'string' : true; From 2a25bd2902eddc43c50e1e419495dae9a6452c19 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Wed, 4 Nov 2020 15:09:00 -0500 Subject: [PATCH 26/29] snapshots --- .../Table/__snapshots__/Table.test.tsx.snap | 110 ------------------ .../VirtualizedTable.test.tsx.snap | 29 ----- 2 files changed, 139 deletions(-) diff --git a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap index 49db422b0fa..52e6da5153f 100644 --- a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap +++ b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap @@ -1185,7 +1185,6 @@ exports[`Actions table 1`] = ` tooltip="" > {columns.map((column, columnIndex) => ( @@ -522,12 +533,11 @@ export const TableComposableDemo = () => { const [expanded, setExpanded] = React.useState( Object.fromEntries(Object.entries(rowPairs).map(([k]) => [k, true])) ); - const [variant, setVariant] = React.useState(null); - const handleItemClick = (isSelected: boolean, event: React.MouseEvent) => { - const id = event.currentTarget.id; - setVariant(id === 'default' ? null : id); + const [compact, setCompact] = React.useState(true); + const toggleCompact = (checked: boolean) => { + setCompact(checked); }; - const handleExpansionToggle = (event: any, pairIndex: number) => { + const handleExpansionToggle: OnCollapse = (event: any, pairIndex: number) => { setExpanded({ ...expanded, [pairIndex]: !expanded[pairIndex] @@ -536,21 +546,15 @@ export const TableComposableDemo = () => { let rowIndex = -1; return ( - - - - - + + } diff --git a/packages/react-table/src/components/Table/TableTypes.ts b/packages/react-table/src/components/Table/TableTypes.ts index 3f3dd6394b3..294946eb016 100644 --- a/packages/react-table/src/components/Table/TableTypes.ts +++ b/packages/react-table/src/components/Table/TableTypes.ts @@ -16,9 +16,7 @@ export enum TableGridBreakpoint { } export enum TableVariant { - compact = 'compact', - compactBorderless = 'compactBorderless', - compactExpandable = 'compactExpandable' + compact = 'compact' } export type RowEditType = 'save' | 'cancel' | 'edit'; @@ -31,29 +29,29 @@ export type OnSort = ( event: React.MouseEvent, columnIndex: number, sortByDirection: SortByDirection, - extraData: IExtraColumnData + extraData?: IExtraColumnData ) => void; export type OnCollapse = ( event: React.MouseEvent, - rowIndex: number, - isOpen: boolean, - rowData: IRowData, - extraData: IExtraData + rowIndex?: number, + isOpen?: boolean, + rowData?: IRowData, + extraData?: IExtraData ) => void; export type OnExpand = ( event: React.MouseEvent, - rowIndex: number, - colIndex: number, - isOpen: boolean, - rowData: IRowData, - extraData: IExtraData + rowIndex?: number, + colIndex?: number, + isOpen?: boolean, + rowData?: IRowData, + extraData?: IExtraData ) => void; export type OnSelect = ( event: React.FormEvent, - isSelected: boolean, - rowIndex: number, - rowData: IRowData, - extraData: IExtraData + isSelected?: boolean, + rowIndex?: number, + rowData?: IRowData, + extraData?: IExtraData ) => void; export type OnRowEdit = ( event: React.MouseEvent, diff --git a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap index 52e6da5153f..da114277ba9 100644 --- a/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap +++ b/packages/react-table/src/components/Table/__snapshots__/Table.test.tsx.snap @@ -125,6 +125,7 @@ exports[`Actions table 1`] = ` > - - - - - - - - - - - - - - - - - - -
Date: Wed, 4 Nov 2020 15:55:26 -0500 Subject: [PATCH 27/29] fix umd build circular deps issues --- .../src/components/Table/ActionsColumn.tsx | 2 +- .../react-table/src/components/Table/Body.tsx | 3 +- .../src/components/Table/BodyWrapper.tsx | 2 +- .../src/components/Table/EditColumn.tsx | 2 +- .../src/components/Table/Header.tsx | 3 +- .../src/components/Table/Table.tsx | 244 ++---------------- .../src/components/Table/TableContext.ts | 2 +- .../src/components/Table/TableTypes.ts | 225 ++++++++++++++++ .../src/components/Table/examples/Table.md | 13 - .../react-table/src/components/Table/index.ts | 1 + .../Table/utils/decorators/cellActions.tsx | 2 +- .../Table/utils/decorators/cellWidth.ts | 2 +- .../Table/utils/decorators/classNames.ts | 2 +- .../Table/utils/decorators/collapsible.tsx | 2 +- .../Table/utils/decorators/compoundExpand.tsx | 2 +- .../Table/utils/decorators/editable.tsx | 2 +- .../Table/utils/decorators/headerCol.tsx | 2 +- .../Table/utils/decorators/info.tsx | 2 +- .../Table/utils/decorators/selectable.tsx | 2 +- .../Table/utils/decorators/sortable.tsx | 2 +- .../Table/utils/decorators/textCenter.ts | 2 +- .../Table/utils/decorators/wrappable.tsx | 2 +- .../src/components/Table/utils/formatters.tsx | 2 +- .../Table/utils/headerUtils.test.tsx | 2 +- .../components/Table/utils/headerUtils.tsx | 2 +- .../Table/utils/transformers.test.tsx | 2 +- .../components/Table/utils/transformers.tsx | 2 +- .../src/components/Table/utils/utils.test.tsx | 2 +- .../src/components/Table/utils/utils.tsx | 2 +- .../TableComposable/TableComposable.tsx | 3 +- .../src/components/TableComposable/Td.tsx | 25 +- .../src/components/TableComposable/Th.tsx | 22 +- 32 files changed, 289 insertions(+), 296 deletions(-) create mode 100644 packages/react-table/src/components/Table/TableTypes.ts diff --git a/packages/react-table/src/components/Table/ActionsColumn.tsx b/packages/react-table/src/components/Table/ActionsColumn.tsx index 4228660eec3..aa3bcafe1bb 100644 --- a/packages/react-table/src/components/Table/ActionsColumn.tsx +++ b/packages/react-table/src/components/Table/ActionsColumn.tsx @@ -8,7 +8,7 @@ import { DropdownPosition } from '@patternfly/react-core/dist/js/components/Dropdown/dropdownConstants'; -import { IAction, IExtraData, IRowData } from './Table'; +import { IAction, IExtraData, IRowData } from './TableTypes'; export interface ActionsColumnProps { children?: React.ReactNode; diff --git a/packages/react-table/src/components/Table/Body.tsx b/packages/react-table/src/components/Table/Body.tsx index f9b37c288a0..e84843f2a66 100644 --- a/packages/react-table/src/components/Table/Body.tsx +++ b/packages/react-table/src/components/Table/Body.tsx @@ -1,7 +1,8 @@ import * as React from 'react'; import { Body as BaseBody } from './base'; import { RowType, RowKeyType } from './base/types'; -import { TableContext, IRow, IRowCell, IExtraRowData } from './Table'; +import { IRow, IRowCell, IExtraRowData } from './TableTypes'; +import { TableContext } from './TableContext'; import { isRowExpanded } from './utils'; export interface IComputedData { diff --git a/packages/react-table/src/components/Table/BodyWrapper.tsx b/packages/react-table/src/components/Table/BodyWrapper.tsx index 2664f31c518..75333565558 100644 --- a/packages/react-table/src/components/Table/BodyWrapper.tsx +++ b/packages/react-table/src/components/Table/BodyWrapper.tsx @@ -1,5 +1,5 @@ import * as React from 'react'; -import { IRow, IRowData, IExtraData, IHeaderRow } from './Table'; +import { IRow, IRowData, IExtraData, IHeaderRow } from './TableTypes'; import { mapOpenedRows } from './utils/headerUtils'; import { Tbody } from '../TableComposable/Tbody'; diff --git a/packages/react-table/src/components/Table/EditColumn.tsx b/packages/react-table/src/components/Table/EditColumn.tsx index fe6d58ff6bd..49c8edcdad9 100644 --- a/packages/react-table/src/components/Table/EditColumn.tsx +++ b/packages/react-table/src/components/Table/EditColumn.tsx @@ -3,7 +3,7 @@ import { Button } from '@patternfly/react-core/dist/js/components/Button'; import PencilAltIcon from '@patternfly/react-icons/dist/js/icons/pencil-alt-icon'; import CheckIcon from '@patternfly/react-icons/dist/js/icons/check-icon'; import TimesIcon from '@patternfly/react-icons/dist/js/icons/times-icon'; -import { OnRowEdit } from './Table'; +import { OnRowEdit } from './TableTypes'; import inlineStyles from '@patternfly/react-styles/css/components/InlineEdit/inline-edit'; import { css } from '@patternfly/react-styles'; diff --git a/packages/react-table/src/components/Table/Header.tsx b/packages/react-table/src/components/Table/Header.tsx index 2cdbd1e03bf..90751ca148b 100644 --- a/packages/react-table/src/components/Table/Header.tsx +++ b/packages/react-table/src/components/Table/Header.tsx @@ -1,6 +1,7 @@ import * as React from 'react'; import { Header } from './base'; -import { IHeaderRow, TableContext } from './Table'; +import { IHeaderRow } from './TableTypes'; +import { TableContext } from './TableContext'; import { ColumnsType } from './base/types'; interface ContextHeaderProps { diff --git a/packages/react-table/src/components/Table/Table.tsx b/packages/react-table/src/components/Table/Table.tsx index c5a2b1e69a1..91eb11238d6 100644 --- a/packages/react-table/src/components/Table/Table.tsx +++ b/packages/react-table/src/components/Table/Table.tsx @@ -4,7 +4,6 @@ import { DropdownDirection, DropdownPosition } from '@patternfly/react-core/dist/js/components/Dropdown/dropdownConstants'; -import { DropdownItemProps } from '@patternfly/react-core/dist/js/components/Dropdown/DropdownItem'; import inlineStyles from '@patternfly/react-styles/css/components/InlineEdit/inline-edit'; import { css } from '@patternfly/react-styles'; import { Provider } from './base'; @@ -13,227 +12,24 @@ import { HeaderCell } from './HeaderCell'; import { RowWrapper, RowWrapperProps } from './RowWrapper'; import { BodyWrapper } from './BodyWrapper'; import { calculateColumns } from './utils/headerUtils'; -import { formatterValueType, ColumnType, RowType, RowKeyType, ColumnsType, HeaderType } from './base'; import { RowSelectVariant } from './SelectColumn'; -import { SortByDirection } from './SortColumn'; - -export enum TableGridBreakpoint { - none = '', - grid = 'grid', - gridMd = 'grid-md', - gridLg = 'grid-lg', - gridXl = 'grid-xl', - grid2xl = 'grid-2xl' -} - -export enum TableVariant { - compact = 'compact', - compactBorderless = 'compactBorderless', - compactExpandable = 'compactExpandable' -} - -export type RowEditType = 'save' | 'cancel' | 'edit'; - -export interface RowErrors { - [name: string]: string[]; -} - -export type OnSort = ( - event: React.MouseEvent, - columnIndex: number, - sortByDirection: SortByDirection, - extraData: IExtraColumnData -) => void; -export type OnCollapse = ( - event: React.MouseEvent, - rowIndex: number, - isOpen: boolean, - rowData: IRowData, - extraData: IExtraData -) => void; -export type OnExpand = ( - event: React.MouseEvent, - rowIndex: number, - colIndex: number, - isOpen: boolean, - rowData: IRowData, - extraData: IExtraData -) => void; -export type OnSelect = ( - event: React.FormEvent, - isSelected: boolean, - rowIndex: number, - rowData: IRowData, - extraData: IExtraData -) => void; -export type OnRowEdit = ( - event: React.MouseEvent, - type: RowEditType, - isEditable?: boolean, - rowIndex?: number, - validationErrors?: RowErrors -) => void; - -// Todo: Update type with next breaking change release -// export type IHeaderRow = ColumnType; - -// eslint-disable-next-line @typescript-eslint/no-empty-interface -export interface IHeaderRow extends ColumnType {} - -export interface IRowData extends IRow { - disableActions?: boolean; -} - -export interface IColumn { - extraParams: { - sortBy?: ISortBy; - onSort?: OnSort; - onCollapse?: OnCollapse; - onExpand?: OnExpand; - onSelect?: OnSelect; - selectVariant?: 'checkbox' | 'radio'; - onRowEdit?: OnRowEdit; - rowLabeledBy?: string; - expandId?: string; - contentId?: string; - dropdownPosition?: DropdownPosition; - dropdownDirection?: DropdownDirection; - allRowsSelected?: boolean; - }; -} - -export interface IExtraRowData { - rowIndex?: number; - rowKey?: RowKeyType; -} - -export interface IExtraColumnData { - columnIndex?: number; - column?: IColumn; - property?: string; -} - -export interface IExtraData extends IExtraColumnData, IExtraRowData {} - -export interface IExtra extends IExtraData { - rowData?: IRowData; -} - -export type IFormatterValueType = formatterValueType & { - title?: string | React.ReactNode; - props?: any; -}; - -export interface ISortBy { - index?: number; - direction?: 'asc' | 'desc'; -} - -export interface IAction extends Omit { - isSeparator?: boolean; - itemKey?: string; - title?: string | React.ReactNode; - onClick?: (event: React.MouseEvent, rowIndex: number, rowData: IRowData, extraData: IExtraData) => void; -} - -export interface ISeparator extends IAction { - isSeparator: boolean; -} - -export type IActions = (IAction | ISeparator)[]; -export type IActionsResolver = (rowData: IRowData, extraData: IExtraData) => (IAction | ISeparator)[]; -export type IAreActionsDisabled = (rowData: IRowData, extraData: IExtraData) => boolean; - -// to be removed in future, this interface is no longer accurate -export interface IDecorator extends React.HTMLProps { - isVisible: boolean; - children?: React.ReactNode; -} - -export interface decoratorReturnType { - className?: string; - 'aria-sort'?: string; - children?: React.ReactNode; - textCenter?: boolean; - component?: string; - isVisible?: boolean; - title?: string | React.ReactNode; - props?: any; - scope?: string; - parentId?: number; - colSpan?: number; - id?: React.ReactText; -} - -export type ITransform = (label?: IFormatterValueType, extra?: IExtra) => decoratorReturnType; - -export type IFormatter = (data?: IFormatterValueType, extra?: IExtra) => formatterValueType & decoratorReturnType; - -export interface ICell { - /* cell contents */ - title?: string | React.ReactNode; - /** transformations applied to the header cell */ - transforms?: ITransform[]; - /** transformations applied to the cells within the column's body */ - cellTransforms?: ITransform[]; - /** transformations applied to the whole column */ - columnTransforms?: ITransform[]; - /** formatters applied to the header cell */ - formatters?: IFormatter[]; - /** formatters applied to the cells within the column's body */ - cellFormatters?: IFormatter[]; - /** Additional header props, it contains the info prop as well which can be used to add tooltip/popover */ - header?: HeaderType; - props?: any; - data?: any; - cell?: any; - dataLabel?: string; -} - -export type RowCellContent = (value?: string, rowIndex?: number, cellIndex?: number, props?: any) => void; - -export interface IRowCell { - title?: string | React.ReactNode | RowCellContent; - props?: any; - formatters?: IFormatter[]; -} - -export interface IValidatorDef { - validator: (value: string) => boolean; - errorText: string; - name: string; -} - -export interface IRow extends RowType { - cells?: (React.ReactNode | IRowCell)[]; - isOpen?: boolean; - isEditable?: boolean; - isValid?: boolean; - /** An array of validation functions to run against every cell for a given row */ - rowEditValidationRules?: IValidatorDef[]; - /** Aria label for edit button in inline edit */ - rowEditBtnAriaLabel?: (idx: number) => string; - /** Aria label for save button in inline edit */ - rowSaveBtnAriaLabel?: (idx: number) => string; - /** Aria label for cancel button in inline edit */ - rowCancelBtnAriaLabel?: (idx: number) => string; - parent?: number; - compoundParent?: number; - props?: any; - fullWidth?: boolean; - noPadding?: boolean; - heightAuto?: boolean; - showSelect?: boolean; - isExpanded?: boolean; - isFirstVisible?: boolean; - isLastVisible?: boolean; - /** Whether the row checkbox/radio button is selected */ - selected?: boolean; - /** deprecated - Use disableSelection instead - Whether the row checkbox is disabled */ - disableCheckbox?: boolean; - /** Whether the row checkbox/radio button is disabled */ - disableSelection?: boolean; -} +import { TableContext } from './TableContext'; +import { + ISortBy, + OnCollapse, + OnExpand, + OnSelect, + OnRowEdit, + OnSort, + IActions, + IActionsResolver, + IAreActionsDisabled, + IRow, + ICell, + TableVariant, + TableGridBreakpoint, + IHeaderRow +} from './TableTypes'; export interface TableProps extends OUIAProps { /** Adds an accessible name for the Table */ @@ -302,12 +98,6 @@ export interface TableProps extends OUIAProps { isStickyHeader?: boolean; } -export const TableContext = React.createContext({ - headerData: null as ColumnsType, - headerRows: null as IHeaderRow[], - rows: [] as (IRow | string[])[] -}); - export class Table extends React.Component { static displayName = 'Table'; static hasWarnBeta = false; diff --git a/packages/react-table/src/components/Table/TableContext.ts b/packages/react-table/src/components/Table/TableContext.ts index 7296cfac94f..58486b6ce62 100644 --- a/packages/react-table/src/components/Table/TableContext.ts +++ b/packages/react-table/src/components/Table/TableContext.ts @@ -1,5 +1,5 @@ import * as React from 'react'; -import { IHeaderRow, IRow } from './Table'; +import { IHeaderRow, IRow } from './TableTypes'; import { ColumnsType } from './base'; export const TableContext = React.createContext({ diff --git a/packages/react-table/src/components/Table/TableTypes.ts b/packages/react-table/src/components/Table/TableTypes.ts new file mode 100644 index 00000000000..3f3dd6394b3 --- /dev/null +++ b/packages/react-table/src/components/Table/TableTypes.ts @@ -0,0 +1,225 @@ +import { DropdownItemProps } from '@patternfly/react-core/dist/js/components/Dropdown/DropdownItem'; +import { formatterValueType, ColumnType, RowType, RowKeyType, HeaderType } from './base'; +import { SortByDirection } from './SortColumn'; +import { + DropdownDirection, + DropdownPosition +} from '@patternfly/react-core/dist/js/components/Dropdown/dropdownConstants'; + +export enum TableGridBreakpoint { + none = '', + grid = 'grid', + gridMd = 'grid-md', + gridLg = 'grid-lg', + gridXl = 'grid-xl', + grid2xl = 'grid-2xl' +} + +export enum TableVariant { + compact = 'compact', + compactBorderless = 'compactBorderless', + compactExpandable = 'compactExpandable' +} + +export type RowEditType = 'save' | 'cancel' | 'edit'; + +export interface RowErrors { + [name: string]: string[]; +} + +export type OnSort = ( + event: React.MouseEvent, + columnIndex: number, + sortByDirection: SortByDirection, + extraData: IExtraColumnData +) => void; +export type OnCollapse = ( + event: React.MouseEvent, + rowIndex: number, + isOpen: boolean, + rowData: IRowData, + extraData: IExtraData +) => void; +export type OnExpand = ( + event: React.MouseEvent, + rowIndex: number, + colIndex: number, + isOpen: boolean, + rowData: IRowData, + extraData: IExtraData +) => void; +export type OnSelect = ( + event: React.FormEvent, + isSelected: boolean, + rowIndex: number, + rowData: IRowData, + extraData: IExtraData +) => void; +export type OnRowEdit = ( + event: React.MouseEvent, + type: RowEditType, + isEditable?: boolean, + rowIndex?: number, + validationErrors?: RowErrors +) => void; + +// Todo: Update type with next breaking change release +// export type IHeaderRow = ColumnType; + +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface IHeaderRow extends ColumnType {} + +export interface IRowData extends IRow { + disableActions?: boolean; +} + +export interface IColumn { + extraParams: { + sortBy?: ISortBy; + onSort?: OnSort; + onCollapse?: OnCollapse; + onExpand?: OnExpand; + onSelect?: OnSelect; + selectVariant?: 'checkbox' | 'radio'; + onRowEdit?: OnRowEdit; + rowLabeledBy?: string; + expandId?: string; + contentId?: string; + dropdownPosition?: DropdownPosition; + dropdownDirection?: DropdownDirection; + allRowsSelected?: boolean; + }; +} + +export interface IExtraRowData { + rowIndex?: number; + rowKey?: RowKeyType; +} + +export interface IExtraColumnData { + columnIndex?: number; + column?: IColumn; + property?: string; +} + +export interface IExtraData extends IExtraColumnData, IExtraRowData {} + +export interface IExtra extends IExtraData { + rowData?: IRowData; +} + +export type IFormatterValueType = formatterValueType & { + title?: string | React.ReactNode; + props?: any; +}; + +export interface ISortBy { + index?: number; + direction?: 'asc' | 'desc'; +} + +export interface IAction extends Omit { + isSeparator?: boolean; + itemKey?: string; + title?: string | React.ReactNode; + onClick?: (event: React.MouseEvent, rowIndex: number, rowData: IRowData, extraData: IExtraData) => void; +} + +export interface ISeparator extends IAction { + isSeparator: boolean; +} + +export type IActions = (IAction | ISeparator)[]; +export type IActionsResolver = (rowData: IRowData, extraData: IExtraData) => (IAction | ISeparator)[]; +export type IAreActionsDisabled = (rowData: IRowData, extraData: IExtraData) => boolean; + +// to be removed in future, this interface is no longer accurate +export interface IDecorator extends React.HTMLProps { + isVisible: boolean; + children?: React.ReactNode; +} + +export interface decoratorReturnType { + className?: string; + 'aria-sort'?: string; + children?: React.ReactNode; + textCenter?: boolean; + component?: string; + isVisible?: boolean; + title?: string | React.ReactNode; + props?: any; + scope?: string; + parentId?: number; + colSpan?: number; + id?: React.ReactText; +} + +export type ITransform = (label?: IFormatterValueType, extra?: IExtra) => decoratorReturnType; + +export type IFormatter = (data?: IFormatterValueType, extra?: IExtra) => formatterValueType & decoratorReturnType; + +export interface ICell { + /* cell contents */ + title?: string | React.ReactNode; + /** transformations applied to the header cell */ + transforms?: ITransform[]; + /** transformations applied to the cells within the column's body */ + cellTransforms?: ITransform[]; + /** transformations applied to the whole column */ + columnTransforms?: ITransform[]; + /** formatters applied to the header cell */ + formatters?: IFormatter[]; + /** formatters applied to the cells within the column's body */ + cellFormatters?: IFormatter[]; + /** Additional header props, it contains the info prop as well which can be used to add tooltip/popover */ + header?: HeaderType; + props?: any; + data?: any; + cell?: any; + dataLabel?: string; +} + +export type RowCellContent = (value?: string, rowIndex?: number, cellIndex?: number, props?: any) => void; + +export interface IRowCell { + title?: string | React.ReactNode | RowCellContent; + props?: any; + formatters?: IFormatter[]; +} + +export interface IValidatorDef { + validator: (value: string) => boolean; + errorText: string; + name: string; +} + +export interface IRow extends RowType { + cells?: (React.ReactNode | IRowCell)[]; + isOpen?: boolean; + isEditable?: boolean; + isValid?: boolean; + /** An array of validation functions to run against every cell for a given row */ + rowEditValidationRules?: IValidatorDef[]; + /** Aria label for edit button in inline edit */ + rowEditBtnAriaLabel?: (idx: number) => string; + /** Aria label for save button in inline edit */ + rowSaveBtnAriaLabel?: (idx: number) => string; + /** Aria label for cancel button in inline edit */ + rowCancelBtnAriaLabel?: (idx: number) => string; + parent?: number; + compoundParent?: number; + props?: any; + fullWidth?: boolean; + noPadding?: boolean; + heightAuto?: boolean; + showSelect?: boolean; + isExpanded?: boolean; + isFirstVisible?: boolean; + isLastVisible?: boolean; + /** Whether the row checkbox/radio button is selected */ + selected?: boolean; + /** deprecated - Use disableSelection instead - Whether the row checkbox is disabled */ + disableCheckbox?: boolean; + /** Whether the row checkbox/radio button is disabled */ + disableSelection?: boolean; +} diff --git a/packages/react-table/src/components/Table/examples/Table.md b/packages/react-table/src/components/Table/examples/Table.md index 6f847c6f9f5..bc45a2c1fa2 100644 --- a/packages/react-table/src/components/Table/examples/Table.md +++ b/packages/react-table/src/components/Table/examples/Table.md @@ -9,19 +9,6 @@ propComponents: 'TableBody', 'EditableSelectInputCell', 'EditableTextCell', - 'RowErrors', - 'IHeaderRow', - 'IRowData', - 'IColumn', - 'IExtraRowData', - 'IExtraColumnData', - 'ISortBy', - 'IAction', - 'ISeparator', - 'ICell', - 'IRowCell', - 'IValidatorDef', - 'IRow', 'TableComposable', 'Thead', 'Tbody', diff --git a/packages/react-table/src/components/Table/index.ts b/packages/react-table/src/components/Table/index.ts index b8842c472d6..38f3ad73b27 100644 --- a/packages/react-table/src/components/Table/index.ts +++ b/packages/react-table/src/components/Table/index.ts @@ -15,3 +15,4 @@ export * from './SelectColumn'; export * from './SortColumn'; export * from './TableText'; export * from './utils'; +export * from './TableTypes'; diff --git a/packages/react-table/src/components/Table/utils/decorators/cellActions.tsx b/packages/react-table/src/components/Table/utils/decorators/cellActions.tsx index b2d0b0cf2e7..86f8c1d6675 100644 --- a/packages/react-table/src/components/Table/utils/decorators/cellActions.tsx +++ b/packages/react-table/src/components/Table/utils/decorators/cellActions.tsx @@ -12,7 +12,7 @@ import { IFormatterValueType, IRowData, ITransform -} from '../../Table'; +} from '../../TableTypes'; const resolveOrDefault = ( resolver: IActionsResolver | IAreActionsDisabled, diff --git a/packages/react-table/src/components/Table/utils/decorators/cellWidth.ts b/packages/react-table/src/components/Table/utils/decorators/cellWidth.ts index ef368fb168a..99a7068cec7 100644 --- a/packages/react-table/src/components/Table/utils/decorators/cellWidth.ts +++ b/packages/react-table/src/components/Table/utils/decorators/cellWidth.ts @@ -1,6 +1,6 @@ import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -import { ITransform } from '../../Table'; +import { ITransform } from '../../TableTypes'; import { capitalize } from '../utils'; type WidthClass = diff --git a/packages/react-table/src/components/Table/utils/decorators/classNames.ts b/packages/react-table/src/components/Table/utils/decorators/classNames.ts index 367955dbf65..f6d3e9adefa 100644 --- a/packages/react-table/src/components/Table/utils/decorators/classNames.ts +++ b/packages/react-table/src/components/Table/utils/decorators/classNames.ts @@ -1,6 +1,6 @@ import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -import { ITransform } from '../../Table'; +import { ITransform } from '../../TableTypes'; const visibilityModifiers = [ 'hidden', diff --git a/packages/react-table/src/components/Table/utils/decorators/collapsible.tsx b/packages/react-table/src/components/Table/utils/decorators/collapsible.tsx index 3238b699c92..88bcd16c1bd 100644 --- a/packages/react-table/src/components/Table/utils/decorators/collapsible.tsx +++ b/packages/react-table/src/components/Table/utils/decorators/collapsible.tsx @@ -3,7 +3,7 @@ import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; import { CollapseColumn } from '../../CollapseColumn'; import { ExpandableRowContent } from '../../ExpandableRowContent'; -import { IExtra, IFormatterValueType, IFormatter, decoratorReturnType } from '../../Table'; +import { IExtra, IFormatterValueType, IFormatter, decoratorReturnType } from '../../TableTypes'; export const collapsible: IFormatter = ( value: IFormatterValueType, diff --git a/packages/react-table/src/components/Table/utils/decorators/compoundExpand.tsx b/packages/react-table/src/components/Table/utils/decorators/compoundExpand.tsx index e7a10139211..f518fd90142 100644 --- a/packages/react-table/src/components/Table/utils/decorators/compoundExpand.tsx +++ b/packages/react-table/src/components/Table/utils/decorators/compoundExpand.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -import { IExtra, IFormatterValueType, ITransform } from '../../Table'; +import { IExtra, IFormatterValueType, ITransform } from '../../TableTypes'; import { TableText } from '../../TableText'; export const compoundExpand: ITransform = ( diff --git a/packages/react-table/src/components/Table/utils/decorators/editable.tsx b/packages/react-table/src/components/Table/utils/decorators/editable.tsx index 94fa988e707..7a42a04ec5b 100644 --- a/packages/react-table/src/components/Table/utils/decorators/editable.tsx +++ b/packages/react-table/src/components/Table/utils/decorators/editable.tsx @@ -1,5 +1,5 @@ import * as React from 'react'; -import { IExtra, IFormatterValueType, ITransform, IRowCell, OnRowEdit, RowErrors, RowEditType } from '../../Table'; +import { IExtra, IFormatterValueType, ITransform, IRowCell, OnRowEdit, RowErrors, RowEditType } from '../../TableTypes'; import { EditColumn } from '../../EditColumn'; import tableStyles from '@patternfly/react-styles/css/components/Table/table'; diff --git a/packages/react-table/src/components/Table/utils/decorators/headerCol.tsx b/packages/react-table/src/components/Table/utils/decorators/headerCol.tsx index 5b061f9fbc8..a5c7b1732d3 100644 --- a/packages/react-table/src/components/Table/utils/decorators/headerCol.tsx +++ b/packages/react-table/src/components/Table/utils/decorators/headerCol.tsx @@ -1,5 +1,5 @@ import * as React from 'react'; -import { IExtra, IFormatterValueType, ITransform } from '../../Table'; +import { IExtra, IFormatterValueType, ITransform } from '../../TableTypes'; export const headerCol = (id = 'simple-node') => { const headerColObj: ITransform = (value: IFormatterValueType, { rowIndex }: IExtra = {}) => { diff --git a/packages/react-table/src/components/Table/utils/decorators/info.tsx b/packages/react-table/src/components/Table/utils/decorators/info.tsx index b4c15740cd9..fddaa87bf29 100644 --- a/packages/react-table/src/components/Table/utils/decorators/info.tsx +++ b/packages/react-table/src/components/Table/utils/decorators/info.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { InfoType } from '../../base/types'; import { HeaderCellInfoWrapper } from '../../HeaderCellInfoWrapper'; -import { IFormatterValueType, ITransform } from '../../Table'; +import { IFormatterValueType, ITransform } from '../../TableTypes'; import styles from '@patternfly/react-styles/css/components/Table/table'; export const info = ({ tooltip, tooltipProps, popover, popoverProps, className, ariaLabel }: InfoType) => { diff --git a/packages/react-table/src/components/Table/utils/decorators/selectable.tsx b/packages/react-table/src/components/Table/utils/decorators/selectable.tsx index 2094420ceb3..2baa3224b0c 100644 --- a/packages/react-table/src/components/Table/utils/decorators/selectable.tsx +++ b/packages/react-table/src/components/Table/utils/decorators/selectable.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -import { IExtra, IFormatterValueType, ITransform } from '../../Table'; +import { IExtra, IFormatterValueType, ITransform } from '../../TableTypes'; import { SelectColumn, RowSelectVariant } from '../../SelectColumn'; import checkStyles from '@patternfly/react-styles/css/components/Check/check'; diff --git a/packages/react-table/src/components/Table/utils/decorators/sortable.tsx b/packages/react-table/src/components/Table/utils/decorators/sortable.tsx index 8add015e582..186f779b100 100644 --- a/packages/react-table/src/components/Table/utils/decorators/sortable.tsx +++ b/packages/react-table/src/components/Table/utils/decorators/sortable.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -import { IExtra, IFormatterValueType, ITransform } from '../../Table'; +import { IExtra, IFormatterValueType, ITransform } from '../../TableTypes'; import { SortColumn, SortByDirection } from '../../SortColumn'; export const sortable: ITransform = (label: IFormatterValueType, { columnIndex, column, property }: IExtra) => { diff --git a/packages/react-table/src/components/Table/utils/decorators/textCenter.ts b/packages/react-table/src/components/Table/utils/decorators/textCenter.ts index f194fcfd6d0..dfaec1607a1 100644 --- a/packages/react-table/src/components/Table/utils/decorators/textCenter.ts +++ b/packages/react-table/src/components/Table/utils/decorators/textCenter.ts @@ -1,2 +1,2 @@ -import { ITransform } from '../../Table'; +import { ITransform } from '../../TableTypes'; export const textCenter: ITransform = () => ({ textCenter: true }); diff --git a/packages/react-table/src/components/Table/utils/decorators/wrappable.tsx b/packages/react-table/src/components/Table/utils/decorators/wrappable.tsx index dd15cd4c088..d58c6a5da12 100644 --- a/packages/react-table/src/components/Table/utils/decorators/wrappable.tsx +++ b/packages/react-table/src/components/Table/utils/decorators/wrappable.tsx @@ -1,5 +1,5 @@ import styles from '@patternfly/react-styles/css/components/Table/table'; -import { ITransform } from '../../Table'; +import { ITransform } from '../../TableTypes'; export const breakWord: ITransform = () => ({ className: styles.modifiers.breakWord diff --git a/packages/react-table/src/components/Table/utils/formatters.tsx b/packages/react-table/src/components/Table/utils/formatters.tsx index ff1ac33b4f3..a43478478b8 100644 --- a/packages/react-table/src/components/Table/utils/formatters.tsx +++ b/packages/react-table/src/components/Table/utils/formatters.tsx @@ -1,4 +1,4 @@ -import { IFormatterValueType, IFormatter } from '../Table'; +import { IFormatterValueType, IFormatter } from '../TableTypes'; const defaultTitle: IFormatter = (data: IFormatterValueType) => data && data.hasOwnProperty('title') ? data.title : data; diff --git a/packages/react-table/src/components/Table/utils/headerUtils.test.tsx b/packages/react-table/src/components/Table/utils/headerUtils.test.tsx index 7b53364487f..57d5acbb5d0 100644 --- a/packages/react-table/src/components/Table/utils/headerUtils.test.tsx +++ b/packages/react-table/src/components/Table/utils/headerUtils.test.tsx @@ -1,5 +1,5 @@ import { calculateColumns, mapOpenedRows } from './headerUtils'; -import { ICell, IRow } from '../Table'; +import { ICell, IRow } from '../TableTypes'; describe('headerUtils', () => { describe('calculateColumns', () => { diff --git a/packages/react-table/src/components/Table/utils/headerUtils.tsx b/packages/react-table/src/components/Table/utils/headerUtils.tsx index 7ad85e6bc3a..743ce578004 100644 --- a/packages/react-table/src/components/Table/utils/headerUtils.tsx +++ b/packages/react-table/src/components/Table/utils/headerUtils.tsx @@ -20,7 +20,7 @@ import { OnSelect, OnCollapse, OnRowEdit -} from '../Table'; +} from '../TableTypes'; /** * Generate header with transforms and formatters from custom header object. diff --git a/packages/react-table/src/components/Table/utils/transformers.test.tsx b/packages/react-table/src/components/Table/utils/transformers.test.tsx index 2051f275dba..7d66a8423bb 100644 --- a/packages/react-table/src/components/Table/utils/transformers.test.tsx +++ b/packages/react-table/src/components/Table/utils/transformers.test.tsx @@ -26,7 +26,7 @@ import { IExtraData, IRowData, ISeparator -} from '../Table'; +} from '../TableTypes'; const testCellActions = ({ actions, diff --git a/packages/react-table/src/components/Table/utils/transformers.tsx b/packages/react-table/src/components/Table/utils/transformers.tsx index bd020534777..2a6ab5a8068 100644 --- a/packages/react-table/src/components/Table/utils/transformers.tsx +++ b/packages/react-table/src/components/Table/utils/transformers.tsx @@ -11,7 +11,7 @@ export { headerCol } from './decorators/headerCol'; export { classNames, Visibility } from './decorators/classNames'; export { info } from './decorators/info'; -import { IFormatterValueType, IExtra, ITransform } from '../Table'; +import { IFormatterValueType, IExtra, ITransform } from '../TableTypes'; const emptyTD: ITransform = () => ({ scope: '', diff --git a/packages/react-table/src/components/Table/utils/utils.test.tsx b/packages/react-table/src/components/Table/utils/utils.test.tsx index 561f4368cc7..21bcf96de6e 100644 --- a/packages/react-table/src/components/Table/utils/utils.test.tsx +++ b/packages/react-table/src/components/Table/utils/utils.test.tsx @@ -1,6 +1,6 @@ import { isRowExpanded } from './utils'; import { buildExpandableRows } from '../../../test-helpers/data-helpers'; -import { IRow } from '../Table'; +import { IRow } from '../TableTypes'; const assertExpanded = (rows: IRow[], expandedRowIndexes: number[]) => { expandedRowIndexes.forEach((expandedRowIndex: number) => { diff --git a/packages/react-table/src/components/Table/utils/utils.tsx b/packages/react-table/src/components/Table/utils/utils.tsx index dcdf01e3fa1..05cff012879 100644 --- a/packages/react-table/src/components/Table/utils/utils.tsx +++ b/packages/react-table/src/components/Table/utils/utils.tsx @@ -1,4 +1,4 @@ -import { IRow, IRowCell, IValidatorDef, RowEditType, RowErrors } from '../Table'; +import { IRow, IRowCell, IValidatorDef, RowEditType, RowErrors } from '../TableTypes'; const hasCompoundParentsExpanded = (parentId: number, compoundParent: number, rows: IRow[]) => { // max rows.length parents diff --git a/packages/react-table/src/components/TableComposable/TableComposable.tsx b/packages/react-table/src/components/TableComposable/TableComposable.tsx index 4c55b97b24a..b7d3dfb31bf 100644 --- a/packages/react-table/src/components/TableComposable/TableComposable.tsx +++ b/packages/react-table/src/components/TableComposable/TableComposable.tsx @@ -2,9 +2,10 @@ import * as React from 'react'; import styles from '@patternfly/react-styles/css/components/Table/table'; import stylesGrid from '@patternfly/react-styles/css/components/Table/table-grid'; import { css } from '@patternfly/react-styles'; -import { TableGridBreakpoint, TableVariant, toCamel } from '../Table'; +import { toCamel } from '../Table/utils/utils'; import { IVisibility } from '../Table/utils/decorators/classNames'; import { useOUIAProps, OUIAProps } from '@patternfly/react-core'; +import { TableGridBreakpoint, TableVariant } from '../Table/TableTypes'; export interface BaseCellProps { /** Content rendered inside the cell */ diff --git a/packages/react-table/src/components/TableComposable/Td.tsx b/packages/react-table/src/components/TableComposable/Td.tsx index dc220ecdd33..f737011f221 100644 --- a/packages/react-table/src/components/TableComposable/Td.tsx +++ b/packages/react-table/src/components/TableComposable/Td.tsx @@ -1,27 +1,20 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -import { - OnSelect, - selectable, - cellActions, - IActions, - IFormatterValueType, - collapsible, - compoundExpand, - OnExpand, - cellWidth, - Visibility, - classNames, - OnCollapse -} from '../Table'; -import { mergeProps } from '../Table/base'; -import { IVisibility } from '../Table/utils/decorators/classNames'; import { DropdownDirection, DropdownPosition } from '@patternfly/react-core/dist/js/components/Dropdown/dropdownConstants'; import { BaseCellProps } from './TableComposable'; +import { cellActions } from '../Table/utils/decorators/cellActions'; +import { selectable } from '../Table/utils/decorators/selectable'; +import { collapsible } from '../Table/utils/decorators/collapsible'; +import { compoundExpand } from '../Table/utils/decorators/compoundExpand'; +import { cellWidth } from './../Table/utils/decorators/cellWidth'; +import { Visibility, classNames } from './../Table/utils/decorators/classNames'; +import { mergeProps } from '../Table/base/merge-props'; +import { IVisibility } from '../Table/utils/decorators/classNames'; +import { OnSelect, IFormatterValueType, IActions, OnExpand, OnCollapse } from '../Table/TableTypes'; export interface TdProps extends BaseCellProps, Omit, 'onSelect' | 'width'> { /** diff --git a/packages/react-table/src/components/TableComposable/Th.tsx b/packages/react-table/src/components/TableComposable/Th.tsx index afe3fe3a268..3e8018e1fa6 100644 --- a/packages/react-table/src/components/TableComposable/Th.tsx +++ b/packages/react-table/src/components/TableComposable/Th.tsx @@ -1,23 +1,17 @@ import * as React from 'react'; import { css } from '@patternfly/react-styles'; import styles from '@patternfly/react-styles/css/components/Table/table'; -import { - sortable, - selectable, - OnSelect, - IFormatterValueType, - IColumn, - ISortBy, - OnSort, - cellWidth, - Visibility, - classNames, - info -} from '../Table'; -import { InfoType, mergeProps } from '../Table/base'; +import { info } from '../Table/utils/decorators/info'; +import { sortable } from '../Table/utils/decorators/sortable'; +import { selectable } from '../Table/utils/decorators/selectable'; +import { cellWidth } from './../Table/utils/decorators/cellWidth'; +import { Visibility, classNames } from './../Table/utils/decorators/classNames'; +import { InfoType } from '../Table/base/types'; +import { mergeProps } from '../Table/base/merge-props'; import { IVisibility } from '../Table/utils/decorators/classNames'; import { Tooltip } from '@patternfly/react-core/dist/js/components/Tooltip/Tooltip'; import { BaseCellProps } from './TableComposable'; +import { OnSelect, IFormatterValueType, IColumn, ISortBy, OnSort } from '../Table/TableTypes'; export interface ThProps extends BaseCellProps, From 90ee50ef8a98f0360cb98fea60f238363aca4682 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Wed, 4 Nov 2020 16:16:12 -0500 Subject: [PATCH 28/29] add missing TableContext export --- packages/react-table/src/components/Table/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/react-table/src/components/Table/index.ts b/packages/react-table/src/components/Table/index.ts index 38f3ad73b27..bfd1a789385 100644 --- a/packages/react-table/src/components/Table/index.ts +++ b/packages/react-table/src/components/Table/index.ts @@ -16,3 +16,4 @@ export * from './SortColumn'; export * from './TableText'; export * from './utils'; export * from './TableTypes'; +export * from './TableContext'; From 7610a100ebaf1c1aa934675d85a297b01e4ffd68 Mon Sep 17 00:00:00 2001 From: Joachim Schuler Date: Tue, 10 Nov 2020 13:06:46 -0500 Subject: [PATCH 29/29] variant prop revert --- .../demos/TableDemo/TableComposableDemo.tsx | 64 +- .../src/components/Table/Table.tsx | 20 +- .../src/components/Table/TableTypes.ts | 32 +- .../Table/__snapshots__/Table.test.tsx.snap | 20147 +--------------- .../src/components/Table/base/provider.tsx | 3 +- .../src/components/Table/examples/Table.md | 302 +- .../TableComposable/TableComposable.tsx | 21 +- .../VirtualizedTable.test.tsx.snap | 18 + 8 files changed, 1287 insertions(+), 19320 deletions(-) diff --git a/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx b/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx index cd84ea609b9..ee10e61708d 100644 --- a/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx +++ b/packages/react-integration/demo-app-ts/src/components/demos/TableDemo/TableComposableDemo.tsx @@ -11,9 +11,10 @@ import { HeaderCellInfoWrapper, ExpandableRowContent, OnSelect, - IActions + IActions, + OnCollapse } from '@patternfly/react-table'; -import { ToggleGroup, ToggleGroupItem, Stack, StackItem } from '@patternfly/react-core'; +import { ToggleGroup, ToggleGroupItem, Stack, StackItem, Checkbox } from '@patternfly/react-core'; import CodeBranchIcon from '@patternfly/react-icons/dist/js/icons/code-branch-icon'; import CodeIcon from '@patternfly/react-icons/dist/js/icons/code-icon'; import CubeIcon from '@patternfly/react-icons/dist/js/icons/cube-icon'; @@ -434,28 +435,38 @@ export const TableComposableDemo = () => { ['4', '2', 'b', 'four', 'five'], ['5', '2', 'b', 'four', 'five'] ]; - const [variant, setVariant] = React.useState<'compact' | 'compactBorderless'>('compact'); + const [choice, setChoice] = React.useState('default'); const handleItemClick = (isSelected: boolean, event: React.MouseEvent) => { - const id = event.currentTarget.id as 'compact' | 'compactBorderless'; - setVariant(id); + const id = event.currentTarget.id; + setChoice(id); }; return ( + - +
@@ -570,9 +574,9 @@ export const TableComposableDemo = () => { expand={ pair.child ? { - rowIndex, + rowIndex: pairIndex, isExpanded: expanded[pairIndex], - onToggle: event => handleExpansionToggle(event, pairIndex) + onToggle: handleExpansionToggle } : null } diff --git a/packages/react-table/src/components/Table/Table.tsx b/packages/react-table/src/components/Table/Table.tsx index 91eb11238d6..e5f85b8774f 100644 --- a/packages/react-table/src/components/Table/Table.tsx +++ b/packages/react-table/src/components/Table/Table.tsx @@ -39,11 +39,11 @@ export interface TableProps extends OUIAProps { /** Additional classes added to the Table */ className?: string; /** Style variant for the Table */ - variant?: 'compact' | 'compactBorderless' | 'compactExpandable'; + variant?: 'compact'; /** * Render borders - * - * @deprecated Borders can only be removed for the compact table, set variant="compactBorderless" instead + * Borders can only currently be disabled if the variant is set to 'compact' + * https://github.com/patternfly/patternfly/issues/3650 */ borders?: boolean; /** Specifies the grid breakpoints */ @@ -203,17 +203,6 @@ export class Table extends React.Component { firstUserColumnIndex: [onCollapse, onSelect].filter(callback => callback).length }); - const getVariant = () => { - if (variant === 'compact') { - if (borders === false) { - return 'compactBorderless'; - } else if (onCollapse || onExpand) { - return 'compactExpandable'; - } - } - return variant; - }; - const table = ( { }} columns={headerData} role={role} - variant={getVariant()} + variant={variant} + borders={borders} className={className} > {caption &&
{caption}
- -
- - -`; - -exports[`Simple table aria-label 1`] = ` - - - - -
- - -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
- - -`; - -exports[`Simple table caption 1`] = ` - - - - -
- - - -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + @@ -133831,8 +115962,9 @@ exports[`Simple table caption 1`] = `
- Simple Table -
`; -exports[`Simple table header 1`] = ` +exports[`Simple table aria-label 1`] = ` - Header title - - } isStickyHeader={false} ouiaSafe={true} role="grid" @@ -133953,10 +116080,9 @@ exports[`Simple table header 1`] = ` selectVariant="checkbox" variant={null} > -

- Header title -

`; -exports[`Sortable table 1`] = ` +exports[`Simple table caption 1`] = `
+ @@ -144004,10 +126073,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -144015,7 +126084,6 @@ exports[`Sortable table 1`] = ` "transforms": Array [ [Function], [Function], - [Function], ], }, "property": "header-cell", @@ -144049,10 +126117,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -144093,10 +126161,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -144137,10 +126205,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -144181,10 +126249,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -145253,10 +127321,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -145264,7 +127332,6 @@ exports[`Sortable table 1`] = ` "transforms": Array [ [Function], [Function], - [Function], ], }, "property": "header-cell", @@ -145298,10 +127365,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -145342,10 +127409,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -145386,10 +127453,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -145430,10 +127497,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -146914,10 +128981,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -146925,7 +128992,6 @@ exports[`Sortable table 1`] = ` "transforms": Array [ [Function], [Function], - [Function], ], }, "property": "header-cell", @@ -146959,10 +129025,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -147003,10 +129069,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -147047,10 +129113,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -147091,10 +129157,10 @@ exports[`Sortable table 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": [Function], + "onSort": undefined, "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": Object {}, + "sortBy": undefined, }, "header": Object { "formatters": Array [], @@ -147251,7 +129317,7 @@ exports[`Sortable table 1`] = ` > `; -exports[`Table variants Breakpoint - 1`] = ` +exports[`Simple table header 1`] = `
+ Simple Table +
+ Header title + + } isStickyHeader={false} ouiaSafe={true} role="grid" @@ -151936,8 +133995,11 @@ exports[`Table variants Breakpoint - 1`] = ` selectVariant="checkbox" variant={null} > +

+ Header title +

@@ -153040,7 +135043,6 @@ exports[`Table variants Breakpoint - 1`] = ` "transforms": Array [ [Function], [Function], - [Function], ], }, "property": "header-cell", @@ -154289,7 +136291,6 @@ exports[`Table variants Breakpoint - 1`] = ` "transforms": Array [ [Function], [Function], - [Function], ], }, "property": "header-cell", @@ -155950,7 +137951,6 @@ exports[`Table variants Breakpoint - 1`] = ` "transforms": Array [ [Function], [Function], - [Function], ], }, "property": "header-cell", @@ -156276,7 +138276,7 @@ exports[`Table variants Breakpoint - 1`] = ` > `; -exports[`Table variants Breakpoint - grid 1`] = ` +exports[`Sortable table 1`] = `
@@ -162054,10 +144052,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -162099,10 +144097,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -162143,10 +144141,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -162187,10 +144185,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -162231,10 +144229,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -163303,10 +145301,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -163348,10 +145346,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -163392,10 +145390,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -163436,10 +145434,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -163480,10 +145478,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -164964,10 +146962,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -165009,10 +147007,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -165053,10 +147051,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -165097,10 +147095,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -165141,10 +147139,10 @@ exports[`Table variants Breakpoint - grid 1`] = ` "onExpand": undefined, "onRowEdit": undefined, "onSelect": undefined, - "onSort": undefined, + "onSort": [Function], "rowLabeledBy": "simple-node", "selectVariant": "checkbox", - "sortBy": undefined, + "sortBy": Object {}, }, "header": Object { "formatters": Array [], @@ -165301,7 +147299,7 @@ exports[`Table variants Breakpoint - grid 1`] = ` > `; -exports[`Table variants Breakpoint - grid-2xl 1`] = ` +exports[`Table variants Breakpoint - 1`] = `
`; -exports[`Table variants Breakpoint - grid-lg 1`] = ` +exports[`Table variants Breakpoint - grid 1`] = `
`; -exports[`Table variants Breakpoint - grid-md 1`] = ` +exports[`Table variants Breakpoint - grid-2xl 1`] = `
`; -exports[`Table variants Breakpoint - grid-xl 1`] = ` +exports[`Table variants Breakpoint - grid-lg 1`] = `
`; -exports[`Table variants Size - compact 1`] = ` +exports[`Table variants Breakpoint - grid-md 1`] = `
`; -exports[`Table variants Size - compactBorderless 1`] = ` +exports[`Table variants Breakpoint - grid-xl 1`] = `
`; -exports[`Table variants Size - compactExpandable 1`] = ` +exports[`Table variants Size - compact 1`] = `
- - -
+ + + + + + + + + +
+
); } } @@ -711,70 +748,7 @@ class ActionsTable extends React.Component { } ``` -### Compact - -```js -import React from 'react'; -import { Table, TableHeader, TableBody } from '@patternfly/react-table'; -import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; - -class CompactTable extends React.Component { - constructor(props) { - super(props); - this.state = { - variant: 'compact', - columns: [ - { title: 'Header cell' }, - 'Branches', - { title: 'Pull requests', props: { className: 'pf-u-text-align-center' } }, - { title: '' /* deliberately empty */, dataLabel: 'Label for mobile view' } - ], - rows: [ - ['one', 'two', 'three', 'four'], - ['one', 'two', 'three', 'four'], - ['one', 'two', 'three', 'four'] - ] - }; - this.handleItemClick = this.handleItemClick.bind(this); - } - - handleItemClick(isSelected, event) { - const variant = event.currentTarget.id; - this.setState({ - variant - }); - } - - render() { - const { columns, rows, variant } = this.state; - - return ( - - - - - - - - -
-
- ); - } -} -``` - -### Expandable (compact) +### Expandable ```js import React from 'react'; @@ -1848,10 +1822,12 @@ Some general notes: - Provide `dataLabel` prop to the `Td` components so that in mobile view the cell has a label to provide context. - If you want a table caption, simply place a `My caption` as the first child within a `TableComposable`. +- You can set the `TableComposable` variant to `compact` ```js isBeta import React from 'react'; import { TableComposable, Thead, Tbody, Tr, Th, Td, Caption } from '@patternfly/react-table'; +import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; ComposableTableBasic = () => { const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; @@ -1860,28 +1836,59 @@ ComposableTableBasic = () => { ['one - 2', null, null, 'four - 2', 'five - 2'], ['one - 3', 'two - 3', 'three - 3', 'four - 3', 'five - 3'] ]; + const [choice, setChoice] = React.useState('default'); + const handleItemClick = (isSelected, event) => { + const id = event.currentTarget.id; + setChoice(id); + }; return ( - - Simple table using composable components - - - {columns.map((column, columnIndex) => ( - {column} - ))} - - - - {rows.map((row, rowIndex) => ( - - {row.map((cell, cellIndex) => ( - - {cell} - + + + + + + + + Simple table using composable components + + + {columns.map((column, columnIndex) => ( + {column} ))} - ))} - - + + + {rows.map((row, rowIndex) => ( + + {row.map((cell, cellIndex) => ( + + {cell} + + ))} + + ))} + + +
); }; ``` @@ -2319,81 +2326,17 @@ ComposableTableActions = () => { }; ``` -### Composable: Compact, compact borderless - -You can set the `TableComposable` variant to `compact` or `compactBorderless`. - -```js isBeta -import React from 'react'; -import { TableComposable, Thead, Tbody, Tr, Th, Td } from '@patternfly/react-table'; -import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; - -ComposableTableCompact = () => { - const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; - const rows = [ - ['one', 'two', 'a', 'four', 'five'], - ['a', 'two', 'k', 'four', 'five'], - ['p', 'two', 'b', 'four', 'five'], - ['4', '2', 'b', 'four', 'five'], - ['5', '2', 'b', 'four', 'five'] - ]; - const [variant, setVariant] = React.useState('compact'); - const handleItemClick = (isSelected, event) => { - const id = event.currentTarget.id; - setVariant(id); - }; - return ( - - - - - - - - - {columns.map((column, columnIndex) => ( - {column} - ))} - - - - {rows.map((row, rowIndex) => ( - - {row.map((cell, cellIndex) => ( - - {cell} - - ))} - - ))} - - - - ); -}; -``` - ### Composable: Expandable This example demonstrates having expandable rows. - Each parent/child row pair is enclosed in a `Tbody` component. -- You can make the table more compact by setting the `TableComposable` variant to `compactExpandable`. +- You can make the table more compact by setting the `TableComposable` variant to `compact`. ```js isBeta import React from 'react'; import { TableComposable, Thead, Tbody, Tr, Th, Td, ExpandableRowContent } from '@patternfly/react-table'; -import { ToggleGroup, ToggleGroupItem } from '@patternfly/react-core'; +import { Checkbox } from '@patternfly/react-core'; ComposableTableExpandable = () => { const columns = ['Repositories', 'Branches', 'Pull requests', 'Workspaces', 'Last commit']; @@ -2438,11 +2381,10 @@ ComposableTableExpandable = () => { const [expanded, setExpanded] = React.useState( Object.fromEntries(Object.entries(rowPairs).map(([k, v]) => [k, Boolean(v.child)])) ); - const [variant, setVariant] = React.useState(null); - const handleItemClick = (isSelected, event) => { - const id = event.currentTarget.id; - setVariant(id === 'default' ? null : id); - }; + const [compact, setCompact] = React.useState(true); + const toggleCompact = (checked) => { + setCompact(checked); + } const handleExpansionToggle = (event, pairIndex) => { setExpanded({ ...expanded, @@ -2452,21 +2394,15 @@ ComposableTableExpandable = () => { let rowIndex = -1; return ( - - - - - + + @@ -2486,9 +2422,9 @@ ComposableTableExpandable = () => { expand={ pair.child ? { - rowIndex, + rowIndex: pairIndex, isExpanded: expanded[pairIndex], - onToggle: event => handleExpansionToggle(event, pairIndex) + onToggle: handleExpansionToggle } : null } diff --git a/packages/react-table/src/components/TableComposable/TableComposable.tsx b/packages/react-table/src/components/TableComposable/TableComposable.tsx index b7d3dfb31bf..c994f7518e0 100644 --- a/packages/react-table/src/components/TableComposable/TableComposable.tsx +++ b/packages/react-table/src/components/TableComposable/TableComposable.tsx @@ -35,11 +35,15 @@ export interface TableComposableProps extends React.HTMLProps, className?: string; /** * Style variant for the Table - * compact: Modifies to remove borders between rows - * compactBorderless: Compact and removes the border lines - * compactExpandable: Compact and indicates that the table has expandable rows + * compact: Reduces spacing and makes the table more compact */ - variant?: TableVariant | 'compact' | 'compactBorderless' | 'compactExpandable'; + variant?: TableVariant | 'compact'; + /** + * Render borders + * Borders can only currently be disabled if the variant is set to 'compact' + * https://github.com/patternfly/patternfly/issues/3650 + */ + borders?: boolean; /** Specifies the grid breakpoints */ gridBreakPoint?: '' | 'grid' | 'grid-md' | 'grid-lg' | 'grid-xl' | 'grid-2xl'; /** A valid WAI-ARIA role to be applied to the table element */ @@ -54,6 +58,7 @@ const TableComposableBase: React.FunctionComponent = ({ children, className, variant, + borders = true, isStickyHeader = false, gridBreakPoint = TableGridBreakpoint.gridMd, 'aria-label': ariaLabel, @@ -64,11 +69,6 @@ const TableComposableBase: React.FunctionComponent = ({ ...props }: TableComposableProps) => { const ouiaProps = useOUIAProps('Table', ouiaId, ouiaSafe); - const variantModifiers = { - compact: styles.modifiers.compact, - compactBorderless: css(styles.modifiers.compact, styles.modifiers.noBorderRows), - compactExpandable: css(styles.modifiers.compact, styles.modifiers.expandable) - }; return ( = ({ stylesGrid.modifiers?.[ toCamel(gridBreakPoint || '').replace(/-?2xl/, '_2xl') as 'grid' | 'gridMd' | 'gridLg' | 'gridXl' | 'grid_2xl' ], - variantModifiers?.[variant] || '', + styles.modifiers[variant], + !borders && styles.modifiers.noBorderRows, isStickyHeader && styles.modifiers.stickyHeader )} ref={innerRef} diff --git a/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap b/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap index cecf39efd28..aaf734bb77c 100644 --- a/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap +++ b/packages/react-virtualized-extension/src/components/Virtualized/__snapshots__/VirtualizedTable.test.tsx.snap @@ -125,6 +125,7 @@ exports[`Actions virtualized table 1`] = ` >