diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx
index ec8163ea..25dcb8aa 100644
--- a/frontend/src/App.jsx
+++ b/frontend/src/App.jsx
@@ -21,6 +21,7 @@ import { Box, AppShell, MantineProvider } from '@mantine/core';
import '@mantine/core/styles.css'; // Ensure Mantine global styles load
import '@mantine/notifications/styles.css';
import 'mantine-react-table/styles.css';
+import './index.css';
import mantineTheme from './mantineTheme';
import API from './api';
import { Notifications } from '@mantine/notifications';
diff --git a/frontend/src/components/tables/ChannelsTable.jsx b/frontend/src/components/tables/ChannelsTable.jsx
index a527477a..de0aaf4f 100644
--- a/frontend/src/components/tables/ChannelsTable.jsx
+++ b/frontend/src/components/tables/ChannelsTable.jsx
@@ -69,17 +69,46 @@ const ChannelStreams = ({ channel, isExpanded }) => {
columns: useMemo(
() => [
{
+ size: 400,
header: 'Name',
accessorKey: 'name',
+ Cell: ({ cell }) => (
+
+ {cell.getValue()}
+
+ ),
},
{
+ size: 100,
header: 'M3U',
accessorFn: (row) =>
playlists.find((playlist) => playlist.id === row.m3u_account)?.name,
+ Cell: ({ cell }) => (
+
+ {cell.getValue()}
+
+ ),
},
],
[playlists]
),
+ displayColumnDefOptions: {
+ 'mrt-row-actions': {
+ size: 10,
+ },
+ },
enableKeyboardShortcuts: false,
enableColumnFilters: false,
enableBottomToolbar: false,
@@ -94,6 +123,18 @@ const ChannelStreams = ({ channel, isExpanded }) => {
},
enableRowActions: true,
enableRowOrdering: true,
+ mantineTableHeadRowProps: {
+ style: { display: 'none' },
+ },
+ mantineTableBodyCellProps: {
+ style: {
+ // py: 0,
+ padding: 4,
+ borderColor: '#444',
+ color: '#E0E0E0',
+ fontSize: '0.85rem',
+ },
+ },
mantineRowDragHandleProps: ({ table }) => ({
onDragEnd: async () => {
const { draggingRow, hoveredRow } = table.getState();
@@ -132,7 +173,11 @@ const ChannelStreams = ({ channel, isExpanded }) => {
return <>>;
}
- return ;
+ return (
+
+
+
+ );
};
const m3uUrl = `${window.location.protocol}//${window.location.host}/output/m3u`;
diff --git a/frontend/src/helpers/table.jsx b/frontend/src/helpers/table.jsx
index e35297e4..d0cfcc18 100644
--- a/frontend/src/helpers/table.jsx
+++ b/frontend/src/helpers/table.jsx
@@ -25,9 +25,8 @@ export default {
mantineSelectCheckboxProps: {
size: 'xs',
},
- mantineTableBodyRowProps: ({ isDetailPane, row }) => {
- if (isDetailPane) {
- console.log('here');
+ mantineTableBodyRowProps: ({ isDetailPanel, row }) => {
+ if (isDetailPanel && row.getIsSelected()) {
return {
style: {
backgroundColor: '#163632',
diff --git a/frontend/src/index.css b/frontend/src/index.css
index 06515741..9b8ef772 100644
--- a/frontend/src/index.css
+++ b/frontend/src/index.css
@@ -29,3 +29,7 @@ code {
::-webkit-scrollbar-thumb:hover {
background: #777;
}
+
+table.mrt-table tr.mantine-Table-tr.mantine-Table-tr-detail-panel td.mantine-Table-td-detail-panel {
+ width: 100% !important;
+}