chore: issue peek overview (#2918)
* chore: autorun for the issue detail store * fix: labels mutation * chore: remove old peek overview code * chore: move add to cycle and module logic to store * fix: build errors * chore: add peekProjectId query param for the peek overview * chore: update profile layout * fix: multiple workspaces * style: Issue activity and link design improvements in Peek overview. * fix issue with labels not occupying full widht. * fix links overflow issue. * add tooltip in links to display entire link. * add functionality to copy links to clipboard. * chore: peek overview for all the layouts * fix: build errors --------- Co-authored-by: Prateek Shourya <prateekshourya29@gmail.com> Co-authored-by: sriram veeraghanta <veeraghanta.sriram@gmail.com>
This commit is contained in:
parent
b30e41f324
commit
220389e74e
56 changed files with 637 additions and 1510 deletions
|
|
@ -2,8 +2,12 @@ import React, { useEffect, useRef, useState } from "react";
|
|||
import { useRouter } from "next/router";
|
||||
import { observer } from "mobx-react-lite";
|
||||
// components
|
||||
import { SpreadsheetColumnsList, SpreadsheetIssuesColumn, SpreadsheetQuickAddIssueForm } from "components/issues";
|
||||
import { IssuePeekOverview } from "components/issues/issue-peek-overview";
|
||||
import {
|
||||
IssuePeekOverview,
|
||||
SpreadsheetColumnsList,
|
||||
SpreadsheetIssuesColumn,
|
||||
SpreadsheetQuickAddIssueForm,
|
||||
} from "components/issues";
|
||||
import { Spinner } from "@plane/ui";
|
||||
// types
|
||||
import { IIssue, IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueLabel, IState, IUserLite } from "types";
|
||||
|
|
@ -47,22 +51,14 @@ export const SpreadsheetView: React.FC<Props> = observer((props) => {
|
|||
disableUserActions,
|
||||
enableQuickCreateIssue,
|
||||
} = props;
|
||||
|
||||
// states
|
||||
const [expandedIssues, setExpandedIssues] = useState<string[]>([]);
|
||||
const [issuePeekOverview, setIssuePeekOverView] = useState<{
|
||||
workspaceSlug: string;
|
||||
projectId: string;
|
||||
issueId: string;
|
||||
} | null>(null);
|
||||
|
||||
const [isScrolled, setIsScrolled] = useState(false);
|
||||
|
||||
// refs
|
||||
const containerRef = useRef<HTMLDivElement | null>(null);
|
||||
|
||||
// router
|
||||
const router = useRouter();
|
||||
const { cycleId, moduleId } = router.query;
|
||||
|
||||
const type = cycleId ? "cycle" : moduleId ? "module" : "issue";
|
||||
const { workspaceSlug, peekIssueId, peekProjectId } = router.query;
|
||||
|
||||
const handleScroll = () => {
|
||||
if (!containerRef.current) return;
|
||||
|
|
@ -116,7 +112,6 @@ export const SpreadsheetView: React.FC<Props> = observer((props) => {
|
|||
properties={displayProperties}
|
||||
quickActions={quickActions}
|
||||
disableUserActions={disableUserActions}
|
||||
setIssuePeekOverView={setIssuePeekOverView}
|
||||
/>
|
||||
) : null
|
||||
)}
|
||||
|
|
@ -185,11 +180,11 @@ export const SpreadsheetView: React.FC<Props> = observer((props) => {
|
|||
))} */}
|
||||
</div>
|
||||
</div>
|
||||
{issuePeekOverview && (
|
||||
{workspaceSlug && peekIssueId && peekProjectId && (
|
||||
<IssuePeekOverview
|
||||
workspaceSlug={issuePeekOverview?.workspaceSlug}
|
||||
projectId={issuePeekOverview?.projectId}
|
||||
issueId={issuePeekOverview?.issueId}
|
||||
workspaceSlug={workspaceSlug.toString()}
|
||||
projectId={peekProjectId.toString()}
|
||||
issueId={peekIssueId.toString()}
|
||||
handleIssue={(issueToUpdate: any) => handleIssues(issueToUpdate, EIssueActions.UPDATE)}
|
||||
/>
|
||||
)}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue