bug: cycle and module change not working from the peek overview (#3037)

This commit is contained in:
Aaryan Khandelwal 2023-12-08 15:56:05 +05:30 committed by Aaryan Khandelwal
parent 9147b58b99
commit 6c8c61c53b
3 changed files with 27 additions and 27 deletions

View File

@ -48,10 +48,11 @@ export const PeekOverviewProperties: FC<IPeekOverviewProperties> = observer((pro
const {
user: { currentProjectRole },
issueDetail: { fetchPeekIssueDetails },
project: { getProjectById },
} = useMobxStore();
const router = useRouter();
const { workspaceSlug, projectId } = router.query as { workspaceSlug: string; projectId: string };
const { workspaceSlug, projectId } = router.query;
const { setToastAlert } = useToast();
@ -138,7 +139,7 @@ export const PeekOverviewProperties: FC<IPeekOverviewProperties> = observer((pro
const handleCycleOrModuleChange = async () => {
if (!workspaceSlug || !projectId) return;
await fetchPeekIssueDetails(workspaceSlug, projectId, issue.id);
await fetchPeekIssueDetails(workspaceSlug.toString(), projectId.toString(), issue.id);
};
const handleEditLink = (link: ILinkDetails) => {
@ -167,6 +168,9 @@ export const PeekOverviewProperties: FC<IPeekOverviewProperties> = observer((pro
});
};
const projectDetails = workspaceSlug ? getProjectById(workspaceSlug.toString(), issue.project) : null;
const isEstimateEnabled = projectDetails?.estimate;
const minDate = issue.start_date ? new Date(issue.start_date) : null;
minDate?.setDate(minDate.getDate());
@ -230,19 +234,21 @@ export const PeekOverviewProperties: FC<IPeekOverviewProperties> = observer((pro
</div>
{/* estimate */}
<div className="flex items-center gap-2 w-full">
<div className="flex items-center gap-2 w-40 text-sm flex-shrink-0">
<Triangle className="h-4 w-4 flex-shrink-0 " />
<p>Estimate</p>
{isEstimateEnabled && (
<div className="flex items-center gap-2 w-full">
<div className="flex items-center gap-2 w-40 text-sm flex-shrink-0">
<Triangle className="h-4 w-4 flex-shrink-0 " />
<p>Estimate</p>
</div>
<div>
<SidebarEstimateSelect
value={issue.estimate_point}
onChange={handleEstimate}
disabled={disableUserActions}
/>
</div>
</div>
<div>
<SidebarEstimateSelect
value={issue.estimate_point}
onChange={handleEstimate}
disabled={disableUserActions}
/>
</div>
</div>
)}
{/* start date */}
<div className="flex items-center gap-2 w-full">

View File

@ -5,7 +5,7 @@ import { IssueBaseStore } from "store/issues";
import { IssueService } from "services/issue";
import { CycleService } from "services/cycle.service";
// types
import { CycleIssueResponse, TIssueGroupByOptions } from "types";
import { TIssueGroupByOptions } from "types";
import { IIssue } from "types/issues";
import { IIssueResponse, TLoader, IGroupedIssues, ISubGroupedIssues, TUnGroupedIssues, ViewFlags } from "../../types";
import { RootStore } from "store/root";
@ -83,9 +83,6 @@ export class CycleIssuesStore extends IssueBaseStore implements ICycleIssuesStor
cycleService;
issueService;
//projectId
currentProjectId: string | undefined;
//viewData
viewFlags = {
enableQuickAdd: true,
@ -174,8 +171,6 @@ export class CycleIssuesStore extends IssueBaseStore implements ICycleIssuesStor
try {
this.loader = loadType;
this.currentProjectId = projectId;
const params = this.rootStore?.cycleIssuesFilter?.appliedFilters;
const response = await this.cycleService.getCycleIssuesWithParams(workspaceSlug, projectId, cycleId, params);
@ -322,9 +317,10 @@ export class CycleIssuesStore extends IssueBaseStore implements ICycleIssuesStor
fetchAfterAddition = true,
projectId?: string
) => {
if (!this.currentProjectId && !projectId) return;
const activeProjectId = this.rootStore.project.projectId;
if (!activeProjectId && !projectId) return;
const projectIdToUpdate: string = this.currentProjectId || projectId || "";
const projectIdToUpdate: string = projectId || activeProjectId || "";
try {
const issueToCycle = await this.issueService.addIssueToCycle(workspaceSlug, projectIdToUpdate, cycleId, {

View File

@ -76,8 +76,6 @@ export class ModuleIssuesStore extends IssueBaseStore implements IModuleIssuesSt
moduleService;
issueService;
currentProjectId: string | undefined;
//viewData
viewFlags = {
enableQuickAdd: true,
@ -162,7 +160,6 @@ export class ModuleIssuesStore extends IssueBaseStore implements IModuleIssuesSt
) => {
if (!moduleId) return undefined;
this.currentProjectId = projectId;
try {
this.loader = loadType;
@ -314,9 +311,10 @@ export class ModuleIssuesStore extends IssueBaseStore implements IModuleIssuesSt
fetchAfterAddition = true,
projectId?: string
) => {
if (!this.currentProjectId && !projectId) return;
const activeProjectId = this.rootStore.project.projectId;
if (!activeProjectId && !projectId) return;
const projectIdToUpdate: string = this.currentProjectId || projectId || "";
const projectIdToUpdate: string = projectId || activeProjectId || "";
try {
const issueToModule = await this.moduleService.addIssuesToModule(workspaceSlug, projectIdToUpdate, moduleId, {