From ead497aade1c11eb1079b9dbd43ff4f9be6aac20 Mon Sep 17 00:00:00 2001 From: MichaelPesce Date: Wed, 2 Aug 2023 12:59:58 -0400 Subject: [PATCH] set page to 0 when switching between tables --- .../components/OverrideTable/OverrideTable.js | 125 +++++++++--------- 1 file changed, 62 insertions(+), 63 deletions(-) diff --git a/electron/ui/src/components/OverrideTable/OverrideTable.js b/electron/ui/src/components/OverrideTable/OverrideTable.js index d0f5650f..acfe5565 100644 --- a/electron/ui/src/components/OverrideTable/OverrideTable.js +++ b/electron/ui/src/components/OverrideTable/OverrideTable.js @@ -10,69 +10,6 @@ import { INFRASTRUCTURE_CAPEX_MAPPING, VARIABLE_INDEXES } from '../../assets/In import OverrideTableRows from './OverrideTableRows'; - -function TablePaginationActions(props) { - const theme = useTheme(); - const { count, page, rowsPerPage, onPageChange } = props; - - const handleFirstPageButtonClick = (event) => { - onPageChange(event, 0); - }; - - const handleBackButtonClick = (event) => { - onPageChange(event, page - 1); - }; - - const handleNextButtonClick = (event) => { - onPageChange(event, page + 1); - }; - - const handleLastPageButtonClick = (event) => { - onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1)); - }; - - return ( - - - {theme.direction === 'rtl' ? : } - - - {theme.direction === 'rtl' ? : } - - = Math.ceil(count / rowsPerPage) - 1} - aria-label="next page" - > - {theme.direction === 'rtl' ? : } - - = Math.ceil(count / rowsPerPage) - 1} - aria-label="last page" - > - {theme.direction === 'rtl' ? : } - - - ); -} - -TablePaginationActions.propTypes = { - count: PropTypes.number.isRequired, - onPageChange: PropTypes.func.isRequired, - page: PropTypes.number.isRequired, - rowsPerPage: PropTypes.number.isRequired, -}; - - export default function OverrideTable(props) { const { @@ -102,6 +39,7 @@ export default function OverrideTable(props) { ) setVisibleRows(tempVisibleRows) setRows(tempRows) + setPage(0) },[data, scenario, category]) @@ -333,3 +271,64 @@ const renderOutputTable = () => { } + +function TablePaginationActions(props) { + const theme = useTheme(); + const { count, page, rowsPerPage, onPageChange } = props; + + const handleFirstPageButtonClick = (event) => { + onPageChange(event, 0); + }; + + const handleBackButtonClick = (event) => { + onPageChange(event, page - 1); + }; + + const handleNextButtonClick = (event) => { + onPageChange(event, page + 1); + }; + + const handleLastPageButtonClick = (event) => { + onPageChange(event, Math.max(0, Math.ceil(count / rowsPerPage) - 1)); + }; + + return ( + + + {theme.direction === 'rtl' ? : } + + + {theme.direction === 'rtl' ? : } + + = Math.ceil(count / rowsPerPage) - 1} + aria-label="next page" + > + {theme.direction === 'rtl' ? : } + + = Math.ceil(count / rowsPerPage) - 1} + aria-label="last page" + > + {theme.direction === 'rtl' ? : } + + + ); +} + +TablePaginationActions.propTypes = { + count: PropTypes.number.isRequired, + onPageChange: PropTypes.func.isRequired, + page: PropTypes.number.isRequired, + rowsPerPage: PropTypes.number.isRequired, +}; \ No newline at end of file