[WEB-4074]fix: removed sub-work item filters at nested levels #7047

This commit is contained in:
Vamsi Krishna
2025-05-12 18:21:05 +05:30
committed by GitHub
parent 26c8cba322
commit e68d344410
2 changed files with 25 additions and 22 deletions

View File

@@ -15,6 +15,7 @@ interface TSubIssuesListGroupProps {
serviceType: TIssueServiceType;
disabled: boolean;
parentIssueId: string;
rootIssueId: string;
handleIssueCrudState: (
key: "create" | "existing" | "update" | "delete",
issueId: string,
@@ -31,6 +32,7 @@ export const SubIssuesListGroup: FC<TSubIssuesListGroupProps> = observer((props)
serviceType,
disabled,
parentIssueId,
rootIssueId,
projectId,
workspaceSlug,
handleIssueCrudState,
@@ -79,7 +81,7 @@ export const SubIssuesListGroup: FC<TSubIssuesListGroupProps> = observer((props)
workspaceSlug={workspaceSlug}
projectId={projectId}
parentIssueId={parentIssueId}
rootIssueId={parentIssueId}
rootIssueId={rootIssueId}
issueId={workItemId}
disabled={disabled}
handleIssueCrudState={handleIssueCrudState}

View File

@@ -50,7 +50,7 @@ export const SubIssuesListRoot: React.FC<Props> = observer((props) => {
} = useIssueDetail(issueServiceType);
// derived values
const filters = getSubIssueFilters(parentIssueId);
const filters = getSubIssueFilters(rootIssueId);
const isRootLevel = useMemo(() => rootIssueId === parentIssueId, [rootIssueId, parentIssueId]);
const group_by = isRootLevel ? (filters?.displayFilters?.group_by ?? null) : null;
const filteredSubWorkItemsCount = (getFilteredSubWorkItems(rootIssueId, filters.filters ?? {}) ?? []).length;
@@ -66,37 +66,20 @@ export const SubIssuesListRoot: React.FC<Props> = observer((props) => {
const getWorkItemIds = useCallback(
(groupId: string) => {
if (isRootLevel) {
const groupedSubIssues = getGroupedSubWorkItems(parentIssueId);
const groupedSubIssues = getGroupedSubWorkItems(rootIssueId);
return groupedSubIssues?.[groupId] ?? [];
}
const subIssueIds = subIssuesByIssueId(parentIssueId);
return subIssueIds ?? [];
},
[isRootLevel, subIssuesByIssueId, parentIssueId, getGroupedSubWorkItems]
[isRootLevel, subIssuesByIssueId, rootIssueId, getGroupedSubWorkItems, parentIssueId]
);
const isSubWorkItems = issueServiceType === EIssueServiceType.ISSUES;
return (
<div className="relative">
{filteredSubWorkItemsCount > 0 ? (
groups?.map((group) => (
<SubIssuesListGroup
key={group.id}
workItemIds={getWorkItemIds(group.id)}
projectId={projectId}
workspaceSlug={workspaceSlug}
group={group}
serviceType={issueServiceType}
disabled={disabled}
parentIssueId={parentIssueId}
handleIssueCrudState={handleIssueCrudState}
subIssueOperations={subIssueOperations}
storeType={storeType}
spacingLeft={spacingLeft}
/>
))
) : (
{isRootLevel && filteredSubWorkItemsCount === 0 ? (
<SectionEmptyState
title={
!isSubWorkItems
@@ -116,6 +99,24 @@ export const SubIssuesListRoot: React.FC<Props> = observer((props) => {
</Button>
}
/>
) : (
groups?.map((group) => (
<SubIssuesListGroup
key={group.id}
workItemIds={getWorkItemIds(group.id)}
projectId={projectId}
workspaceSlug={workspaceSlug}
group={group}
serviceType={issueServiceType}
disabled={disabled}
parentIssueId={parentIssueId}
rootIssueId={rootIssueId}
handleIssueCrudState={handleIssueCrudState}
subIssueOperations={subIssueOperations}
storeType={storeType}
spacingLeft={spacingLeft}
/>
))
)}
</div>
);