feat: view, create, update and delete comment (#2106)

* feat: update, delete link

refactor: using old fetch-key

* feat: issue activity with ability to view & add comment

feat: click on view more to view more options in the issue detail

* fix: upload image not working on mobile
This commit is contained in:
Dakshesh Jain 2023-09-06 17:08:19 +05:30 committed by GitHub
parent 58562dc4b7
commit 1655d0cb1c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 781 additions and 48 deletions

View file

@ -14,7 +14,7 @@ import { useForm } from "react-hook-form";
import issuesService from "services/issues.service";
// fetch key
import { M_ISSUE_DETAILS, PROJECT_ISSUES_ACTIVITY } from "constants/fetch-keys";
import { ISSUE_DETAILS, PROJECT_ISSUES_ACTIVITY } from "constants/fetch-keys";
// hooks
import useUser from "hooks/use-user";
@ -33,6 +33,7 @@ import {
IssueAttachments,
IssuePropertiesDetail,
IssueLinks,
IssueActivity,
} from "components/web-view";
// types
@ -66,9 +67,7 @@ const MobileWebViewIssueDetail = () => {
mutate: mutateIssueDetails,
error,
} = useSWR(
workspaceSlug && projectId && issueId
? M_ISSUE_DETAILS(workspaceSlug.toString(), projectId.toString(), issueId.toString())
: null,
workspaceSlug && projectId && issueId ? ISSUE_DETAILS(issueId.toString()) : null,
workspaceSlug && projectId && issueId
? () =>
issuesService.retrieve(workspaceSlug.toString(), projectId.toString(), issueId.toString())
@ -83,6 +82,10 @@ const MobileWebViewIssueDetail = () => {
description: issueDetails.description,
description_html: issueDetails.description_html,
state: issueDetails.state,
assignees_list:
issueDetails.assignees_list ?? issueDetails.assignee_details?.map((user) => user.id),
labels_list: issueDetails.labels_list ?? issueDetails.labels,
labels: issueDetails.labels_list ?? issueDetails.labels,
});
}, [issueDetails, reset]);
@ -91,7 +94,7 @@ const MobileWebViewIssueDetail = () => {
if (!workspaceSlug || !projectId || !issueId) return;
mutate<IIssue>(
M_ISSUE_DETAILS(workspaceSlug.toString(), projectId.toString(), issueId.toString()),
ISSUE_DETAILS(issueId.toString()),
(prevData) => {
if (!prevData) return prevData;
@ -161,7 +164,9 @@ const MobileWebViewIssueDetail = () => {
<IssueAttachments allowed={isAllowed} />
<IssueLinks allowed={isAllowed} links={issueDetails?.issue_link} />
<IssueLinks allowed={isAllowed} issueDetails={issueDetails!} />
<IssueActivity allowed={isAllowed} issueDetails={issueDetails!} />
</div>
</DefaultLayout>
);