mirror of
https://github.com/makeplane/plane.git
synced 2026-07-13 22:09:12 +02:00
Sync: Community Changes #3051
This commit is contained in:
1
packages/types/src/home.d.ts
vendored
1
packages/types/src/home.d.ts
vendored
@@ -35,6 +35,7 @@ export type TIssueEntityData = {
|
||||
sequence_id: number;
|
||||
project_id: string;
|
||||
project_identifier: string;
|
||||
is_epic: boolean;
|
||||
};
|
||||
|
||||
export type TActivityEntityData = {
|
||||
|
||||
1
web/ce/components/home/index.ts
Normal file
1
web/ce/components/home/index.ts
Normal file
@@ -0,0 +1 @@
|
||||
export * from "./peek-overviews";
|
||||
9
web/ce/components/home/peek-overviews.tsx
Normal file
9
web/ce/components/home/peek-overviews.tsx
Normal file
@@ -0,0 +1,9 @@
|
||||
"use client";
|
||||
|
||||
import { IssuePeekOverview } from "@/components/issues";
|
||||
|
||||
export const HomePeekOverviewsRoot = () => (
|
||||
<>
|
||||
<IssuePeekOverview />
|
||||
</>
|
||||
);
|
||||
@@ -12,7 +12,7 @@ import { cn } from "@/helpers/common.helper";
|
||||
import { useUserProfile, useEventTracker, useUser } from "@/hooks/store";
|
||||
import { useHome } from "@/hooks/store/use-home";
|
||||
import useSize from "@/hooks/use-window-size";
|
||||
import { IssuePeekOverview } from "../issues";
|
||||
import { HomePeekOverviewsRoot } from "@/plane-web/components/home";
|
||||
import { DashboardWidgets } from "./home-dashboard-widgets";
|
||||
import { UserGreetingsView } from "./user-greetings";
|
||||
|
||||
@@ -57,7 +57,7 @@ export const WorkspaceHomeView = observer(() => {
|
||||
</div>
|
||||
)}
|
||||
<>
|
||||
<IssuePeekOverview />
|
||||
<HomePeekOverviewsRoot />
|
||||
<ContentWrapper
|
||||
className={cn("gap-6 bg-custom-background-90/20", {
|
||||
"vertical-scrollbar scrollbar-lg": windowWidth >= 768,
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
import { observer } from "mobx-react";
|
||||
// plane constants
|
||||
import { EIssueServiceType } from "@plane/constants";
|
||||
// plane types
|
||||
import { TActivityEntityData, TIssueEntityData } from "@plane/types";
|
||||
// plane ui
|
||||
@@ -18,11 +21,12 @@ type BlockProps = {
|
||||
ref: React.RefObject<HTMLDivElement>;
|
||||
workspaceSlug: string;
|
||||
};
|
||||
export const RecentIssue = (props: BlockProps) => {
|
||||
export const RecentIssue = observer((props: BlockProps) => {
|
||||
const { activity, ref, workspaceSlug } = props;
|
||||
// hooks
|
||||
const { getStateById } = useProjectState();
|
||||
const { setPeekIssue } = useIssueDetail();
|
||||
const { setPeekIssue: setPeekEpic } = useIssueDetail(EIssueServiceType.EPICS);
|
||||
const { getProjectIdentifierById } = useProject();
|
||||
// derived values
|
||||
const issueDetails: TIssueEntityData = activity.entity_data as TIssueEntityData;
|
||||
@@ -38,8 +42,21 @@ export const RecentIssue = (props: BlockProps) => {
|
||||
issueId: issueDetails?.id,
|
||||
projectIdentifier,
|
||||
sequenceId: issueDetails?.sequence_id,
|
||||
isEpic: issueDetails?.is_epic,
|
||||
});
|
||||
|
||||
const handlePeekOverview = (e: React.MouseEvent<HTMLAnchorElement>) => {
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
const peekDetails = {
|
||||
workspaceSlug,
|
||||
projectId: issueDetails?.project_id,
|
||||
issueId: activity.entity_data.id,
|
||||
};
|
||||
if (issueDetails?.is_epic) setPeekEpic(peekDetails);
|
||||
else setPeekIssue(peekDetails);
|
||||
};
|
||||
|
||||
return (
|
||||
<ListItem
|
||||
key={activity.id}
|
||||
@@ -109,12 +126,8 @@ export const RecentIssue = (props: BlockProps) => {
|
||||
disableLink={false}
|
||||
className="bg-transparent my-auto !px-2 border-none py-3"
|
||||
itemClassName="my-auto"
|
||||
onItemClick={(e) => {
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
setPeekIssue({ workspaceSlug, projectId: issueDetails?.project_id, issueId: activity.entity_data.id });
|
||||
}}
|
||||
onItemClick={handlePeekOverview}
|
||||
preventDefaultNProgress
|
||||
/>
|
||||
);
|
||||
};
|
||||
});
|
||||
|
||||
1
web/ee/components/home/index.ts
Normal file
1
web/ee/components/home/index.ts
Normal file
@@ -0,0 +1 @@
|
||||
export * from "ce/components/home";
|
||||
Reference in New Issue
Block a user