made "resizeable" and optional prop for the responsive table
This commit is contained in:
parent
e1b3afd543
commit
b710c03ede
2 changed files with 7 additions and 3 deletions
|
|
@ -99,7 +99,8 @@ interface Props<T> {
|
||||||
order?: string;
|
order?: string;
|
||||||
setOrder?: React.Dispatch<React.SetStateAction<"asc" | "desc">>;
|
setOrder?: React.Dispatch<React.SetStateAction<"asc" | "desc">>;
|
||||||
endTitleElement?: string | JSX.Element | (() => string | JSX.Element);
|
endTitleElement?: string | JSX.Element | (() => string | JSX.Element);
|
||||||
loadMore?: () => void
|
loadMore?: () => void;
|
||||||
|
resizeable?: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function ResponsiveTable<T extends Object>(props: Props<T>) {
|
export default function ResponsiveTable<T extends Object>(props: Props<T>) {
|
||||||
|
|
@ -133,13 +134,15 @@ export default function ResponsiveTable<T extends Object>(props: Props<T>) {
|
||||||
setOrderBy,
|
setOrderBy,
|
||||||
order,
|
order,
|
||||||
setOrder,
|
setOrder,
|
||||||
loadMore
|
loadMore,
|
||||||
|
// resizeable,
|
||||||
} = props
|
} = props
|
||||||
const classes = useStyles();
|
const classes = useStyles();
|
||||||
const columns = typeof(props.columns) === "function" ? props.columns() : props.columns
|
const columns = typeof(props.columns) === "function" ? props.columns() : props.columns
|
||||||
const subtitle = typeof(props.subtitle) === "function" ? props.subtitle() : props.subtitle
|
const subtitle = typeof(props.subtitle) === "function" ? props.subtitle() : props.subtitle
|
||||||
const title = typeof(props.title) === "function" ? props.title() : props.title
|
const title = typeof(props.title) === "function" ? props.title() : props.title
|
||||||
const endTitleElement = typeof(props.endTitleElement) === "function" ? props.endTitleElement() : props.endTitleElement
|
const endTitleElement = typeof(props.endTitleElement) === "function" ? props.endTitleElement() : props.endTitleElement
|
||||||
|
const resizeable = props.resizeable === undefined ? false : props.resizeable
|
||||||
|
|
||||||
const isMobile = useMobile()
|
const isMobile = useMobile()
|
||||||
|
|
||||||
|
|
@ -540,7 +543,7 @@ export default function ResponsiveTable<T extends Object>(props: Props<T>) {
|
||||||
>
|
>
|
||||||
{column.title} {showOrderIcon(column)}
|
{column.title} {showOrderIcon(column)}
|
||||||
</Grid2>
|
</Grid2>
|
||||||
{index < columns.length-1 &&
|
{index < columns.length-1 && resizeable &&
|
||||||
<Grid2
|
<Grid2
|
||||||
sx={{ cursor: "col-resize", userSelect: "none" }}
|
sx={{ cursor: "col-resize", userSelect: "none" }}
|
||||||
onMouseDown={event => resizeClick(event, index)}
|
onMouseDown={event => resizeClick(event, index)}
|
||||||
|
|
|
||||||
|
|
@ -782,6 +782,7 @@ export default function Devices() {
|
||||||
orderBy={orderBy}
|
orderBy={orderBy}
|
||||||
setOrderBy={setOrderBy}
|
setOrderBy={setOrderBy}
|
||||||
endTitleElement={preferencesButton}
|
endTitleElement={preferencesButton}
|
||||||
|
resizeable
|
||||||
loadMore={()=>{
|
loadMore={()=>{
|
||||||
let currentRows = cloneDeep(devices)
|
let currentRows = cloneDeep(devices)
|
||||||
deviceAPI.list(
|
deviceAPI.list(
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue