Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ import {
OnDragStart,
OnDrop
} from '../../../shared/components/dragDrop/DragDropWorkbench'
import { isFirstInArr } from '../../util/isFirstInArr'

export const MergedHeaderGroups: React.FC<{
headerGroup: HeaderGroup<Experiment>
Expand All @@ -21,7 +20,7 @@ export const MergedHeaderGroups: React.FC<{
onDragUpdate: OnDragOver
onDragStart: OnDragStart
onDragEnd: OnDrop
isFirst: boolean
firstExpColumnCellId: string
setExpColumnNeedsShadow: (needsShadow: boolean) => void
root: HTMLElement | null
}> = ({
Expand All @@ -34,7 +33,7 @@ export const MergedHeaderGroups: React.FC<{
onDragEnd,
onDragStart,
root,
isFirst,
firstExpColumnCellId,
setExpColumnNeedsShadow
}) => {
return (
Expand All @@ -43,9 +42,9 @@ export const MergedHeaderGroups: React.FC<{
className: cx(styles.tr, styles.headRow)
})}
>
{headerGroup.headers.map((column: HeaderGroup<Experiment>, ind) => (
{headerGroup.headers.map((column: HeaderGroup<Experiment>) => (
<TableHeader
isFirst={isFirst && isFirstInArr(ind)}
firstExpColumnCellId={firstExpColumnCellId}
setExpColumnNeedsShadow={setExpColumnNeedsShadow}
key={column.id}
orderedColumns={orderedColumns}
Expand Down
7 changes: 4 additions & 3 deletions webview/src/experiments/components/table/TableHead.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ import {
OnDragStart
} from '../../../shared/components/dragDrop/DragDropWorkbench'
import { getSelectedForPlotsCount } from '../../util/rows'
import { isFirstInArr } from '../../util/isFirstInArr'

interface TableHeadProps {
instance: TableInstance<Experiment>
Expand Down Expand Up @@ -102,6 +101,8 @@ export const TableHead = ({

const selectedForPlotsCount = getSelectedForPlotsCount(rows)

const firstExpColumnCellId = headerGroups[0].headers[0].id
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of relying on array indexes to find the first experiments column cell, I realized I could find the cell with the id of the cell inside headerGroup.


return (
<div
className={cx(styles.thead, needsShadow && styles.headWithShadow)}
Expand All @@ -113,7 +114,7 @@ export const TableHead = ({
filters={filters}
filteredCounts={filteredCounts}
/>
{headerGroups.map((headerGroup, ind) => (
{headerGroups.map(headerGroup => (
// eslint-disable-next-line react/jsx-key
<MergedHeaderGroups
{...headerGroup.getHeaderGroupProps()}
Expand All @@ -126,7 +127,7 @@ export const TableHead = ({
onDragUpdate={onDragUpdate}
onDragEnd={onDragEnd}
root={root}
isFirst={isFirstInArr(ind)}
firstExpColumnCellId={firstExpColumnCellId}
setExpColumnNeedsShadow={setExpColumnNeedsShadow}
/>
))}
Expand Down
18 changes: 9 additions & 9 deletions webview/src/experiments/components/table/TableHeader.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ const getIconMenuItems = (
}
]

const FirstTableHeaderCellWrapper: React.FC<{
const WithExpColumnNeedsShadowUpdates: React.FC<{
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried to make the naming more clear but this sounds weird to me as well... Open to other suggestions 😅

children: React.ReactNode
setExpColumnNeedsShadow: (needsShadow: boolean) => void
root: HTMLElement | null
Expand Down Expand Up @@ -209,7 +209,7 @@ const TableHeaderCell: React.FC<{
onDragOver: OnDragOver
onDragStart: OnDragStart
onDrop: OnDrop
isFirst: boolean
firstExpColumnCellId: string
setExpColumnNeedsShadow: (needsShadow: boolean) => void
root: HTMLElement | null
}> = ({
Expand All @@ -225,7 +225,7 @@ const TableHeaderCell: React.FC<{
onDragStart,
onDrop,
root,
isFirst,
firstExpColumnCellId,
setExpColumnNeedsShadow
}) => {
const [menuSuppressed, setMenuSuppressed] = React.useState<boolean>(false)
Expand Down Expand Up @@ -273,13 +273,13 @@ const TableHeaderCell: React.FC<{
role="columnheader"
tabIndex={0}
>
{isFirst ? (
<FirstTableHeaderCellWrapper
{firstExpColumnCellId === column.id ? (
<WithExpColumnNeedsShadowUpdates
setExpColumnNeedsShadow={setExpColumnNeedsShadow}
root={root}
>
{cellContents}
</FirstTableHeaderCellWrapper>
</WithExpColumnNeedsShadowUpdates>
) : (
cellContents
)}
Expand All @@ -297,7 +297,7 @@ interface TableHeaderProps {
onDragOver: OnDragOver
onDragStart: OnDragStart
onDrop: OnDrop
isFirst: boolean
firstExpColumnCellId: string
setExpColumnNeedsShadow: (needsShadow: boolean) => void
root: HTMLElement | null
}
Expand All @@ -312,7 +312,7 @@ export const TableHeader: React.FC<TableHeaderProps> = ({
onDragStart,
onDrop,
root,
isFirst,
firstExpColumnCellId,
setExpColumnNeedsShadow
}) => {
const baseColumn = column.placeholderOf || column
Expand Down Expand Up @@ -364,7 +364,7 @@ export const TableHeader: React.FC<TableHeaderProps> = ({
onDrop={onDrop}
menuDisabled={!isSortable && column.group !== ColumnType.PARAMS}
root={root}
isFirst={isFirst}
firstExpColumnCellId={firstExpColumnCellId}
setExpColumnNeedsShadow={setExpColumnNeedsShadow}
menuContent={
<div>
Expand Down
1 change: 0 additions & 1 deletion webview/src/experiments/util/isFirstInArr.ts

This file was deleted.