import { FC } from "react"; // components import { HEADER_HEIGHT } from "../constants"; import { IBlockUpdateData, IGanttBlock } from "../types"; import { GanttChartBlock } from "./block"; // types // constants export type GanttChartBlocksProps = { itemsContainerWidth: number; blocks: IGanttBlock[] | null; blockToRender: (data: any) => React.ReactNode; blockUpdateHandler: (block: any, payload: IBlockUpdateData) => void; enableBlockLeftResize: boolean; enableBlockRightResize: boolean; enableBlockMove: boolean; enableAddBlock: boolean; ganttContainerRef: React.RefObject; showAllBlocks: boolean; }; export const GanttChartBlocksList: FC = (props) => { const { itemsContainerWidth, blocks, blockToRender, blockUpdateHandler, enableBlockLeftResize, enableBlockRightResize, enableBlockMove, enableAddBlock, ganttContainerRef, showAllBlocks, } = props; return (
{blocks?.map((block) => { // hide the block if it doesn't have start and target dates and showAllBlocks is false if (!showAllBlocks && !(block.start_date && block.target_date)) return; return ( ); })}
); };