adding selection of line through prop drilling
This commit is contained in:
@@ -1,12 +1,15 @@
|
|||||||
|
import { useCallback, useMemo } from "react";
|
||||||
|
|
||||||
import { Avatar } from "antd";
|
import { Avatar } from "antd";
|
||||||
import { FiSun } from "react-icons/fi";
|
import { FiSun } from "react-icons/fi";
|
||||||
import { ILineDetails } from "../../../pages/terminal/index";
|
import { ILineDetails } from "../../../pages/router/index";
|
||||||
import { useMemo } from "react";
|
|
||||||
|
|
||||||
export default function LineRow({
|
export default function LineRow({
|
||||||
lineDetails,
|
lineDetails,
|
||||||
|
onClick,
|
||||||
}: {
|
}: {
|
||||||
lineDetails: ILineDetails;
|
lineDetails: ILineDetails;
|
||||||
|
onClick: (lineId: string) => void;
|
||||||
}) {
|
}) {
|
||||||
const renderActivityIcon = useMemo(() => {
|
const renderActivityIcon = useMemo(() => {
|
||||||
if (lineDetails.isUserBroadcastingHere)
|
if (lineDetails.isUserBroadcastingHere)
|
||||||
@@ -68,10 +71,16 @@ export default function LineRow({
|
|||||||
);
|
);
|
||||||
}, [lineDetails]);
|
}, [lineDetails]);
|
||||||
|
|
||||||
|
const handleSelectLine = useCallback(
|
||||||
|
(e) => onClick(lineDetails.lineId),
|
||||||
|
[onClick, lineDetails]
|
||||||
|
);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
|
onClick={handleSelectLine}
|
||||||
id={lineDetails.lineId}
|
id={lineDetails.lineId}
|
||||||
className="flex flex-row items-center justify-start gap-2 p-2 h-14 hover:bg-gray-300 cursor-pointer transition-all
|
className="flex flex-row items-center justify-start gap-2 p-2 px-4 h-14 hover:bg-gray-300 cursor-pointer transition-all
|
||||||
last:border-b-0 border-b border-b-gray-200"
|
last:border-b-0 border-b border-b-gray-200"
|
||||||
>
|
>
|
||||||
{/* status dot */}
|
{/* status dot */}
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
export default function LineDetails() {
|
|
||||||
return <div className="flex flex-col flex-1">this is the line details</div>;
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
import { ILineDetails } from "../router";
|
||||||
|
|
||||||
|
export default function LineDetailsTerminal({
|
||||||
|
selectedLine,
|
||||||
|
}: {
|
||||||
|
selectedLine: ILineDetails;
|
||||||
|
}) {
|
||||||
|
return (
|
||||||
|
<div className="flex flex-col flex-1">
|
||||||
|
this is the line details for {selectedLine.name}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user