fix: minor fixes for issue relations list and retrival (#6444)
This commit is contained in:
parent
8f3a0be177
commit
586a320d86
3 changed files with 58 additions and 49 deletions
|
|
@ -134,58 +134,62 @@ export const RelationIssueListItem: FC<Props> = observer((props) => {
|
||||||
<span className="w-full truncate text-sm text-custom-text-100">{issue.name}</span>
|
<span className="w-full truncate text-sm text-custom-text-100">{issue.name}</span>
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
</div>
|
</div>
|
||||||
<div
|
{!issue.is_epic && (
|
||||||
className="flex-shrink-0 text-sm"
|
<>
|
||||||
onClick={(e) => {
|
<div
|
||||||
e.preventDefault();
|
className="flex-shrink-0 text-sm"
|
||||||
e.stopPropagation();
|
onClick={(e) => {
|
||||||
}}
|
e.preventDefault();
|
||||||
>
|
e.stopPropagation();
|
||||||
<RelationIssueProperty
|
}}
|
||||||
workspaceSlug={workspaceSlug}
|
>
|
||||||
issueId={relationIssueId}
|
<RelationIssueProperty
|
||||||
disabled={disabled}
|
workspaceSlug={workspaceSlug}
|
||||||
issueOperations={issueOperations}
|
issueId={relationIssueId}
|
||||||
issueServiceType={issueServiceType}
|
disabled={disabled}
|
||||||
/>
|
issueOperations={issueOperations}
|
||||||
</div>
|
issueServiceType={issueServiceType}
|
||||||
<div className="flex-shrink-0 text-sm">
|
/>
|
||||||
<CustomMenu placement="bottom-end" ellipsis>
|
</div>
|
||||||
{!disabled && (
|
<div className="flex-shrink-0 text-sm">
|
||||||
<CustomMenu.MenuItem onClick={handleEditIssue}>
|
<CustomMenu placement="bottom-end" ellipsis>
|
||||||
<div className="flex items-center gap-2">
|
{!disabled && (
|
||||||
<Pencil className="h-3.5 w-3.5" strokeWidth={2} />
|
<CustomMenu.MenuItem onClick={handleEditIssue}>
|
||||||
<span>Edit issue</span>
|
<div className="flex items-center gap-2">
|
||||||
</div>
|
<Pencil className="h-3.5 w-3.5" strokeWidth={2} />
|
||||||
</CustomMenu.MenuItem>
|
<span>Edit issue</span>
|
||||||
)}
|
</div>
|
||||||
|
</CustomMenu.MenuItem>
|
||||||
|
)}
|
||||||
|
|
||||||
<CustomMenu.MenuItem onClick={handleCopyIssueLink}>
|
<CustomMenu.MenuItem onClick={handleCopyIssueLink}>
|
||||||
<div className="flex items-center gap-2">
|
<div className="flex items-center gap-2">
|
||||||
<LinkIcon className="h-3.5 w-3.5" strokeWidth={2} />
|
<LinkIcon className="h-3.5 w-3.5" strokeWidth={2} />
|
||||||
<span>Copy issue link</span>
|
<span>Copy issue link</span>
|
||||||
</div>
|
</div>
|
||||||
</CustomMenu.MenuItem>
|
</CustomMenu.MenuItem>
|
||||||
|
|
||||||
{!disabled && (
|
{!disabled && (
|
||||||
<CustomMenu.MenuItem onClick={handleRemoveRelation}>
|
<CustomMenu.MenuItem onClick={handleRemoveRelation}>
|
||||||
<div className="flex items-center gap-2">
|
<div className="flex items-center gap-2">
|
||||||
<X className="h-3.5 w-3.5" strokeWidth={2} />
|
<X className="h-3.5 w-3.5" strokeWidth={2} />
|
||||||
<span>Remove relation</span>
|
<span>Remove relation</span>
|
||||||
</div>
|
</div>
|
||||||
</CustomMenu.MenuItem>
|
</CustomMenu.MenuItem>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{!disabled && (
|
{!disabled && (
|
||||||
<CustomMenu.MenuItem onClick={handleDeleteIssue}>
|
<CustomMenu.MenuItem onClick={handleDeleteIssue}>
|
||||||
<div className="flex items-center gap-2">
|
<div className="flex items-center gap-2">
|
||||||
<Trash className="h-3.5 w-3.5" strokeWidth={2} />
|
<Trash className="h-3.5 w-3.5" strokeWidth={2} />
|
||||||
<span>Delete issue</span>
|
<span>Delete issue</span>
|
||||||
</div>
|
</div>
|
||||||
</CustomMenu.MenuItem>
|
</CustomMenu.MenuItem>
|
||||||
)}
|
)}
|
||||||
</CustomMenu>
|
</CustomMenu>
|
||||||
</div>
|
</div>
|
||||||
|
</>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
</ControlLink>
|
</ControlLink>
|
||||||
|
|
|
||||||
|
|
@ -117,6 +117,10 @@ export class IssueService extends APIService {
|
||||||
if (response.data && this.serviceType === EIssueServiceType.ISSUES) {
|
if (response.data && this.serviceType === EIssueServiceType.ISSUES) {
|
||||||
updateIssue({ ...response.data, is_local_update: 1 });
|
updateIssue({ ...response.data, is_local_update: 1 });
|
||||||
}
|
}
|
||||||
|
// add is_epic flag when the service type is epic
|
||||||
|
if (response.data && this.serviceType === EIssueServiceType.EPICS) {
|
||||||
|
response.data.is_epic = true;
|
||||||
|
}
|
||||||
return response?.data;
|
return response?.data;
|
||||||
})
|
})
|
||||||
.catch((error) => {
|
.catch((error) => {
|
||||||
|
|
|
||||||
|
|
@ -188,6 +188,7 @@ export class IssueStore implements IIssueStore {
|
||||||
updated_by: issue?.updated_by,
|
updated_by: issue?.updated_by,
|
||||||
is_draft: issue?.is_draft,
|
is_draft: issue?.is_draft,
|
||||||
is_subscribed: issue?.is_subscribed,
|
is_subscribed: issue?.is_subscribed,
|
||||||
|
is_epic: issue?.is_epic,
|
||||||
};
|
};
|
||||||
|
|
||||||
this.rootIssueDetailStore.rootIssueStore.issues.addIssue([issuePayload]);
|
this.rootIssueDetailStore.rootIssueStore.issues.addIssue([issuePayload]);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue