feishin/src/renderer/features/now-playing/routes/now-playing-route.tsx

36 lines
1.3 KiB
TypeScript
Raw Normal View History

2025-05-20 19:23:36 -07:00
import type { Song } from '/@/shared/types/domain-types';
2022-12-19 15:59:14 -08:00
import type { AgGridReact as AgGridReactType } from '@ag-grid-community/react/lib/agGridReact';
import { useRef } from 'react';
import { Paper } from '/@/renderer/components';
import { VirtualGridContainer } from '/@/renderer/components/virtual-grid';
2022-12-19 15:59:14 -08:00
import { NowPlayingHeader } from '/@/renderer/features/now-playing/components/now-playing-header';
import { PlayQueue } from '/@/renderer/features/now-playing/components/play-queue';
import { PlayQueueListControls } from '/@/renderer/features/now-playing/components/play-queue-list-controls';
import { AnimatedPage } from '/@/renderer/features/shared';
2022-12-19 15:59:14 -08:00
const NowPlayingRoute = () => {
const queueRef = useRef<null | { grid: AgGridReactType<Song> }>(null);
2022-12-19 15:59:14 -08:00
2023-07-01 19:10:05 -07:00
return (
<AnimatedPage>
<VirtualGridContainer>
<NowPlayingHeader />
<Paper sx={{ borderTop: '1px solid var(--generic-border-color)' }}>
<PlayQueueListControls
tableRef={queueRef}
type="nowPlaying"
/>
</Paper>
<PlayQueue
ref={queueRef}
type="nowPlaying"
/>
</VirtualGridContainer>
</AnimatedPage>
);
2022-12-19 15:59:14 -08:00
};
export default NowPlayingRoute;