import { FC, Fragment } from "react"; import { observer } from "mobx-react-lite"; import { TIssue } from "@plane/types"; // hooks import { useIssueDetail } from "@/hooks/store"; // components import { IssueListItem } from "./issue-list-item"; // types import { TSubIssueOperations } from "./root"; export interface IIssueList { workspaceSlug: string; projectId: string; parentIssueId: string; rootIssueId: string; spacingLeft: number; disabled: boolean; handleIssueCrudState: ( key: "create" | "existing" | "update" | "delete", issueId: string, issue?: TIssue | null ) => void; subIssueOperations: TSubIssueOperations; } export const IssueList: FC = observer((props) => { const { workspaceSlug, projectId, parentIssueId, rootIssueId, spacingLeft = 10, disabled, handleIssueCrudState, subIssueOperations, } = props; // hooks const { subIssues: { subIssuesByIssueId }, } = useIssueDetail(); const subIssueIds = subIssuesByIssueId(parentIssueId); return ( <>
{subIssueIds && subIssueIds.length > 0 && subIssueIds.map((issueId) => ( ))}
10 ? `border-l border-custom-border-100` : ``}`} style={{ left: `${spacingLeft - 12}px` }} />
); });