Skip to content

Commit f82aeff

Browse files
committed
[ui-react] Wire in extraCells
1 parent b601945 commit f82aeff

1 file changed

Lines changed: 35 additions & 0 deletions

File tree

src/ui-react-dom/index.tsx

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import type {
77
CustomResultCell,
88
EditableCellView as EditableCellViewDecl,
99
EditableValueView as EditableValueViewDecl,
10+
ExtraRowCell,
1011
HtmlTableProps,
1112
RelationshipInHtmlTableProps,
1213
ResultSortedTableInHtmlTable as ResultSortedTableInHtmlTableDecl,
@@ -106,6 +107,8 @@ type HtmlTableParams = [
106107
cells: Cells,
107108
cellComponentProps: CellComponentProps,
108109
rowIds: Ids,
110+
extraCellsBefore?: ExtraRowCell[],
111+
extraCellsAfter?: ExtraRowCell[],
109112
sortAndOffset?: SortAndOffset,
110113
handleSort?: HandleSort,
111114
paginator?: ReactNode,
@@ -118,6 +121,8 @@ type RelationshipInHtmlRowParams = [
118121
relationshipId: Id,
119122
relationships: Relationships | undefined,
120123
store: Store | undefined,
124+
extraCellsBefore?: ExtraRowCell[],
125+
extraCellsAfter?: ExtraRowCell[],
121126
];
122127

123128
const EDITABLE = 'editable';
@@ -263,6 +268,8 @@ const HtmlTable = ({
263268
cells,
264269
cellComponentProps,
265270
rowIds,
271+
extraCellsBefore,
272+
extraCellsAfter,
266273
sortAndOffset,
267274
handleSort,
268275
paginatorComponent,
@@ -357,6 +364,8 @@ const RelationshipInHtmlRow = ({
357364
relationshipId,
358365
relationships,
359366
store,
367+
extraCellsBefore,
368+
extraCellsAfter,
360369
],
361370
}: {
362371
readonly localRowId: Id;
@@ -526,6 +535,8 @@ export const TableInHtmlTable: typeof TableInHtmlTableDecl = ({
526535
store,
527536
editable,
528537
customCells,
538+
extraCellsBefore,
539+
extraCellsAfter,
529540
...props
530541
}: TableInHtmlTableProps & HtmlTableProps): any => (
531542
<HtmlTable
@@ -538,6 +549,8 @@ export const TableInHtmlTable: typeof TableInHtmlTableDecl = ({
538549
),
539550
useStoreCellComponentProps(store, tableId),
540551
useRowIds(tableId, store),
552+
extraCellsBefore,
553+
extraCellsAfter,
541554
)}
542555
/>
543556
);
@@ -554,6 +567,8 @@ export const SortedTableInHtmlTable: typeof SortedTableInHtmlTableDecl = ({
554567
paginator = false,
555568
onChange,
556569
customCells,
570+
extraCellsBefore,
571+
extraCellsAfter,
557572
...props
558573
}: SortedTableInHtmlTableProps & HtmlTableProps): any => {
559574
const [sortAndOffset, handleSort, paginatorComponent] =
@@ -578,6 +593,8 @@ export const SortedTableInHtmlTable: typeof SortedTableInHtmlTableDecl = ({
578593
),
579594
useStoreCellComponentProps(store, tableId),
580595
useSortedRowIds(tableId, ...sortAndOffset, limit, store),
596+
extraCellsBefore,
597+
extraCellsAfter,
581598
sortAndOffset,
582599
handleSort,
583600
paginatorComponent,
@@ -591,6 +608,8 @@ export const ValuesInHtmlTable: typeof ValuesInHtmlTableDecl = ({
591608
editable = false,
592609
valueComponent: Value = editable ? EditableValueView : ValueView,
593610
getValueComponentProps,
611+
extraCellsBefore,
612+
extraCellsAfter,
594613
className,
595614
headerRow,
596615
idColumn,
@@ -627,6 +646,8 @@ export const SliceInHtmlTable: typeof SliceInHtmlTableDecl = ({
627646
indexes,
628647
editable,
629648
customCells,
649+
extraCellsBefore,
650+
extraCellsAfter,
630651
...props
631652
}: SliceInHtmlTableProps & HtmlTableProps): any => {
632653
const [resolvedIndexes, store, tableId] = getIndexStoreTableId(
@@ -644,6 +665,8 @@ export const SliceInHtmlTable: typeof SliceInHtmlTableDecl = ({
644665
),
645666
useStoreCellComponentProps(store, tableId as Id),
646667
useSliceRowIds(indexId, sliceId, resolvedIndexes),
668+
extraCellsBefore,
669+
extraCellsAfter,
647670
)}
648671
/>
649672
);
@@ -654,6 +677,8 @@ export const RelationshipInHtmlTable = ({
654677
relationships,
655678
editable,
656679
customCells,
680+
extraCellsBefore,
681+
extraCellsAfter,
657682
className,
658683
headerRow,
659684
idColumn = true,
@@ -679,6 +704,8 @@ export const RelationshipInHtmlTable = ({
679704
relationshipId,
680705
resolvedRelationships,
681706
store,
707+
extraCellsBefore,
708+
extraCellsAfter,
682709
);
683710
return (
684711
<table className={className}>
@@ -714,6 +741,8 @@ export const ResultTableInHtmlTable: typeof ResultTableInHtmlTableDecl = ({
714741
queryId,
715742
queries,
716743
customCells,
744+
extraCellsBefore,
745+
extraCellsAfter,
717746
...props
718747
}: ResultTableInHtmlTableProps & HtmlTableProps): any => (
719748
<HtmlTable
@@ -726,6 +755,8 @@ export const ResultTableInHtmlTable: typeof ResultTableInHtmlTableDecl = ({
726755
),
727756
useQueriesCellComponentProps(queries, queryId),
728757
useResultRowIds(queryId, queries),
758+
extraCellsBefore,
759+
extraCellsAfter,
729760
)}
730761
/>
731762
);
@@ -741,6 +772,8 @@ export const ResultSortedTableInHtmlTable: typeof ResultSortedTableInHtmlTableDe
741772
sortOnClick,
742773
paginator = false,
743774
customCells,
775+
extraCellsBefore,
776+
extraCellsAfter,
744777
onChange,
745778
...props
746779
}: ResultSortedTableInHtmlTableProps & HtmlTableProps): any => {
@@ -766,6 +799,8 @@ export const ResultSortedTableInHtmlTable: typeof ResultSortedTableInHtmlTableDe
766799
),
767800
useQueriesCellComponentProps(queries, queryId),
768801
useResultSortedRowIds(queryId, ...sortAndOffset, limit, queries),
802+
extraCellsBefore,
803+
extraCellsAfter,
769804
sortAndOffset,
770805
handleSort,
771806
paginatorComponent,

0 commit comments

Comments
 (0)