Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
oze4 committed Jun 8, 2021
2 parents 1b3f2f6 + 0915ef9 commit 2dcf3f8
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 57 deletions.
24 changes: 14 additions & 10 deletions src/components/MTableGroupRow/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ function MTableGroupRow(props) {
onCellEditStarted={props.onCellEditStarted}
onCellEditFinished={props.onCellEditFinished}
scrollWidth={props.scrollWidth}
treeDataMaxLevel={props.treeDataMaxLevel}
/>
));
} else {
Expand Down Expand Up @@ -81,6 +82,7 @@ function MTableGroupRow(props) {
components={props.components}
data={rowData}
detailPanel={props.detailPanel}
level={(props.level || 0) + 1}
getFieldValue={props.getFieldValue}
icons={props.icons}
path={[...props.path, index]}
Expand All @@ -97,6 +99,7 @@ function MTableGroupRow(props) {
onCellEditStarted={props.onCellEditStarted}
onCellEditFinished={props.onCellEditFinished}
scrollWidth={props.scrollWidth}
treeDataMaxLevel={props.treeDataMaxLevel}
/>
);
}
Expand Down Expand Up @@ -164,18 +167,20 @@ function MTableGroupRow(props) {
MTableGroupRow.defaultProps = {
columns: [],
groups: [],
options: {},
level: 0
level: 0,
options: {}
};

MTableGroupRow.propTypes = {
actions: PropTypes.array,
columns: PropTypes.arrayOf(PropTypes.object),
components: PropTypes.object,
cellEditable: PropTypes.object,
detailPanel: PropTypes.oneOfType([
PropTypes.func,
PropTypes.arrayOf(PropTypes.object)
]),
forwardedRef: PropTypes.element,
getFieldValue: PropTypes.func,
groupData: PropTypes.object,
groups: PropTypes.arrayOf(PropTypes.object),
Expand All @@ -184,21 +189,20 @@ MTableGroupRow.propTypes = {
isTreeData: PropTypes.bool.isRequired,
level: PropTypes.number,
localization: PropTypes.object,
onBulkEditRowChanged: PropTypes.func,
onCellEditFinished: PropTypes.func,
onCellEditStarted: PropTypes.func,
onEditingApproved: PropTypes.func,
onEditingCanceled: PropTypes.func,
onGroupExpandChanged: PropTypes.func,
onRowSelected: PropTypes.func,
onRowClick: PropTypes.func,
onRowSelected: PropTypes.func,
onToggleDetailPanel: PropTypes.func.isRequired,
onTreeExpandChanged: PropTypes.func.isRequired,
onEditingCanceled: PropTypes.func,
onEditingApproved: PropTypes.func,
options: PropTypes.object,
path: PropTypes.arrayOf(PropTypes.number),
scrollWidth: PropTypes.number.isRequired,
cellEditable: PropTypes.object,
onCellEditStarted: PropTypes.func,
onCellEditFinished: PropTypes.func,
onBulkEditRowChanged: PropTypes.func,
forwardedRef: PropTypes.element
treeDataMaxLevel: PropTypes.number
};

export default React.forwardRef(function MTableGroupRowRef(props, ref) {
Expand Down
95 changes: 48 additions & 47 deletions src/components/m-table-body.js
Original file line number Diff line number Diff line change
Expand Up @@ -146,37 +146,38 @@ class MTableBody extends React.Component {
return renderData.map((groupData, index) => (
<this.props.components.GroupRow
actions={this.props.actions}
key={groupData.value == null ? '' + index : groupData.value}
cellEditable={this.props.cellEditable}
columns={this.props.columns}
components={this.props.components}
detailPanel={this.props.detailPanel}
getFieldValue={this.props.getFieldValue}
groupData={groupData}
groups={groups}
hasAnyEditingRow={this.props.hasAnyEditingRow}
icons={this.props.icons}
level={0}
path={[index + this.props.pageSize * this.props.currentPage]}
onGroupExpandChanged={this.props.onGroupExpandChanged}
onRowSelected={this.props.onRowSelected}
onRowClick={this.props.onRowClick}
onEditingCanceled={this.props.onEditingCanceled}
onEditingApproved={this.props.onEditingApproved}
onToggleDetailPanel={this.props.onToggleDetailPanel}
onTreeExpandChanged={this.props.onTreeExpandChanged}
options={this.props.options}
isTreeData={this.props.isTreeData}
hasAnyEditingRow={this.props.hasAnyEditingRow}
key={groupData.value == null ? '' + index : groupData.value}
level={0}
localization={{
...MTableBody.defaultProps.localization.editRow,
...this.props.localization.editRow,
dateTimePickerLocalization: this.props.localization
.dateTimePickerLocalization
}}
cellEditable={this.props.cellEditable}
onCellEditStarted={this.props.onCellEditStarted}
onCellEditFinished={this.props.onCellEditFinished}
onBulkEditRowChanged={this.props.onBulkEditRowChanged}
onCellEditFinished={this.props.onCellEditFinished}
onCellEditStarted={this.props.onCellEditStarted}
onEditingApproved={this.props.onEditingApproved}
onEditingCanceled={this.props.onEditingCanceled}
onGroupExpandChanged={this.props.onGroupExpandChanged}
onRowClick={this.props.onRowClick}
onRowSelected={this.props.onRowSelected}
onToggleDetailPanel={this.props.onToggleDetailPanel}
onTreeExpandChanged={this.props.onTreeExpandChanged}
options={this.props.options}
path={[index + this.props.pageSize * this.props.currentPage]}
scrollWidth={this.props.scrollWidth}
treeDataMaxLevel={this.props.treeDataMaxLevel}
/>
));
}
Expand All @@ -188,24 +189,24 @@ class MTableBody extends React.Component {
columns={this.props.columns.filter((columnDef) => {
return !columnDef.hidden;
})}
data={this.props.initialFormData}
components={this.props.components}
data={this.props.initialFormData}
detailPanel={this.props.detailPanel}
errorState={this.props.errorState}
getFieldValue={this.props.getFieldValue}
icons={this.props.icons}
isTreeData={this.props.isTreeData}
key="key-add-row"
mode="add"
localization={{
...MTableBody.defaultProps.localization.editRow,
...this.props.localization.editRow,
dateTimePickerLocalization: this.props.localization
.dateTimePickerLocalization
}}
options={this.props.options}
isTreeData={this.props.isTreeData}
detailPanel={this.props.detailPanel}
onEditingCanceled={this.props.onEditingCanceled}
mode="add"
onEditingApproved={this.props.onEditingApproved}
getFieldValue={this.props.getFieldValue}
onEditingCanceled={this.props.onEditingCanceled}
options={this.props.options}
scrollWidth={this.props.scrollWidth}
/>
)
Expand Down Expand Up @@ -282,56 +283,56 @@ MTableBody.defaultProps = {
actions: [],
currentPage: 0,
data: [],
pageSize: 5,
renderData: [],
selection: false,
localization: {
editRow: {},
emptyDataSourceMessage: 'No records to display',
filterRow: {},
editRow: {}
}
filterRow: {}
},
pageSize: 5,
renderData: [],
selection: false
};

MTableBody.propTypes = {
actions: PropTypes.array,
components: PropTypes.object.isRequired,
bulkEditChangedRows: PropTypes.object,
bulkEditOpen: PropTypes.bool,
cellEditable: PropTypes.object,
columns: PropTypes.array.isRequired,
components: PropTypes.object.isRequired,
currentPage: PropTypes.number,
data: PropTypes.array,
detailPanel: PropTypes.oneOfType([
PropTypes.func,
PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.object, PropTypes.func]))
]),
errorState: PropTypes.oneOfType([PropTypes.object, PropTypes.bool]),
getFieldValue: PropTypes.func.isRequired,
hasAnyEditingRow: PropTypes.bool,
hasDetailPanel: PropTypes.bool.isRequired,
icons: PropTypes.object.isRequired,
initialFormData: PropTypes.object,
isTreeData: PropTypes.bool.isRequired,
localization: PropTypes.object,
onBulkEditRowChanged: PropTypes.func,
onCellEditFinished: PropTypes.func,
onCellEditStarted: PropTypes.func,
onEditingApproved: PropTypes.func,
onEditingCanceled: PropTypes.func,
onFilterChanged: PropTypes.func,
onGroupExpandChanged: PropTypes.func,
onRowClick: PropTypes.func,
onRowSelected: PropTypes.func,
onToggleDetailPanel: PropTypes.func.isRequired,
onTreeExpandChanged: PropTypes.func.isRequired,
options: PropTypes.object.isRequired,
pageSize: PropTypes.number,
renderData: PropTypes.array,
renderSummaryRow: PropTypes.func,
initialFormData: PropTypes.object,
selection: PropTypes.bool.isRequired,
scrollWidth: PropTypes.number.isRequired,
selection: PropTypes.bool.isRequired,
showAddRow: PropTypes.bool,
treeDataMaxLevel: PropTypes.number,
localization: PropTypes.object,
onFilterChanged: PropTypes.func,
onGroupExpandChanged: PropTypes.func,
onToggleDetailPanel: PropTypes.func.isRequired,
onTreeExpandChanged: PropTypes.func.isRequired,
onRowClick: PropTypes.func,
onEditingCanceled: PropTypes.func,
onEditingApproved: PropTypes.func,
errorState: PropTypes.oneOfType([PropTypes.object, PropTypes.bool]),
cellEditable: PropTypes.object,
onCellEditStarted: PropTypes.func,
onCellEditFinished: PropTypes.func,
bulkEditOpen: PropTypes.bool,
bulkEditChangedRows: PropTypes.object,
onBulkEditRowChanged: PropTypes.func
treeDataMaxLevel: PropTypes.number
};

export default MTableBody;

0 comments on commit 2dcf3f8

Please sign in to comment.