From cd10a200b38794bc8d74d5ac2bcebf53d3d57efe Mon Sep 17 00:00:00 2001 From: "courtmanr@gmail.com" Date: Sat, 15 Mar 2025 19:55:45 +0000 Subject: [PATCH] Update NetworkTable component with improved styling and integration with filter system --- .../network/components/NetworkTable.jsx | 94 ++++++++++++------- 1 file changed, 62 insertions(+), 32 deletions(-) diff --git a/frontend/src/components/network/components/NetworkTable.jsx b/frontend/src/components/network/components/NetworkTable.jsx index 19e806c1c..60b376291 100644 --- a/frontend/src/components/network/components/NetworkTable.jsx +++ b/frontend/src/components/network/components/NetworkTable.jsx @@ -1,10 +1,13 @@ -import React from 'react'; +import React, { useState, useEffect } from 'react'; import { Card, CardContent, TableContainer, Table, - Paper + Paper, + Box, + alpha, + useTheme } from '@mui/material'; import NetworkTableHeader from '../NetworkTableHeader'; import NetworkTableBody from '../NetworkTableBody'; @@ -38,27 +41,57 @@ const NetworkTable = ({ handleNodeChange = () => {}, handleStatusChange = () => {}, handleTypeChange = () => {}, - activeSearchTerms = [], - addSearchTerm = () => {}, - removeSearchTerm = () => {} + filters = {}, + updateFilter = () => {}, + handleFilterButtonClick = () => {}, + filterButtonRef = null, + openFilters = false, + handleCloseFilterPopover = () => {}, }) => { + const theme = useTheme(); + + // Table container ref + const tableContainerRef = React.useRef(null); + const tableRef = React.useRef(null); + + // Get the column index from the column order + const getColumnIndex = (columnId) => { + // First get visible columns in the right order + const visibleColumnIds = columnOrder.filter(id => columnVisibility[id]?.visible); + return visibleColumnIds.indexOf(columnId); + }; + return ( - - - - theme.palette.background.paper, - // Prevent any transparency - backdropFilter: 'none', - // Add a subtle shadow for better visual separation - boxShadow: '0 1px 3px rgba(0,0,0,0.05)' - } - }}> + + + +