[WEB-2190] fix: unauthorised delete and redirections (#5342)

* fix: cycle unauthorised delete action redirection

* fix: intake unauthorised delete action redirection
This commit is contained in:
Anmol Singh Bhatia
2024-08-09 19:14:38 +05:30
committed by GitHub
parent 679b0b6465
commit 6d0cf1b4e9
3 changed files with 16 additions and 19 deletions

View File

@@ -42,6 +42,7 @@ export const CycleDeleteModal: React.FC<ICycleDelete> = observer((props) => {
try {
await deleteCycle(workspaceSlug, projectId, cycle.id)
.then(() => {
if (cycleId || peekCycle) router.push(`/${workspaceSlug}/projects/${projectId}/cycles`);
setToast({
type: TOAST_TYPE.SUCCESS,
title: "Success!",
@@ -68,8 +69,6 @@ export const CycleDeleteModal: React.FC<ICycleDelete> = observer((props) => {
});
})
.finally(() => handleClose());
if (cycleId || peekCycle) router.push(`/${workspaceSlug}/projects/${projectId}/cycles`);
} catch (error) {
setToast({
type: TOAST_TYPE.ERROR,

View File

@@ -140,7 +140,7 @@ export const InboxIssueActionsHeader: FC<TInboxIssueActionsHeader> = observer((p
const handleInboxIssueDelete = async () => {
if (!inboxIssue || !currentInboxIssueId) return;
await deleteInboxIssue(workspaceSlug, projectId, currentInboxIssueId).finally(() => {
await deleteInboxIssue(workspaceSlug, projectId, currentInboxIssueId).then(() => {
if (!isNotificationEmbed) router.push(`/${workspaceSlug}/projects/${projectId}/inbox`);
});
};

View File

@@ -484,25 +484,23 @@ export class ProjectInboxStore implements IProjectInboxStore {
const currentIssue = this.inboxIssues?.[inboxIssueId];
try {
if (!currentIssue) return;
runInAction(() => {
set(
this,
["inboxIssuePaginationInfo", "total_results"],
(this.inboxIssuePaginationInfo?.total_results || 0) - 1
);
set(this, "inboxIssues", omit(this.inboxIssues, inboxIssueId));
set(
this,
["inboxIssueIds"],
this.inboxIssueIds.filter((id) => id !== inboxIssueId)
);
await this.inboxIssueService.destroy(workspaceSlug, projectId, inboxIssueId).then(() => {
runInAction(() => {
set(
this,
["inboxIssuePaginationInfo", "total_results"],
(this.inboxIssuePaginationInfo?.total_results || 0) - 1
);
set(this, "inboxIssues", omit(this.inboxIssues, inboxIssueId));
set(
this,
["inboxIssueIds"],
this.inboxIssueIds.filter((id) => id !== inboxIssueId)
);
});
});
await this.inboxIssueService.destroy(workspaceSlug, projectId, inboxIssueId);
} catch (error) {
console.error("Error removing the intake issue");
set(this.inboxIssues, [inboxIssueId], currentIssue);
set(this, ["inboxIssuePaginationInfo", "total_results"], (this.inboxIssuePaginationInfo?.total_results || 0) + 1);
set(this, ["inboxIssueIds"], [...this.inboxIssueIds, inboxIssueId]);
throw error;
}
};